Usano il 4004, il primo processore Intel, per calcolare il numero Pi

IntelIl primo processore era un 4-bit CPU che funzionava a una velocità di 750 KHz e accedeva solo fino a 4 KB di RAM. Quindi le sue specifiche sono microscopiche rispetto a quanto è disponibile oggi anche nel PC più modesto. Ebbene, qualcuno ha pensato di calcolare il numero Pi con un Intel 4004. Quali sono stati i risultati?

Un modo per misurare le prestazioni di un processore è attraverso un'attività ricorrente di difficoltà crescente. Un esempio sono gli algoritmi di crittografia, ma ce ne sono altri più classici e conosciuti, come la ricerca dei numeri primi o le diverse posizioni decimali di π. Ricordiamoci che è un numero che ha un numero infinito di cifre decimali e la loro ricerca è, quindi, una piccola sfida per qualsiasi processore. Tuttavia, fino ad ora, nessuno era stato in grado di calcolare il numero pí (π) su un Intel 4004.

Usano il 4004, il primo processore Intel, per calcolare il numero Pi

Per raggiungere questo obiettivo, hanno montato il processore veterano su un STM32 che hanno utilizzato per simulare le periferiche ed essere in grado di programmarlo. Non dimentichiamo che l'Intel 4004 è più simile a un microcontrollore in funzione che a una CPU per PC. Honor che appartiene per primo all'Intel 8080, in quanto utilizzato sul leggendario Altair 8800 di MITS.

Quanto tempo impiega l'Intel 4004 per calcolare il numero pi (π)?

Ebbene, la risposta alla domanda è ovvia, impiega lo stesso tempo di qualsiasi altro processore, dato che siamo un numero irrazionale di infiniti decimali. Quindi il test delle prestazioni o benchmark consiste nel misurare la velocità necessaria per conoscere il valore del decimale successivo dell'eterno e infinito elenco.

Intel 4004

La sfida di farlo con qualcosa di semplice come un Intel 4004 significa dover superare una serie di limitazioni chiave:

  • Il fatto che il set di istruzioni sia molto limitato.
  • Non ha un'unità in virgola mobile, perché non ce l'ha, non ha nemmeno la capacità di moltiplicare i numeri.
  • I tuoi programmi non possono essere più di 4 KB a causa del suo indirizzo di 4 KB, ma hai bisogno di un multiplexer esterno per farlo, altrimenti rimane a 1280 byte.
  • L'unità preposta al calcolo matematico non utilizza le porte logiche più efficienti , il che lo porta ad essere molto più lento.
  • La sua velocità di clock è 750 KHz , ovvero 750,000 cicli al secondo. Un Intel Core o un AMD Ryzen di oggi?
  • Non è un processore che supporta l'esecuzione segmentata, quindi non esegue più fasi in diverse parti di esso.

Anche se la domanda chiave è quella che abbiamo messo come titolo di questa sezione e la risposta è: 3 ore con 31 minuti e 13 secondi per ottenere le prime 255 cifre del numero pi (π) con Intel 4004. Per questo hanno utilizzato il Algoritmo del doppio Stan , che si basa sull'utilizzo della divisione per numeri interi ed evita l'uso di decimali per facilitare il compito del primo processore Intel estremamente limitato. A titolo di confronto, la stessa persona che ha eseguito il test ha ottenuto 25 milioni di cifre in un secondo con uno Xeon.