Citation: K-L Notre version a été compilée sans le support AltiVec, contrairement au Power6 :-)
Marrant, le X1000 de zzd10h est plus rapide que le mien
X1000 - 8GB - Radeon HD6570
Sam440 flex - Radeon 9250
Je débarque, j'ai vu les posts aujourd'hui sans pouvoir tester / répondre avant, bien que alléché par le sujet.
@K-L
AltiVec n'y changerait rien ici, il n'y a pas de traitrement particulier, juste des accès mémoire (cache), un peu d'opérations CPU, ...
Par rapport aux résultats de zzd10h, je pensais que le bench avait une incertitude mais j'ai des résultats comparables aux tiens ... bizarre. Ou alors il y a une option de config différente, ou bien un truc qu'il a désactivé ...
@Elwood
Ca n'est pas bizarre du tout que tu observes une baisse de perf au-delà de "8K elements". Cette limite se trouve être à 32KB, c'est à dire la taille du cache L1. Tant que le bench travaille sur un tableau de taille inférieure ou égale à 32 KB, les données sont en L1.
D'ailleurs on voit que sur le X1000, les perfs diminuent après "16 K elements". Sachant que 16 K * 4 octets par entier (élément), ça donne bien 64 K, la taille du cache L1 sur X1000.
Si ça chute dramatiquement après, soit le L2 n'est pas activé, soit il a des perfs pourries (mal réglé ?).
C'est un peu la boulette d'avoir mis en ligne un benchmark compilé sans option d'optimisation.
Pour mieux comprendre, j'ai compilé à différents niveau d'optimisation sur le X1000, de -O0 (pas d'optimisation) à -O3 :
3.Coding:sortbench> bin/sort
-------------------------------------------------------------
SORTBENCH 1.1 (Gunnar von Boehn)
Its a CPU benchmark that stresses CPU, DCache and branch prediction.
-------------------------------------------------------------
1 K Element : 1924.88 MB/sec
2 K Element : 1922.54 MB/sec
4 K Element : 1929.86 MB/sec
8 K Element : 1930.40 MB/sec
16 K Element : 1936.79 MB/sec
32 K Element : 1529.91 MB/sec0
3.Coding:sortbench> sortbench-O0
-------------------------------------------------------------
SORTBENCH 1.1 (Gunnar von Boehn)
Its a CPU benchmark that stresses CPU, DCache and branch prediction.
-------------------------------------------------------------
1 K Element : 144.94 MB/sec
2 K Element : 144.91 MB/sec
4 K Element : 144.86 MB/sec
8 K Element : 144.76 MB/sec
16 K Element : 144.70 MB/sec
32 K Element : 143.89 MB/sec
3.Coding:sortbench> sortbench-O1
-------------------------------------------------------------
SORTBENCH 1.1 (Gunnar von Boehn)
Its a CPU benchmark that stresses CPU, DCache and branch prediction.
-------------------------------------------------------------
1 K Element : 2068.66 MB/sec
2 K Element : 2106.89 MB/sec
4 K Element : 2091.69 MB/sec
8 K Element : 2092.35 MB/sec
16 K Element : 2097.49 MB/sec
32 K Element : 1574.70 MB/sec
3.Coding:sortbench> sortbench-O2
-------------------------------------------------------------
SORTBENCH 1.1 (Gunnar von Boehn)
Its a CPU benchmark that stresses CPU, DCache and branch prediction.
-------------------------------------------------------------
1 K Element : 2116.26 MB/sec
2 K Element : 2113.88 MB/sec
4 K Element : 2140.23 MB/sec
8 K Element : 2135.25 MB/sec
16 K Element : 2133.74 MB/sec
32 K Element : 1623.45 MB/sec
3.Coding:sortbench> sortbench-O3
-------------------------------------------------------------
SORTBENCH 1.1 (Gunnar von Boehn)
Its a CPU benchmark that stresses CPU, DCache and branch prediction.
-------------------------------------------------------------
1 K Element : 1807.52 MB/sec
2 K Element : 1799.73 MB/sec
4 K Element : 1813.96 MB/sec
8 K Element : 1804.62 MB/sec
16 K Element : 1807.20 MB/sec
32 K Element : 1688.35 MB/sec
Un truc que je ne m'explique pas : le binaire fourni donne des résultats différents de n'importe quel niveau d'optimisation ...