En fait, la raison pour laquelle les Athlon XP explosaient le P4 à l'époque est la même qui explique pourquoi un P4 se débrouillait mieux pour ce qui était du « multimédia » : il s'agit de la longueur du pipeline d'instructions. Il y avait entre 22 et 31 étages pour le pipeline dans le P4, ce qui signifie que pour du calcul très régulier comme celui de l'encodage (pas de « if/else », des boucles très longues, etc.), alors le P4 pouvait mouliner à fond (car l'allongement du pipeline permettait entre autre d'avoir des fréquences élevées).
Ce mếme pipeline, en présence de code extrêmement irrégulier au niveau du contrôle (boucles courtes, if/else, tout ça imbriqué, etc), devait être vidé en cas de mauvaise prédiction de branchement. Si par exemple il n'y a pas de régularité dans la prise d'une branche (disons 50% de chance d'être prise, etc), alors du coup le pipeline doit être régulièrement vidé, ce qui peut donc représenter jusqu'à 31 cycles de perdus. Dans une boucle while qui imbriquerait plusieurs if, par exemple, c'est plutôt gênant... Et du coup, un athlon qui ne propose que (au pif, j'en sais rien pour l'athlon) 12 ou 14 étages, forcément, la perte de temps est divisée par deux.
[^] # Re: Remplir les besoins des utilisateurs != Hostile a Linux
Posté par lasher . En réponse au journal nVidia Optimus, bonne idée fondamentalement incompatible avec Linux.... Évalué à 4.
Ce mếme pipeline, en présence de code extrêmement irrégulier au niveau du contrôle (boucles courtes, if/else, tout ça imbriqué, etc), devait être vidé en cas de mauvaise prédiction de branchement. Si par exemple il n'y a pas de régularité dans la prise d'une branche (disons 50% de chance d'être prise, etc), alors du coup le pipeline doit être régulièrement vidé, ce qui peut donc représenter jusqu'à 31 cycles de perdus. Dans une boucle while qui imbriquerait plusieurs if, par exemple, c'est plutôt gênant... Et du coup, un athlon qui ne propose que (au pif, j'en sais rien pour l'athlon) 12 ou 14 étages, forcément, la perte de temps est divisée par deux.