hardware,

Cray-1 a confronto

Sabino Maggi Sabino Maggi Segui 31-Aug-2017 · 10 minuti di lettura
Condividi

Non è solo nostalgia. Parlare di Cray-1 oggi non serve solo a ricordare i bei tempi andati quando i pochi sacerdoti del computer programmavano direttamente in codice macchina, ma serve a mettere nella giusta prospettiva quello che abbiamo a disposizione oggi, paragonandolo a ciò che quarant’anni fa era considerato lo stato dell’arte, il meglio del meglio.

Benchmark

Per farlo si può usare un benchmark, un programma fatto apposta per mettere alla prova le caratteristiche di un computer.

I benchmark non hanno una buona fama, anche perché vengono usati troppo spesso dal marketing per mettere in luce i soli aspetti positivi di una macchina, nascondendo con cura quelli negativi. Ma non è questo il caso: qui non dobbiamo vendere niente, ma ci interessa solo valutare la pura velocità di calcolo di un computer, sintetizzata da un numero semplice semplice, i MFLOPS (o megaFLOPS, Million of Floating Point Operations Per Second), cioè i milioni di operazioni in virgola mobile che un computer può eseguire ogni secondo.

Questo parametro è stato introdotto nei primi anni ‘70 per misurare le prestazioni velocistiche dei primi supercomputer ed è utile perché, pur se dà una idea molto parziale delle prestazioni complessive di un computer, permette di confrontare la velocità di calcolo di macchine di generazioni molto lontane tra loro.

Uno dei benchmark usati per misurare i MFLOPS è stato sviluppato nel 1970 in FORTRAN (allora il linguaggio d’elezione per il calcolo scientifico) presso il LLNL, il Lawrence Livermore National Laboratory, uno dei due mega laboratori di ricerca dedicati allo studio delle armi nucleari e delle applicazioni dell’energia nucleare degli Stati Uniti (l’altro è quello di Los Alamos, dove durante la II Guerra Mondiale venne sviluppata la prima bomba atomica).

Il benchmark dell’LLNL prevede l’esecuzione di un gran numero di tipi diversi di calcoli numerici, che vengono ripetuti in condizioni diverse. I risultati vengono sintetizzati riportando i valori massimi e minimi di MFLOPS e vari valori medi. Per semplicità mi limiterò a mostrare solo i valori massimi, che sono poi quelli che vengono usati normalmente per i confronti fra le varie macchine (e che fanno sempre più scena).

Cray-1 e successori

Ed allora ecco i risultati del benchmark dell’LLNL, eseguiti sul Cray-1 e sui suoi immediati successori. Per confronto vengono riportati anche i valori ottenuti con il CDC 7600, il computer più potente del mondo prima dell’arrivo del Cray-1.

Modello Frequenza (MHz) MFLOPS (max) Anno
CDC 7600 36 7 1969
Cray 1 80 83 1975
Cray XMP1 105 188 1982
Cray 2 244 146 1985

Il Cray-1, che è stato inequivocabilmente il supercomputer più popolare di tutti i tempi (è perfino comparso in Tron), aveva a metà degli anni ‘70 una potenza di calcolo di circa 80 MFLOPS e nei dieci anni seguenti il suo successore più potente non andava oltre i 190 MFLOPS. Questa è la base di partenza per tutti i confronti successivi.

In questo momento il supercomputer più potente del mondo ha più di 10.000 unità di calcolo (core)1 e raggiunge una velocità di calcolo di 93.000 TFLOPS (teraFLOPS), un miliardo di volte maggiore di un CRAY-1.2 Ci sono buone probabilità di raggiungere gli exaFLOPS entro l’anno prossimo.

Cray-1 e personal computer

Negli stessi anni in cui il Cray-1 (e successori) dominava la scena del supercalcolo, sono arrivati i computer personali, prima l’Apple II e poi il PC dell’IBM e il Macintosh Apple, che hanno fatto uscire i computer dalle stanze termostatizzate delle università e dei centri di ricerca, diffondendoli in ambiti lavorativi nei quali il massimo della tecnologia era la calcolatrice elettrica.

Ci sono voluti esattamente vent’anni per arrivare ad avere sulla scrivania un computer quasi altrettanto potente di un Cray-1, spinto dal processore Pentium ad alta frequenza che furoreggiava al momento dell’uscita di Windows 95 (su quelli precedenti che sbagliavano i calcoli in virgola mobile è meglio stendere un velo pietoso).

Poi c’è stata l’esplosione: dopo altri dieci anni la velocità di calcolo puro era cresciuta di oltre 25 volte e oggi, con poche migliaia di euro, possiamo comprare un computer che esegue calcoli 50-100 volte più velocemente di un Cray-1, che costava una decina di milioni di dollari.

Modello Frequenza (MHz) MFLOPS (max) Anno
Cray 1 80 83 1975
AMD 80386 40 1 1991
80486 DX2 66 5 1992
Pentium 75 24 1994
Pentium 200 66 1995
Pentium Pro 200 121 1996
Pentium II 450 267 1998
Pentium III 1000 593 2000
Pentium 4 1700 1043 2001
Core 2 Duo 2400 2236 2006
Core i7 3700 5508 2013

Ma anche i dispositivi mobili odierni si difendono bene: un iPhone 4 di 7 anni fa è venti volte più veloce del Cray-1, idem per l’iPad 2 del 2011. Purtroppo non ci sono dati per i dispositivi mobili più recenti, ma è più che probabile che ci sia stato un incremento di prestazioni di almeno 10 volte.

Tutto questo in fondo non è altro che una conseguenza della legge di Moore, che ci insegna che la complessità (e quindi la potenza) dei circuiti microelettronici (come i processori) raddoppia ogni 18 mesi, nonché delle economie di scala prodotte dalla loro enorme diffusione, che hanno abbattuto in modo inaudito i costi delle apparecchiature elettroniche.

Un qualunque computer odierno è un mostro di tecnologia rispetto ad un Cray-1, naturale che sia anche molto più veloce (e molto meno costoso).

Cray-1 e Raspberry Pi

Come si rapporta invece il Cray-1 al computer più piccolo e meno potente che possiamo usare oggi, il Raspberry Pi, che è senza alcun dubbio il computer più simile ai computer personali da casa degli anni ‘80, come i leggendari VIC-20 e 64 della Commodore o ZX80, ZX81 e Spectrum prodotti dalla Sinclair, che hanno permesso alla mia generazione di introdursi dello straordinario mondo dei computer e della programmazione?

[caption width=”800”]Sinclair ZX81 Sinclair ZX81 collegato a monitor e registratore a cassette (1981).[/caption]

[caption width=”800”]Raspberry Pi Configurazione analoga del Raspberry Pi.[/caption]

Ricordo a chi negli ultimi anni fosse vissuto in un’isola deserta che il Raspberry Pi è una schedina di appena 85 x 56 mm, più piccola di un disco rigido per notebook, che contiene un intero computer su cui può girare Linux o (volendo farsi del male) una versione speciale di Windows 10. Il modello più potente, il Raspberry Pi 3 Model B presentato all’inizio del 2016, ha un processore quad-core ARM a 1.2 GHz (come quelli usati negli smartphone) e 1 GB di memoria RAM. Costa circa 40 euro, a cui bisogna aggiungere qualcosa per l’alimentatore, la scheda SD e il cavo di collegamento al monitor, tutti accessori che sono quasi sempre già disponibili.

Il Raspberry Pi può essere usato per insegnare l’uso del computer partendo dalle basi (un computer odierno è troppo complesso e ha troppe funzioni nascoste dal sistema operativo per essere usato efficacemente per questo scopo) oppure per costruire sistemi autonomi che svolgono le funzioni più disparate, dalla video sorveglianza a sistemi robotici di tutti i tipi, fino ad applicazioni più casalinghe come home theater, NAS, strumenti musicali e, naturalmente, giochi.

Come va questo microcomputer che costa pochi spiccioli rispetto al mostro sacro degli anni ‘70? Basta dare una occhiata qui sotto: il primissimo modello di Raspberry Pi di cinque anni fa esegue i calcoli in virgola mobile due volte più velocemente del Cray-1, quello attuale è 5-8 volte più veloce, a seconda che si usi un sistema operativo (Linux) a 32 o a 64 bit. Un’altro tipo di benchmark eseguito sul Raspberry Pi originale da risultati analoghi: se il Raspberry Pi risulta avere prestazinoni di calcolo equivalenti al Cray XMP, che a sua volta era il doppio più veloce del Cray-1… completate voi il sillogismo.

Modello Frequenza (MHz) MFLOPS (max) Anno
Cray 1 80 83 1975
Raspberry Pi 700 148 2012
Raspberry Pi 2 900 248 2015
Raspberry Pi 3 (32 bit) 1200 435 2016
Raspberry Pi 3 (64 bit ) 1200 649 2016

Una piccola schedina da 40 euro equivale a 5 Cray-1 da almeno 40 milioni di dollari (di allora).

Stupefacente. Basta fare due conti per accorgersi che il rapporto prestazioni/prezzo del Rasperry Pi 3 è inarrivabile, ben superiore a quello di qualunque altro computer che abbiamo (o abbiamo avuto) a disposizione.

Conclusioni

Usiamo ogni giorno dei veri e propri supercomputer, anzi li portiamo in tasca. Abbiamo a disposizione un computerino piccolo piccolo che, a un costo ridicolo, offre prestazioni ben superiori di supercomputer che venivano usati per applicazioni scientifiche complicatissime.

Non ci sono scuse.

Usiamo le enormi risorse tecnologiche che abbiamo a disposizione per capire come funziona un computer, per imparare a programmare, per costruire un robot, per farci da soli un innaffiatore automatico per le piante del balcone.

Non importa cosa, non importa come, l’importante è avere voglia di sporcarsi le mani e imparare. È un vero spreco usare la tecnologia straordinaria che abbiamo a disposizione solo per passare il tempo su Facebook o su Instagram.

(continua…)

  1. I processori commerciali possono avere oggi dai 4 ai 16 core, quelli professionali hanno alcune decine di core e i processori ultra-specializzati delle schede grafiche arrivano a diverse centinaia di core. 

  2. RIcordo ai più smemorati che 1 MFLOPS corrisponde a $latex 10^{6}$ FLOPS (1 milione di FLOPS), Di conseguenza 1 TFLOPS equivale a $latex 10^{6}$ MFLOPS (1 milione di MFLOPS) e 1 EFLOPS (o exaFLOPS) equivale a $latex 10^{12}$ MFLOPS (mille miliardi di MFLOPS). 

Sabino Maggi
Pubblicato da Sabino Maggi Segui
Commenti

Aggiungi un commento