La fine di Moore?

Le prestazioni dei processori, e il numero di transistor ad esso relativo, raddoppiano ogni 18 mesi.

Così recita la famosa prima legge di Moore, un’osservazione empirica di Gordon Moore del 1965. Su questa legge abbiamo costruito l’informatica moderna.

Ma per quanto ancora durerà? Ci sono già sintomi di rallentamento, e sappiamo bene che prima o poi incontreremo almeno due grosse barriere:

  • Diminuendo le dimensioni entreremo nel dominio della fisica quantistica. E non fatevi ingannare dai termini: non è un computer quantistico. Semplicemente gli elettroni iniziano a saltare tra una pista e l’altra e non va più nulla.
  • Per quanto il campo elettrico si propaghi alla velocità della luce, e la luce va notoriamente veloce, questa velocità è discreta (n.d.r. circa 300.000 km/s) quindi il segnale ci mette del tempo a propagarsi. Se non possiamo diminuire la dimensione dei transistor allora per farcene stare di più dobbiamo metterli più distanti, questo implica che il loro segnale ci impiegherà più tempo ad arrivare a destinazione. Anche se a prima vista non sembra un grosso problema in realtà è una forte limitazione alla frequenza di lavoro del processore: più grosso è più lento.

Insomma, sembra proprio che, senza lampi di genio, la legge di Moore sia destinata a interrompersi bruscamente.

Già stiamo vedendo l’inizio di questi problemi e già si è parzialmente risolto il problema con la parallelizzazione. Il processore in realtà è composto da più parti uguali (core) che possono elaborare in parallelo: se un programma è pensato per questa tecnologia e ben scritto (vedi sotto) questo ha anche il gradevole effetto di incrementare le performance.

Gli albori del codice

L’informatica è nata con poca potenza di calcolo e ancor meno memoria. Quindi chi programmava aveva costantemente l’obbligo di trovare il modo più efficiente per fare quello che doveva. Questo ha indotto a buttarsi su hardware non general purpose pensato per fare velocemente delle cose che altrimenti fatte con un normale processore sarebbero state troppo lente (tendenza che persiste ancora oggi, pensate alle GPU)

Pensate che questo producesse risultati scadenti? Prendete in considerazione un computer con queste caratteristiche:

Processore: 2 MHz a 16 bit
RAM: 4 kB
Memoria: 72 kB

Direi che è ben poco, soprattutto se paragonato ad un cellulare moderno che ha un processore 500-1000 volte più veloce e che gestisce almeno 32 bit (iniziano a vedersi anche a 64 bit). Per non parlare della memoria, oggi per un cellulare parliamo di 2-4 GB di RAM e decine, se non centinaia, di GB per la memoria di massa.

Potrà sembrare folle ma queste specifiche appartengono all’Apollo Guidance Computer (AGC), il computer che ha portato l’uomo sulla luna… non proprio un giocattolino. l’AGC era costruito a mano partendo dalle porte logiche, implementava una rudimentale macchina virtuale per i calcoli sulle matrici e poteva eseguire fino ad 8 programmi contemporaneamente.

Pensateci ogni volta che nel vostro super cellulare corazzato rallenta per scaricare le previsioni meteo o per aprire l’app del vostro social network preferito, o mentre cerca di fare entrambe le cose insieme… sempre che abbiate un nuovo smartphone abilitato al multi-tasking…

Il codice oggi

 La legge di Moore ci ha permesso di dimenticare quei tempi oscuri in cui le cose andavano fatte bene per forza, oggi abbiamo abbastanza risorse per poterci permettere di sprecarle.

Ma detto in parole povere: se dovessi andare sulla luna, posto davanti al dilemma di scegliere tra AGC e un nuovissimo smartphone come computer di bordo, sceglierei senza alcun dubbio l’AGC. Perché non può essere paragonato, come affidabilità hardware e software, ad uno smartphone, per quanto quest’ultimo sia tecnologicamente più avanzato.

Spesso infatti avere più risorse non significa usarle bene, con la conseguenza che un software scritto per risparmiarle risulta migliore di uno che non se ne preoccupa.

Ma alla fine tutto questo conta poco: uno smartphone non deve portarti sulla luna, a lui basta portarti sui banner pubblicitari (se non vi siete accorti questa è la funzione primaria di uno smartphone). Il resto è collaterale, utile per portarti verso la pubblicità e magari profilarti per farti una pubblicità più mirata e vicina ai tuoi interessi.

Ad oggi l’efficienza è quasi d’intralcio, ma cosa succederà quando finirà Moore? Potremo ancora permetterci di pensare all’hardware come illimitato?

Andrea Bontempi

Andrea Bontempi ha scritto 10 articoli

Navigazione articoli


Lascia un commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati *

Puoi usare questi tag e attributi HTML:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">