Ei folosesc 4004, primul procesor Intel, pentru a calcula numărul Pi

IntelPrimul procesor al lui a fost pe 4 biți Procesor care a rulat la o viteză de 750KHz și a accesat doar până la 4KB de RAM. Deci specificațiile sale sunt microscopice în comparație cu ceea ce este disponibil astăzi chiar și în cel mai modest PC. Ei bine, cineva s-a gândit să calculeze numărul Pi cu un Intel 4004. Care au fost rezultatele?

O modalitate de a măsura performanța unui procesor este printr-o sarcină recurentă de dificultate crescândă. Un exemplu sunt algoritmii de criptografie, dar există și alții mai clasici și cunoscuți, precum căutarea numerelor prime sau a diferitelor zecimale ale lui π. Să ne amintim că este un număr care are un număr infinit de zecimale și căutarea acestora este, așadar, o mică provocare pentru orice procesor. Cu toate acestea, până acum, nimeni nu a putut calcula numărul pí (π) pe un Intel 4004.

Ei folosesc 4004, primul procesor Intel, pentru a calcula numărul Pi

Pentru a realiza acest lucru, au montat procesorul veteran pe un STM32 pe care l-au folosit pentru a simula perifericele și a-l putea programa. Să nu uităm că Intel 4004 seamănă mai mult cu un microcontroler în funcțiune decât cu un procesor PC. Onoare care aparține Intel 8080 ca primul, deoarece este folosit pe legendarul Altair 8800 de la MITS.

Cât timp durează Intel 4004 să calculeze numărul pi (π)?

Ei bine, răspunsul la întrebare este evident, durează același timp ca orice alt procesor, deoarece suntem un număr irațional de zecimale infinite. Deci testul de performanță sau benchmark constă în măsurarea vitezei necesare pentru a cunoaște valoarea următoarei zecimale a listei eterne și nesfârșite.

Intel 4004

Provocarea de a face acest lucru cu ceva la fel de simplu ca un Intel 4004 înseamnă că trebuie să depășiți o serie de limitări cheie:

  • Faptul că setul de instrucțiuni este foarte limitat.
  • Nu are o unitate în virgulă mobilă, pentru că nu o are, nici măcar nu are capacitatea de a înmulți numere.
  • Programele dvs. nu pot avea mai mult de 4 KB din cauza adresei sale de 4 KB, dar aveți nevoie de un multiplexor extern pentru a face asta, altfel rămâne la 1280 de octeți.
  • Unitatea însărcinată cu calculul matematic nu utilizează cele mai eficiente porți logice , ceea ce o face să fie mult mai lent.
  • Viteza sa de ceas este 750 KHz , adică 750,000 de cicluri pe secundă. Un Intel Core sau un AMD Ryzen de astăzi?
  • Nu este un procesor care suportă execuția segmentată, deci nu realizează mai multe etape în diferite părți ale acestuia.

Deși întrebarea cheie este cea pe care am pus-o ca titlu al acestei secțiuni și răspunsul la aceasta este: 3 ore cu 31 minute și 13 secunde pentru a obține primele 255 de cifre ale numărului pi (π) cu Intel 4004. Pentru aceasta au folosit Algoritmul Double-Stan , care se bazează pe utilizarea împărțirii prin numere întregi și evită utilizarea zecimalei pentru a facilita sarcina primului procesor Intel extrem de limitat. Ca o comparație, aceeași persoană care a rulat testul a obținut 25 de milioane de cifre într-o secundă cu un Xeon.