32 ou 64 bits ? Re: [gull] ubuntu et automatix

Daniel Cordey dc at mjt.ch
Tue May 6 12:52:15 CEST 2008


On Tuesday 06 May 2008, Dominique Lovy wrote:

> Il y a tests et tests:
> mes calculs (en 64 bits) vont tout simplement presque deux fois plus vite
> sous x86_64 que sous i686:

C'est tout a fait comprehensible. Tout calcul va vraiment profiter de la 
taille des registres et de la maniere dont la/les memoire cache du CPU 
fonctionne. En manipulant des donnees exclusivements 64 bits, il y a moins 
d'operations de lecture/ecriture de la memoire. CAD que le nombre 
d'operations diminue, mais pas l'utilisation de la bande passante du bus 
memoire. Cette bande passante est simplement utilisee de maniere plus 
efficace. Par contre, il y a plus de gaspillage de cette bande passante 
lorsque l'on ne manipuile justement pas de donnees 64 bits. C'est la raison 
pour laquelle on mesure une perte de performance en usage "courant" d'environ 
2-3 %. Ceci est aussi du a un gsapillage de l'espace a l'interieur de la 
cache... du a une utilisation de '64 bits', la ou l'on manipule souvent des 
donnees '32' bits. C'est   en fait la principale raison de la perte de 
performance en usage "courant"; cela revient a diminuer la taille de la 
memoire cache. Ces effets de "cash thrashing" sont visible avec des 
benchmarks synthetiques, ou l'on augmente progressivement la taille de 
tableau de donnees (matrices, etc.); le "saut" est decale. Toutefois, il y a 
deux visions antagonistes dans l'utilisation d'une version 64 ou 32 bits. 
Dans un usage desktop, le 64 bits est parfaitement inutile et n'apporte 
strictement rien, si ce n'est cette perte de performance non perceptible. Par 
contre, des qu'une application a besoin de grands espaces memoire pour un 
meme process, ou que l'on desire systematiquement manipuler des valeurs 64 
bits (double), alors un kernel 64 va clairement donner un avantage tres nette 
dans ce cas. Le srequetes a la memoire se font par paquet de N64 bits et il y 
a moins de gaspillage dans le transfert. C'est sans doute la raison du gain 
de performance dans le test cite.

Tous les OS demontrent ce phenomene (je ne sais pas pour W*) et cela n'est pas 
propre a Linux. Donc, vu avec Solaris, HP-UX et AIX...


dc




More information about the gull mailing list