Page suivantePage précédenteTable des matières
Le 21064 et le 21066 ont la même base (EV4). Si le même programme tourne sur un 21064 et un 21066, à la même fréquence, alors
la différence de performance provient uniquement de la bande passante entre le Bcache et la mémoire. Du code qui tombe
principalement dans les caches internes tournera aussi rapidement. Il y a 2 principaux tueurs de performances :
- Du code qui écrit énormément. Malgré les buffers en écriture du 21064 et du 21066 pour économiser certains délais, du code
qui écrit énormément sera étranglé par la bande passante en écriture du bus système. Cela est du au fait que les cache du processeur
sont en écriture immédiate.
- Du code qui veut traiter les flottants en tant qu'entiers. L'architecture Alpha ne permet pas des transferts entre registres
entiers et registres flottants. Une telle conversion doit être faite en mémoire (Et du coup, puisque les caches du processeur sont
en écriture immédiate, via le Bcache). (Note : il semble que l'EV4 et l'EV45 peuvent effectuer la conversion via le premier cache
de données (Dcache), à partir du moment ou la mémoire est cachée. Dans ce cas, l'écriture faite par la séquence de conversion
mettra à jour le Dcache et la lecture qui va suivre sera, dans certaines circonstances, capable de lire la valeur du Dcache,
évitant un coûteux transfert depuis le Bcache. En particulier, il semble meilleur d'exécuter les instructions stq/ldt ou stt/ldq
dos à dos, ce qui est plutôt contraire à l'intuition.)
Si vous effectuez la même comparaison entre un 21064A et un 21066A, il y a un facteur supplémentaire du aux différentes tailles
des Icache et Dcache entre les deux processeurs.
Maintenant, le 21164 résoud ces deux problèmes : il atteint des bien meilleures bandes passantes du bus système (malgré
le même nombre de broches de signal - oui, je sais que c'est à peu près deux fois plus qu'un 21064, mais les supplémentaires
sont l'alimentation et la masse ! (oui, réellement!!)) et il a des caches en écriture différée. Le seul problème restant est la
réponse à la question "combien il coûte ?"
Page suivantePage précédenteTable des matières