Page suivante - Page précédente - Table des matières

4. Performances comparées du 21064 et du 21066

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 :

  1. 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.
  2. 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 suivante - Page précédente - Table des matières