>
> Pentium M is a P3 ?
>

Well it may be that -fast gets it wrong...

$ CC -fast -dryrun
###     command line files and options (expanded):
### -xO5 -xarch=sse2 -xcache=32/64/8:2048/64/8 -xchip=pentium3 -xdepend=yes 
-fsimple=2 -fns=yes -ftrap=%none -xlibmil -xlibmopt -xbuiltin=%all -nofstore 
-xregs=frameptr -Qoption CC -iropt -Qoption CC -xcallee64 -dryrun 
### CC: Note: NLSPATH = 
/opt/SUNWspro/prod/bin/../lib/locale/%L/LC_MESSAGES/%N.cat:/opt/SUNWspro/prod/bin/../../lib/locale/%L/LC_MESSAGES/%N.cat

$ CC -V
CC: Sun C++ 5.9 SunOS_i386 Patch 124864-01 2007/07/25

$ psrinfo -pv
The physical processor has 1 virtual processor (0)
  x86 (GenuineIntel 6D8 family 6 model 13 step 8 clock 600 MHz)
        Intel(r) Pentium(r) M processor 1.50GHz

Which I checked just in case and yes it is a pentium 4. This is running on 
notebook, IBM X41.

>
>> Now an honest question, what is the impact of under specing the cache?
>
> Less chances of cache thrashing for CPU's with a smaller L2.
>

Ok, I understand that. So, if I build to run an a specific machine then it is 
ok to take the full cache into consideration.

Also, it is good that -fast changes between releases as the definition of 
"fast" also evolves with newer CPUs. It is a shortcut if the build machine is 
the same spec as production systems. -O3 not too aggressive, -xspace to avoid 
an extra large program which I think would possibly increase cache miss.

I'm not trying to squeeze out the last CPU cycle, optimization is the devil. I 
just wanted to understand why those options were selected. Thanks.
--
This message posted from opensolaris.org

Reply via email to