Sophie

Sophie

distrib > Mandriva > 9.0 > i586 > by-pkgid > 0d5cd12c82d627a82c59047e1ba7b8a9 > files > 77

howto-html-fr-9.0-0.2mdk.noarch.rpm

<HTML>
<HEAD>
<TITLE>Performances compar&eacute;es du 21064 et du 21066</TITLE>
</HEAD>
<BODY>
<H1>4. <A NAME="s4"></A>Performances compar&eacute;es du 21064 et du 21066</H1>
<P>
<A HREF="Alpha-HOWTO.html#toc4">Contenu de cette section</A></P>

<P>Le 21064 et le 21066 ont la m&ecirc;me base (EV4). Si le m&ecirc;me programme tourne sur un 21064 et un 21066, &agrave; la m&ecirc;me fr&eacute;quence, alors
la diff&eacute;rence de performance provient uniquement de la bande passante entre le Bcache et la m&eacute;moire. Du code qui tombe
principalement dans les caches <EM>internes</EM> tournera aussi rapidement. Il y a 2 principaux tueurs de performances :</P>
<P>
<OL>
<LI> Du code qui &eacute;crit &eacute;norm&eacute;ment. Malgr&eacute; les buffers en &eacute;criture du 21064 et du 21066 pour &eacute;conomiser certains d&eacute;lais, du code
qui &eacute;crit &eacute;norm&eacute;ment sera &eacute;trangl&eacute; par la bande passante en &eacute;criture du bus syst&egrave;me. Cela est du au fait que les cache du processeur
sont en &eacute;criture imm&eacute;diate.
</LI>
<LI> 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 &ecirc;tre faite en m&eacute;moire (Et du coup, puisque les caches du processeur sont
en &eacute;criture imm&eacute;diate, via le Bcache). (Note : il semble que l'EV4 et l'EV45 peuvent effectuer la conversion via le premier cache
de donn&eacute;es (Dcache), &agrave; partir du moment ou la m&eacute;moire est cach&eacute;e. Dans ce cas, l'&eacute;criture faite par la s&eacute;quence de conversion
mettra &agrave; jour le Dcache et la lecture qui va suivre sera, dans certaines circonstances, capable de lire la valeur du Dcache,
&eacute;vitant un co&ucirc;teux transfert depuis le Bcache. En particulier, il semble meilleur d'ex&eacute;cuter les instructions stq/ldt ou stt/ldq
dos &agrave; dos, ce qui est plut&ocirc;t contraire &agrave; l'intuition.)
</LI>
</OL>
</P>
<P></P>
<P>Si vous effectuez la m&ecirc;me comparaison entre un 21064A et un 21066A, il y a un facteur suppl&eacute;mentaire du aux diff&eacute;rentes tailles
des Icache et Dcache entre les deux processeurs.</P>
<P></P>
<P>Maintenant, le 21164 r&eacute;soud ces deux probl&egrave;mes : il atteint des <EM>bien</EM> meilleures bandes passantes du bus syst&egrave;me (malgr&eacute;
le m&ecirc;me nombre de broches de signal - oui, je <EM>sais</EM> que c'est &agrave; peu pr&egrave;s deux fois plus qu'un 21064, mais les suppl&eacute;mentaires
sont l'alimentation et la masse ! (oui, r&eacute;ellement!!)) et il a des caches en &eacute;criture diff&eacute;r&eacute;e. Le seul probl&egrave;me restant est la
r&eacute;ponse &agrave; la question &quot;combien il co&ucirc;te ?&quot;</P>
<P></P>
<HR>
<P>
Chapitre <A HREF="Alpha-HOWTO-5.html">suivant</A>,
Chapitre <A HREF="Alpha-HOWTO-3.html">Pr&eacute;c&eacute;dent</A>
<P>
Table des mati&egrave;res de <A HREF="Alpha-HOWTO.html#toc4">ce chapitre</A>,
 <A HREF="Alpha-HOWTO.html#toc">Table des mati&egrave;res</A> g&eacute;n&eacute;rale</P>
<P>
<A HREF="Alpha-HOWTO.html">D&eacute;but</A> du document,
 <A HREF="#0"> D&eacute;but de ce chapitre</A></P>
</BODY>
</HTML>