From: Andy Walker <ja_walker@earthlink.net>
To: Daniel Egger <degger@fhm.edu>
Cc: gcc@gcc.gnu.org
Subject: Re: An unusual Performance approach using Synthetic registers
Date: Sun, 29 Dec 2002 12:10:00 -0000 [thread overview]
Message-ID: <E18ShOG-0005A3-00@pintail.mail.pas.earthlink.net> (raw)
In-Reply-To: <1041168779.18836.25.camel@sonja>
On Sunday 29 December 2002 07:32 am, Daniel Egger wrote:
> Am Son, 2002-12-29 um 05.31 schrieb Andy Walker:
> > Color-graphing works better, the more registers there are available for
> > use. Six registers is sub-optimal. Sixteen registers is a good start.
> > Thirty-two plus five gives thirty-seven, enough for the algorithm to
> > excel.
>
> However if you have a look at register rich architectures like PPC
> you'll see that the generated code rarely exceeds a number of 16 used
> registers, most of them being used for parameters and return values.
> I believe this is because the compiler is quite good about figuring
> out register/time dependencies and reusing the available registers as
> soon as the content is dead. Further much code doesn't keep stuff in
> variables but writes it to allocated storage preventing any sensible
> use of registers.
>
> There's really only very few specialized enough code that profits from
> many registers which you're opting to simulate. 16 virtual registers are
> probably more than enough and also fit nicely in modern processors'
> cachelines (16 x 32bit = 64 byte).
Interesting. I will keep this in mind. No need to waste a lot of memory on
unused Synthetic registers.
I selected 32 because it was 2**5th, and greater than 16. When doing
application programming in assembler, I found 16 general purpose registers
not to be enough.
Thank you for your comments.
Andy
next prev parent reply other threads:[~2002-12-29 17:38 UTC|newest]
Thread overview: 85+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-12-27 5:47 Chris Lattner
2002-12-29 0:35 ` Andy Walker
2002-12-29 5:58 ` Chris Lattner
2002-12-29 6:26 ` Alexandre Oliva
2002-12-29 12:04 ` Andy Walker
2002-12-29 13:58 ` Daniel Berlin
2002-12-29 22:41 ` Andy Walker
2002-12-29 15:50 ` Diego Novillo
2002-12-29 22:44 ` Andy Walker
2002-12-30 1:30 ` Zack Weinberg
2002-12-30 2:57 ` Andy Walker
2002-12-30 7:52 ` Michael S. Zick
2002-12-29 7:44 ` Daniel Egger
2002-12-29 12:10 ` Andy Walker [this message]
2002-12-30 20:58 ` James Mansion
2002-12-31 3:56 ` Michael S. Zick
2002-12-30 1:09 ` Michael S. Zick
2002-12-30 7:27 ` Daniel Egger
2002-12-30 10:25 ` Michael S. Zick
2002-12-30 20:50 ` Daniel Berlin
2003-01-04 14:50 Robert Dewar
2003-01-04 18:00 ` Denis Chertykov
2003-01-05 5:53 ` Andy Walker
2003-01-05 5:43 ` Andy Walker
2003-01-04 18:12 Robert Dewar
2003-01-05 11:41 Robert Dewar
2003-01-05 16:30 ` Michael S. Zick
2003-01-06 4:53 ` Andy Walker
2003-01-06 19:50 ` Tom Lord
2003-01-06 6:29 ` Andy Walker
2003-01-06 21:53 ` Michael S. Zick
2003-01-07 6:02 ` Andy Walker
2003-01-07 17:41 ` Janis Johnson
2003-01-05 13:13 Robert Dewar
2003-01-06 4:40 ` Andy Walker
2003-01-06 16:46 ` Michael S. Zick
2003-01-07 5:20 ` Andy Walker
2003-01-06 19:42 ` Tom Lord
2003-01-06 6:39 ` Andy Walker
2003-01-06 6:50 ` Daniel Berlin
2003-01-06 9:00 ` Andy Walker
2003-01-05 14:05 Robert Dewar
2003-01-06 19:42 ` Tom Lord
2003-01-06 6:49 ` Andy Walker
2003-01-05 14:08 Robert Dewar
2003-01-05 16:50 ` Michael S. Zick
2003-01-06 19:42 ` Tom Lord
2003-01-06 8:06 ` Andy Walker
2003-01-06 22:45 ` Michael S. Zick
2003-01-07 6:04 ` Andy Walker
2003-01-05 15:47 Robert Dewar
2003-01-05 22:14 ` Tom Lord
2003-01-06 20:59 Robert Dewar
2003-01-07 5:29 ` Andy Walker
2003-01-07 21:49 ` Marcel Cox
2003-01-07 21:55 ` Branko Čibej
2003-01-07 21:55 ` Marcel Cox
2003-01-08 17:32 ` Tom Lord
2003-01-07 12:08 Robert Dewar
2003-01-07 12:10 ` Momchil Velikov
2003-01-07 12:32 Robert Dewar
2003-01-07 19:03 ` tm_gccmail
2003-01-07 19:20 ` tm_gccmail
2003-01-08 7:52 ` Andy Walker
2003-01-08 19:29 ` Michael S. Zick
2003-01-08 20:10 ` Michael S. Zick
2003-01-08 20:44 ` tm_gccmail
2003-01-08 21:34 ` Michael S. Zick
2003-01-08 22:05 ` tm_gccmail
2003-01-08 6:08 ` Andy Walker
2003-01-07 15:17 Robert Dewar
2003-01-07 17:02 ` Michael S. Zick
2003-01-08 6:56 ` Andy Walker
2003-01-08 12:14 ` Michael S. Zick
2003-01-07 17:19 Robert Dewar
2003-01-07 21:01 Marcel Cox
2003-01-07 22:53 ` tm_gccmail
2003-01-08 1:05 ` tm_gccmail
2003-01-08 1:22 ` tm_gccmail
2003-01-08 11:45 ` Marcel Cox
2003-01-08 17:29 ` Marcel Cox
2003-01-08 5:36 Robert Dewar
2003-01-08 12:13 Robert Dewar
2003-01-08 12:21 ` Lars Segerlund
2003-01-08 12:27 Robert Dewar
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=E18ShOG-0005A3-00@pintail.mail.pas.earthlink.net \
--to=ja_walker@earthlink.net \
--cc=degger@fhm.edu \
--cc=gcc@gcc.gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).