View previous topic :: View next topic |
Author |
Message |
-RdX- n00b
Joined: 23 Dec 2003 Posts: 60 Location: Sevilla (spain)
|
Posted: Thu Aug 26, 2004 6:48 am Post subject: [CFLAGS] Benchmarks ACOVEA |
|
|
Hola a todos,
Supongo que , como yo, hay mucha gente interesada en tener su distribución lo mas optimizada posible. Gracias a esta guía podemos ver que existe un programa llamado ACOVEA. Este programa lo que hace es compilar pequeños trozos de código probando todas las flags disponibles para nuestro compilador, y decirnos cuales son las flags óptimas para nuestro microprocesador con el compilador utilizado.
Estas pruebas duran mucho tiempo (24 horas a mi con un P4-2,8GHz, sin usar el ordenador para que sean correctas las medidas ) así que creo que seria útil que si alguien pasa este benchmark publique los resultados para ahorrar tiempo a la gente.
En los post debería de ponerse: el microprocesador utilizado, el compilador usado y su versión y la versión de acovea.
Aquí teneis un post mandado por caos donde explica como hacer esta prueba y los scripts utilizados. (Yo lo he hecho así)
Recordad cambiar gcc33 y pentium3 de la siguiente linea del primer script por el compilador usado y el micro utilizado:
Code: | time runacovea -config gcc33_pentium3.acovea -bench ${bench}bench.c\ |
|
|
Back to top |
|
|
-RdX- n00b
Joined: 23 Dec 2003 Posts: 60 Location: Sevilla (spain)
|
Posted: Thu Aug 26, 2004 6:51 am Post subject: |
|
|
Code: | vendor_id : GenuineIntel
cpu family : 15
model : 2
model name : Intel(R) Pentium(R) 4 CPU 2.80GHz
stepping : 9
cpu MHz : 2813.853
cache size : 512 KB
(Con HT)
|
Code: | gcc version 3.3.3 20040412 (Gentoo Linux 3.3.3-r6, ssp-3.3.2-2, pie-8.7.6) |
Code: | Score | So? | Switch (annotation)
------------------------------------------------------------------------------
38.6 | Maybe | -fstrict-aliasing (-O2)
33.9 | Maybe | -fforce-mem (-O2)
32.6 | Yes | -fno-omit-frame-pointer (! -O1)
31.8 | Yes | -mno-align-stringops
31.8 | Yes | -mno-push-args
31.6 | Maybe | -funsafe-math-optimizations (fast math)
31.0 | Yes | -fcaller-saves (-O2)
30.6 | Yes | -ffinite-math-only (fast math)
29.9 | Yes | -fdelete-null-pointer-checks (-O2)
29.5 | Yes | -fno-signaling-nans (fast math)
28.7 | Yes | -fno-delayed-branch (! -O1)
28.3 | Maybe | -fno-crossjumping (! -O1)
28.0 | Yes | -fno-defer-pop (! -O1)
27.9 | Maybe | -fprefetch-loop-arrays
27.1 | Yes | -minline-all-stringops
27.0 | Yes | -maccumulate-outgoing-args
26.8 | Maybe | -fsched-interblock (-O2 GCC 3.3)
26.8 | Yes | -falign-jumps (-O2 GCC 3.3)
26.8 | Maybe | -finline-functions (-O3)
26.3 | Yes | -fno-trapping-math (fast math)
26.1 | Yes | -fmove-all-movables
25.9 | Yes | -fsched-spec (-O2 GCC 3.3)
25.2 | Yes | -freorder-functions (-O2 GCC 3.3)
25.1 | Maybe | -freorder-blocks (-O2)
25.1 | Maybe | -finline-limit
24.9 | Maybe | -malign-double
24.8 | Maybe | -frerun-loop-opt (-O2)
24.4 | Maybe | -frerun-cse-after-loop (-O2)
23.6 | Maybe | -fno-math-errno (fast math)
23.4 | Maybe | -falign-labels (-O2 GCC 3.3)
23.4 | Maybe | -fcse-follow-jumps (-O2)
22.9 | No | -fexpensive-optimizations (-O2)
22.9 | Yes | -fno-cprop-registers (! -O1)
22.8 | Maybe | -mieee-fp
22.8 | Maybe | -fno-thread-jumps (! -O1)
22.7 | Maybe | -fno-if-conversion2 (! -O1)
22.2 | Maybe | -fpeephole2 (-O2)
22.2 | Maybe | -freduce-all-givs
22.0 | Maybe | -foptimize-sibling-calls (-O2)
21.9 | Maybe | -frename-registers (-O3)
21.8 | Maybe | -fregmove (-O2)
21.7 | Maybe | -fcse-skip-blocks (-O2)
21.5 | Maybe | -ftracer
21.0 | Maybe | -fstrength-reduce (-O2)
21.0 | Maybe | -fschedule-insns2 (-O2)
20.7 | No | -fgcse (-O2)
20.4 | Yes | -fno-merge-constants (! -O1)
19.3 | Maybe | -falign-loops (-O2 GCC 3.3)
17.7 | Maybe | -fno-guess-branch-probability (! -O1)
16.0 | No | -fno-if-conversion (! -O1)
14.6 | No | -fschedule-insns (-O2)
13.1 | No | -fno-inline
12.5 | No | -funroll-loops
10.6 | No | -fomit-frame-pointer
9.3 | No | -funroll-all-loops
9.3 | No | -fnew-ra
8.9 | No | -momit-leaf-frame-pointer
5.7 | No | -ffloat-store
4.2 | No | -fno-loop-optimize (! -O1)
0.0 | No | -mfpmath=387
0.0 | No | -mfpmath=sse
0.0 | No | -mfpmath=sse,387
|
|
|
Back to top |
|
|
vguardiola n00b
Joined: 15 Jun 2004 Posts: 9
|
Posted: Sun Sep 05, 2004 8:02 pm Post subject: MI acovea test |
|
|
Bueno despues de unos cuantos intentos al final he conseguido finalizar mi test, y antes de poner los resultados he de comentar dos cosas unaque significa exactamente la columna del centro y dos tambien pongo el script que ejecuta todos los test, el cual le he añadido que si el test ya esta hecho no lo vuelva ha hacer.
Code: | #!/bin/sh
GCC="gcc33_pentium3.acovea"
for N in `ls /usr/share/acovea/benchmarks/`;
do
echo "-------- $N BEGIN --------"
file=${N%bench.c}
if [ -f $file.end ]
then
echo "ya esta hecho"
else
time runacovea -config $GCC -bench $N 1> $file.run 2> $file.err;
touch $file.end
fi
echo "-------- $N END --------"
done
|
aqui mis maquina un AMD K7 a 1200:
Code: | processor : 0
vendor_id : AuthenticAMD
cpu family : 6
model : 4
model name : AMD Athlon(tm) Processor
stepping : 2
cpu MHz : 1206.198
cache size : 256 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 mmx fxsr syscall mmxext 3dnowext 3dnow
bogomips : 2405.17
|
mi gcc version:
Code: |
gcc version 3.3.4 20040623 (Gentoo Linux 3.3.4-r1, ssp-3.3.2-2, pie-8.7.6)
|
Y los resultados:
Code: | Score | So? | Switch (annotation)
------------------------------------------------------------------------------
34.8 | Yes | -freduce-all-givs
34.4 | Maybe | -funsafe-math-optimizations (fast math)
33.0 | Yes | -ftracer
32.1 | Yes | -fno-crossjumping (! -O1)
31.4 | Maybe | -frerun-cse-after-loop (-O2)
30.6 | Yes | -maccumulate-outgoing-args
30.3 | Yes | -mieee-fp
30.2 | Yes | -fsched-spec (-O2 GCC 3.3)
30.0 | Yes | -frename-registers (-O3)
29.8 | Maybe | -fgcse (-O2)
29.7 | Maybe | -fsched-interblock (-O2 GCC 3.3)
29.7 | Maybe | -fprefetch-loop-arrays
29.1 | Maybe | -fforce-mem (-O2)
27.2 | Yes | -fno-thread-jumps (! -O1)
27.0 | Yes | -falign-labels (-O2 GCC 3.3)
26.8 | Yes | -fno-cprop-registers (! -O1)
26.0 | Maybe | -mno-push-args
25.9 | No | -fstrict-aliasing (-O2)
25.7 | Yes | -fdelete-null-pointer-checks (-O2)
25.5 | Yes | -fpeephole2 (-O2)
25.2 | Maybe | -fmove-all-movables
25.0 | Maybe | -fno-delayed-branch (! -O1)
25.0 | Maybe | -fcse-skip-blocks (-O2)
24.8 | Maybe | -freorder-functions (-O2 GCC 3.3)
24.7 | Maybe | -finline-functions (-O3)
24.7 | Maybe | -fcse-follow-jumps (-O2)
24.3 | Yes | -fno-merge-constants (! -O1)
24.2 | Yes | -fno-defer-pop (! -O1)
23.5 | Maybe | -fno-signaling-nans (fast math)
23.3 | Maybe | -fno-trapping-math (fast math)
23.3 | Maybe | -falign-loops (-O2 GCC 3.3)
23.1 | Yes | -malign-double
22.7 | Maybe | -falign-jumps (-O2 GCC 3.3)
22.7 | Maybe | -fcaller-saves (-O2)
22.2 | Yes | -fno-omit-frame-pointer (! -O1)
22.1 | Maybe | -fregmove (-O2)
22.1 | Maybe | -ffinite-math-only (fast math)
21.8 | Maybe | -fexpensive-optimizations (-O2)
21.3 | No | -fstrength-reduce (-O2)
20.6 | Maybe | -mno-align-stringops
20.2 | Maybe | -fno-if-conversion2 (! -O1)
19.6 | Maybe | -frerun-loop-opt (-O2)
19.5 | Yes | -fno-math-errno (fast math)
17.6 | Maybe | -minline-all-stringops
16.6 | No | -finline-limit
14.6 | No | -fno-inline
14.6 | No | -fschedule-insns (-O2)
14.5 | No | -foptimize-sibling-calls (-O2)
14.4 | No | -fschedule-insns2 (-O2)
13.9 | No | -fno-if-conversion (! -O1)
11.7 | No | -freorder-blocks (-O2)
10.8 | No | -fnew-ra
9.4 | No | -fomit-frame-pointer
9.2 | No | -ffloat-store
8.3 | No | -fno-guess-branch-probability (! -O1)
7.2 | No | -momit-leaf-frame-pointer
7.1 | No | -funroll-all-loops
6.8 | No | -funroll-loops
0.0 | No | -fno-loop-optimize (! -O1)
0.0 | No | -mfpmath=387
0.0 | No | -mfpmath=sse
0.0 | No | -mfpmath=sse,387
|
espero que a alguien le ayude |
|
Back to top |
|
|
artic Veteran
Joined: 22 Nov 2003 Posts: 1208
|
Posted: Sun Sep 05, 2004 8:10 pm Post subject: |
|
|
Creo q si pones todas esas flags para compilar,poco compilaras ademas de q saldran unos pedazo binarios........... al poner demasiados flags o abrasivos fallaran algunas compilaciones.No es q sea un experto pero es lo q he leido,las recomendas para cada cpu estan por el foro y van muy bien.
De todas formas la experiencia esta muy bien ,haber cuando salen las del athlon -xp.Yo de momento no tengo tiempo para esto.
Salu2 |
|
Back to top |
|
|
|