Ils utilisent le 4004, le premier processeur Intel, pour calculer le nombre Pi

IntelLe premier processeur de était un 4 bits Processeur qui fonctionnait à une vitesse de 750 KHz et n'accédait qu'à 4 Ko de RAM. Ses spécifications sont donc microscopiques par rapport à ce qui est disponible aujourd'hui même dans les PC les plus modestes. Eh bien, quelqu'un a pensé à calculer le nombre Pi avec un Intel 4004. Quels ont été les résultats ?

Une façon de mesurer les performances d'un processeur consiste à effectuer une tâche récurrente de difficulté croissante. Un exemple est les algorithmes de cryptographie, mais il en existe d'autres plus classiques et bien connus, comme la recherche des nombres premiers ou les différentes décimales de π. Rappelons-nous qu'il s'agit d'un nombre qui a un nombre infini de décimales et que leur recherche est donc un petit défi pour tout processeur. Cependant, jusqu'à présent, personne n'avait été en mesure de calculer le nombre pí (π) sur un Intel 4004.

Ils utilisent le 4004, le premier processeur Intel, pour calculer le nombre Pi

Pour y parvenir, ils ont monté le processeur vétéran sur un STM32 qu'ils ont utilisé pour simuler les périphériques et pouvoir le programmer. N'oublions pas que l'Intel 4004 ressemble plus à un microcontrôleur en fonctionnement qu'à un CPU de PC. Honneur qui revient à l'Intel 8080 comme le premier, puisqu'il est utilisé sur le mythique Altair 8800 de MITS.

Combien de temps faut-il à l'Intel 4004 pour calculer le nombre pi (π) ?

Eh bien, la réponse à la question est évidente, cela prend le même temps que n'importe quel autre processeur, puisque nous sommes un nombre irrationnel de décimales infinies. Ainsi, le test ou benchmark de performance consiste à mesurer la vitesse à laquelle il faut connaître la valeur de la prochaine décimale de la liste éternelle et sans fin.

Intel 4004

Le défi de le faire avec quelque chose d'aussi simple qu'un Intel 4004 signifie devoir surmonter un certain nombre de limitations clés :

  • Le fait que le jeu d'instructions est très limité.
  • Il n'a pas d'unité à virgule flottante, car il n'en a pas, il n'a même pas la capacité de multiplier des nombres.
  • Vos programmes ne peuvent pas dépasser 4 Ko à cause de son adresse de 4 Ko, mais vous avez besoin d'un multiplexeur externe pour le faire, sinon il reste à 1280 octets.
  • L'unité en charge du calcul mathématique n'utilise pas les portes logiques les plus efficaces , ce qui le rend beaucoup plus lent.
  • Sa vitesse d'horloge est 750 KHz , c'est-à-dire 750,000 XNUMX cycles par seconde. Un Intel Core ou un AMD Ryzen d'aujourd'hui ?
  • Ce n'est pas un processeur qui prend en charge l'exécution segmentée, il n'effectue donc pas plusieurs étapes dans différentes parties de celui-ci.

Bien que la question clé soit celle que nous avons posée comme titre de cette section et la réponse à celle-ci est : 3 heures avec 31 minutes et 13 secondes pour obtenir les 255 premiers chiffres du nombre pi (π) avec Intel 4004. Pour cela ils ont utilisé le Algorithme Double-Stan , qui repose sur l'utilisation de la division par des nombres entiers et évite l'utilisation de décimales afin de faciliter la tâche du premier processeur Intel extrêmement limité. A titre de comparaison, la même personne qui a fait le test a obtenu 25 millions de chiffres en une seconde avec un Xeon.