D'ailleurs je me suis toujours posé la question, comment ils testent les registres 64bits chez DEC pour être bien sur qu'il n'y a pas de "coquilles".***
Je m'explique, on prend la boucle
for (i=O; i<2^x; i++) // i est déclaré register
sur un processeur à 1ghz 1 incrementation/cycle ce qui est le cas des alpha, ppc, x86
pour x=32 bits = 4,29 s
pour x=64 bits ~ 585 ans
pour x=128 bits ~ 10^21 ans soit mille milliards de milliards d'année.
<disclaimer>A priori mes calculs sont juste, je ne suis pas responsable de vos migraines si vous ne retrouvez pas les mêmes résultats parce que j'ai oublié un zéro en tappant mes chiffres :-p </disclaimer>
Pétard, moi qui trouvais que mon Athlon 1.2ghz "arrachait" grave, je me rend compte qu'il met 4,29s pour faire une simple boucle, hors l'être humain perd patience au bour de 2s :-)
Conclusion, il me faut un athlon 32bits à 3ghz ou un athlon 64bits à 3x10^9 ghz ;-)
Donc en fait, c'est déjà impossible de faire du calcul exhaustif sur du 64bits, donc je pense même que l'on ne pourrait pouvoir faire que des stockages et additions sur ces registres (pour gérer la mémoire), car même si le circuit logique qui fait une addition ou multiplication est démontré mathématiquement, reste toujours les problèmes d'implémentation dans le monde réel, surtout a la finesse de gravure actuelle.
C'est vrai que moi aussi je me disais 8, 16, 32, 64, 128, 256... c'est la suite logique mais bon ça sert pas à grand chose, on va rester bloqué aux 64 bits.
Par contre il n'est pas dit que les bus de données passent eux à 128bits (voire plus) comme sur les consoles voire 1024bits sur la PS2 entre le framebuffer et la puce 3D, puisque ce ne sont que des liaisons d'échange, et ça permet de palier le manque de rapidité de la mémoire par plus de données échangées en une transaction.
*** evidemment il y a un truc, ils testent bit par bit, donc 64 tests par registre pour 64 bits :-)
Néanmoins ça n'enléve pas les possibilités de bug pour les calculs arithmétiques, puisque des tests exhaustifs sont impossibles.
--------------------
Le message est posté "AS IS", l'auteur ne saurait être responsable de rien du tout et le simple fait de l'avoir lu vous empêche d'être en désaccord avec lui :-)
[^] # 128 bits et petits calculs rigolos :-)
Posté par darkleon . En réponse à la dépêche Ca ne va pas fort pour l'Itanium d'Intel. Évalué à 2.
Je m'explique, on prend la boucle
for (i=O; i<2^x; i++) // i est déclaré register
sur un processeur à 1ghz 1 incrementation/cycle ce qui est le cas des alpha, ppc, x86
pour x=32 bits = 4,29 s
pour x=64 bits ~ 585 ans
pour x=128 bits ~ 10^21 ans soit mille milliards de milliards d'année.
<disclaimer>A priori mes calculs sont juste, je ne suis pas responsable de vos migraines si vous ne retrouvez pas les mêmes résultats parce que j'ai oublié un zéro en tappant mes chiffres :-p </disclaimer>
Pétard, moi qui trouvais que mon Athlon 1.2ghz "arrachait" grave, je me rend compte qu'il met 4,29s pour faire une simple boucle, hors l'être humain perd patience au bour de 2s :-)
Conclusion, il me faut un athlon 32bits à 3ghz ou un athlon 64bits à 3x10^9 ghz ;-)
Donc en fait, c'est déjà impossible de faire du calcul exhaustif sur du 64bits, donc je pense même que l'on ne pourrait pouvoir faire que des stockages et additions sur ces registres (pour gérer la mémoire), car même si le circuit logique qui fait une addition ou multiplication est démontré mathématiquement, reste toujours les problèmes d'implémentation dans le monde réel, surtout a la finesse de gravure actuelle.
C'est vrai que moi aussi je me disais 8, 16, 32, 64, 128, 256... c'est la suite logique mais bon ça sert pas à grand chose, on va rester bloqué aux 64 bits.
Par contre il n'est pas dit que les bus de données passent eux à 128bits (voire plus) comme sur les consoles voire 1024bits sur la PS2 entre le framebuffer et la puce 3D, puisque ce ne sont que des liaisons d'échange, et ça permet de palier le manque de rapidité de la mémoire par plus de données échangées en une transaction.
*** evidemment il y a un truc, ils testent bit par bit, donc 64 tests par registre pour 64 bits :-)
Néanmoins ça n'enléve pas les possibilités de bug pour les calculs arithmétiques, puisque des tests exhaustifs sont impossibles.
--------------------
Le message est posté "AS IS", l'auteur ne saurait être responsable de rien du tout et le simple fait de l'avoir lu vous empêche d'être en désaccord avec lui :-)