# Pentium 4 opts?

## Forge

I got ahold of one of these just recently, to mess with, and the first thing I noticed was it's abysmal Linux performance. Of course, I thought, P4 has problems with less-optimized code, and Linux in general is 486 optimized.

This, of course, immediately prompted me to try Gentoo again.

Now, I'm figuring I'll probably get best results from the 1.3A test build with GCC 3.1, but I've getten both that and 1.2.

Does anybody have a list of opts they've tried on a P4? I'm perfectly willing to dabble with different opts and benchmark, but I'd rather not reinvent the wheel, if someone else has already tried.

I tell you, nothing makes me want to get my SMP-K7 rig back together, more than watching this P4 run Linux.

----------

## Sivar

 *Forge wrote:*   

> Of course, I thought, P4 has problems with less-optimized code, and Linux in general is 486 optimized.
> 
> 

 

Linux isn't really optimized for any specific CPU, but if it is optimized for a 486 that might not be so bad as the Pentium IV has the same L1 cache size as the 486.

 *Quote:*   

> 
> 
> Now, I'm figuring I'll probably get best results from the 1.3A test build with GCC 3.1, but I've getten both that and 1.2.
> 
> 

 

You might try building speed sensitive parts with the Intel compiler (ICC). It's capable of using the SSE2 instructions that can squeeze some performance out of that P4. Additionally, it is designed with the P4 in mind and probably schedules code for it really well.

 *Quote:*   

> 
> 
> Does anybody have a list of opts they've tried on a P4? I'm perfectly willing to dabble with different opts and benchmark, but I'd rather not reinvent the wheel, if someone else has already tried.
> 
> 

 

I would just use the standard -s -O3 -pipe -fomit-frame-pointer -fexpensive-optimizations -frerun-cse-after-loop -frerun-loop-opt -malign-functions=4

...and specify the CPU. I haven't used GCC3. but i'd guess it's something like -march=p4 or -march=pentium4.

 *Quote:*   

> 
> 
> I tell you, nothing makes me want to get my SMP-K7 rig back together, more than watching this P4 run Linux.

 

I know what you mean.  :Smile:  Particularly after compiling KDE, one gets to really hate the P4 processor after one has used a dualie Athlon.

----------

## Forge

Problem with that is, the ICC is notorious for creating not-quite-correct code. I really don't want code of dubious value at the heart of my OS. 

Optimized, of course. 

Highly optimized, OK, I'll try it once. 

Hyper-optimized by the CPU designer for the absolute highest performance possible, damn the errors-full speed ahead! - No, not really.  :Smile: 

Go see the P4 binaries of POVray. It's rather disgusting, some of the stuff that comes out of it. Also funny: Some apps perform better on P4 under MS's VCC compiler than under Intel's ICC. Some apps run better on Athlons under ICC than under VCCC.  :Smile: 

Code is funny that way.

Thanks for the list, though. I'll go research the optimal -mcpu and -march for P4.

Athlon MPs again in a few weeks! w00h00!

----------

