Apple prépare discrètement l'arrivée du 64 Bits
Merci à Donatello pour ces informations:
Le PowerPC possède un jeu d'instructions pour manipuler la mémoire cache: dcbt, dcbz, dcba, ... Ces instructions dépendent des caractéristiques physiques de la mémoire cache. Et notamment de le taille d'une ligne de cache. Le cache est découpé en lignes.
Pour le Power4, IBM a utilisé une ligne de cache de 64 octets. Or tous les PowerPC utilisés par Apple précédemment avait une ligne de cache de 32 octets.
L'utilisation de l'instruction dcbz peut générer des bugs avec le PowerPC 970. Cette instruction met à 0 une ligne de cache. Sur le G4, elle met 32 octets à 0. Sur le PowerPC 970, elle mettra 64 octets à 0. Car le PowerPC 970 dérive du Power4. D'où un risque d'effacement involontaire de données avec le PowerPC 970.
Il est amusant de noter qu’Apple a mis à jour récemment ses consignes
http://developer.apple.com/technotes/tn/tn1174.html . Dans cette note technique de 1999, Apple montre comment utiliser l'instruction dcbz avec le G4. Apple incitait alors les développeurs à l'utiliser.
http://developer.apple.com/hardware/ve/performance_memory.html . Maintenant, la consigne est "do not use dcbz". Etrange non ! (A ma connaissance l'instruction dcba n'est pas supportée par le Power4, c'est peut être pourquoi Apple déclare aussi "do not use dcba").