public inbox for gcc-help@gcc.gnu.org
 help / color / mirror / Atom feed
* Optimising GCC for a PentiumMMX system?
@ 2002-07-27 10:28 John Gay
  0 siblings, 0 replies; 4+ messages in thread
From: John Gay @ 2002-07-27 10:28 UTC (permalink / raw)
  To: gcc-help

I have quite a bit of time on my hands now, so I decided to take the plunge 
and try building a complete GNU/Linux system from source on an idle 
PentiumMMX box I've got. I started by just installing a base Debian system 
and building XFree86 and KDE3 from sources, but considered what else I should 
try to optimise. GlibC was suggested as a bare minimum to optimise, then It 
was suggested that GCC might be another candidate. Eventually I was given a 
pointer the Linx From Scratch adn that got me thinking about just going ahead 
and building the entire thing.

Interestingly, though, the lfs site says do not try to optimise GCC or GlibC? 
Now, it seems to me that, first, the kernel handles most low-level functions, 
so optimising the kernel would yield the largest improvements. Next, GlibC 
provides the next level of interaction between user apps and the kernel 
system calls, so this seems to be a likely candidate for optimising.

While checking possible optimisations for GCC I found PGCC which suggests 
that GCC does not take effective advantage of some of the pipelining features 
provided by the Pentium class. However, the site seems to be out of date. The 
latest patches are for gcc2.95.3 and the front page says it was last updated 
in 2000!

I was wondering if these complaints about GCC were still relevant to the 
3.1.x series now available. The lfs uses gcc2.95.5 but that should not be too 
much trouble to update if it would yield significant inprovements.

I realise that MMX is not something that can be optimised for in the compiler 
so I woun't even ask. However, If I have a generally good experience I am 
considering doing the same wit my regular system, a Dual PII with a 440BX 
chipset, once I can find a match for the PIII I've got waiting to put into 
it. XFree86 and the DRI stuff can be compiled toa take advantage of the SSE 
instructions the PIII provides.

So, my question is, are the PGCC patches still relevant ro should I just 
stick with gcc itself?
Also, should I attempt to optimise GlibC? 
The lfs site says don't try it, but it seems the most likely area for speed 
improvement after the kernel. All of this is just a personal exercise to see 
just how fast I can get this box to run with KDE. Any small speed 
improvements will add up, at least for CPU bound areas.

Thanks for your time and information!

Cheers,

	John Gay

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Optimising GCC for a PentiumMMX system?
       [not found] ` <1027791480.5301.38.camel@lws020.get2chip.com>
@ 2002-07-28  9:58   ` John Gay
  2002-07-28  9:58   ` John Gay
  1 sibling, 0 replies; 4+ messages in thread
From: John Gay @ 2002-07-28  9:58 UTC (permalink / raw)
  To: Chris Croswhite; +Cc: gcc-help

On Sat 27 Jul 2002 18:38, you wrote:
> For compiling the kernel, you could try gcc 3.1 (or cvs verison).
> Though, I would recommend icc (Intel compiler), as you can really get
> some performance enhancements from their compiler targeting your
> particular processor.  I have great success in speeding up my
> applications with icc but have had to do some work to get it to compile
> which was compiling fine under gcc 2.95.3/3.1.
>
Thanks for the info on icc, but from the sounds of it, I would be able to 
compile the kernel fine but the rest of the system would be questionable? I 
am not ready to go to such lengths, especially considering my lack of 
programming skills ;-)

I would prefer to stick to one compiler for the entire thing. The latest news 
I hear is that KDE3 does NOT work if compiled with GCC3.1? apparently a 
problem with DCOP? Seems 3.0.2 is the latest known to work.

At the moment I am building the base lfs system and using GCC2.95.3 as 
provided in their tarball. However, I have ignored the warnings and set 
CFLAGS and CXXFLAGS to -O3 -march=i586 to see how it goes.

Question???

How can I find out if the binaries I am building are really optimized for 
i586?
file still tells me that they are i386 binaries?
I would like to be sure that I'm not wasting my time compiling all this to 
find out later that I missed some optimization flag. I am just following the 
optimization hints for lfs.

Cheers,

	John Gay

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Optimising GCC for a PentiumMMX system?
       [not found] ` <1027791480.5301.38.camel@lws020.get2chip.com>
  2002-07-28  9:58   ` John Gay
@ 2002-07-28  9:58   ` John Gay
  1 sibling, 0 replies; 4+ messages in thread
From: John Gay @ 2002-07-28  9:58 UTC (permalink / raw)
  To: Chris Croswhite; +Cc: gcc-help

On Sat 27 Jul 2002 18:38, you wrote:
> For compiling the kernel, you could try gcc 3.1 (or cvs verison).
> Though, I would recommend icc (Intel compiler), as you can really get
> some performance enhancements from their compiler targeting your
> particular processor.  I have great success in speeding up my
> applications with icc but have had to do some work to get it to compile
> which was compiling fine under gcc 2.95.3/3.1.
>
Thanks for the info on icc, but from the sounds of it, I would be able to 
compile the kernel fine but the rest of the system would be questionable? I 
am not ready to go to such lengths, especially considering my lack of 
programming skills ;-)

I would prefer to stick to one compiler for the entire thing. The latest news 
I hear is that KDE3 does NOT work if compiled with GCC3.1? apparently a 
problem with DCOP? Seems 3.0.2 is the latest known to work.

At the moment I am building the base lfs system and using GCC2.95.3 as 
provided in their tarball. However, I have ignored the warnings and set 
CFLAGS and CXXFLAGS to -O3 -march=i586 to see how it goes.

Question???

How can I find out if the binaries I am building are really optimized for 
i586?
file still tells me that they are i386 binaries?
I would like to be sure that I'm not wasting my time compiling all this to 
find out later that I missed some optimization flag. I am just following the 
optimization hints for lfs.

Cheers,

	John Gay

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Optimising GCC for a PentiumMMX system?
@ 2002-07-27 10:28 John Gay
  0 siblings, 0 replies; 4+ messages in thread
From: John Gay @ 2002-07-27 10:28 UTC (permalink / raw)
  To: gcc-help

I have quite a bit of time on my hands now, so I decided to take the plunge 
and try building a complete GNU/Linux system from source on an idle 
PentiumMMX box I've got. I started by just installing a base Debian system 
and building XFree86 and KDE3 from sources, but considered what else I should 
try to optimise. GlibC was suggested as a bare minimum to optimise, then It 
was suggested that GCC might be another candidate. Eventually I was given a 
pointer the Linx From Scratch adn that got me thinking about just going ahead 
and building the entire thing.

Interestingly, though, the lfs site says do not try to optimise GCC or GlibC? 
Now, it seems to me that, first, the kernel handles most low-level functions, 
so optimising the kernel would yield the largest improvements. Next, GlibC 
provides the next level of interaction between user apps and the kernel 
system calls, so this seems to be a likely candidate for optimising.

While checking possible optimisations for GCC I found PGCC which suggests 
that GCC does not take effective advantage of some of the pipelining features 
provided by the Pentium class. However, the site seems to be out of date. The 
latest patches are for gcc2.95.3 and the front page says it was last updated 
in 2000!

I was wondering if these complaints about GCC were still relevant to the 
3.1.x series now available. The lfs uses gcc2.95.5 but that should not be too 
much trouble to update if it would yield significant inprovements.

I realise that MMX is not something that can be optimised for in the compiler 
so I woun't even ask. However, If I have a generally good experience I am 
considering doing the same wit my regular system, a Dual PII with a 440BX 
chipset, once I can find a match for the PIII I've got waiting to put into 
it. XFree86 and the DRI stuff can be compiled toa take advantage of the SSE 
instructions the PIII provides.

So, my question is, are the PGCC patches still relevant ro should I just 
stick with gcc itself?
Also, should I attempt to optimise GlibC? 
The lfs site says don't try it, but it seems the most likely area for speed 
improvement after the kernel. All of this is just a personal exercise to see 
just how fast I can get this box to run with KDE. Any small speed 
improvements will add up, at least for CPU bound areas.

Thanks for your time and information!

Cheers,

	John Gay

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2002-07-28 16:58 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-07-27 10:28 Optimising GCC for a PentiumMMX system? John Gay
2002-07-27 10:28 John Gay
     [not found] <200207271728.g6RHSBW27160@mail.get2chip.com>
     [not found] ` <1027791480.5301.38.camel@lws020.get2chip.com>
2002-07-28  9:58   ` John Gay
2002-07-28  9:58   ` John Gay

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).