I just did a small test with different optimization flags.
machine:toshiba satellite 2430-101, 512mb RAM, 2,5 ghz pentium4
os: SuSE-Linux 9.0, glibc-2.3.2-88, gcc-3.3.1
without opt: CFLAGS=""
i686: CFLAGS="-march=i686 -mcpu=i686"
i686-O2: same + O2
i686-O3: same + O3
pentium4: CFLAGS="-march=pentium4 -mcpu=pentium4"
pentium4-O2: same + O2
pentium4-O3: same + O3
pentium4-all: same + -pipe -fomit-frame-pointer -fforce-addr
-falign-functions=4 -ffast-math
Results (gnubg -t "calibrate"):
without opt: 10954 12642
i686: 10985 11272
i686-O2: 22119 22125
i686-O3: 22386 22438
pentium4: 10996 11186
pentium4-O2: 23307 23255
pentium4-O3: 22849 22783
pentium4-all: 22815 22852
Interesting: If you don't use "-O" you get only half of the maximum.
Comments?