SUPERCALCOLATORE
Denominazione che traduce il termine inglese supercomputer (anch'esso usato in italiano come sinonimo), e che viene attribuita, nella categoria degli elaboratori elettronici (v. in questa Appendice; v. anche informatica), a quelle macchine che sono dotate di caratteristiche particolarmente superiori alle altre, sia per la rapidità di esecuzione dei calcoli numerici, sia per la capacità di memorizzazione di grandi quantità di dati. Il termine s. comparve per la prima volta nella metà degli anni Sessanta per indicare quegli elaboratori, appena realizzati, che permisero un incremento di prestazioni di oltre un ordine di grandezza rispetto alle macchine disponibili sino a quel momento. Col passare del tempo il termine s. ha assunto vari significati, in funzione del punto di vista e delle grandezze fisiche prese in esame, in genere simili ma non equivalenti. Di tali significati si dà conto qui di seguito.
La prima definizione di s. è quella che è all'origine del termine stesso: i s. sono gli elaboratori non specializzati (general purpose) capaci di eseguire calcoli e memorizzare dati in misura superiore alla maggior parte degli elaboratori disponibili in un certo periodo storico. I s. rappresentano il vertice del calcolo elettronico. Questa definizione può essere applicata con riferimento a un qualsiasi intervallo di tempo, anche nel passato, e in tal senso l'elaboratore elettronico ENIAC del 1945 fu il primo s. (v. calcolatrici, macchine, App. II, i, p. 482; III, i, p. 281). Visto nel fluire del tempo, un s. di un dato momento perderà questa qualifica all'apparire sulla scena di nuovi s. di caratteristiche e prestazioni superiori. Oggi la potenza che fu di ENIAC è disponibile nella calcolatrice programmabile di uno studente liceale.
Questa definizione temporale può essere specificata in un senso più tecnico dicendo che il s. è il calcolatore che impiega le tecnologie costruttive più avanzate allo scopo di raggiungere le massime prestazioni. A tal fine le misure del grado di progresso sono i circuiti elettronici, la minima unità temporale necessaria per una singola operazione (clock, l'orologio proprio del s.), le dimensioni delle celle di memoria accessibili senza ritardo, ecc.; alcuni valori per le grandezze caratteristiche saranno forniti più avanti.
Accanto alle precedenti si può dare una definizione di s. di tipo applicativo: i s. sono quei sistemi di elaborazione che consentono di affrontare i problemi di confine della scienza e della tecnica. Ciò in quanto la formulazione di molti problemi concettuali viene oggi espressa in termini di un gran numero di operazioni di calcolo e di dati da memorizzare ed elaborare. Il s. è l'apparecchio d'avanguardia per l'acquisizione di nuove conoscenze, e come tale anche strumento per l'evoluzione degli stessi elaboratori. I nuovi s. sono progettati mediante i s. attuali in un processo di autoaccrescimento.
Oltre alle suddette, per i s. esiste anche una definizione ufficiale, che fu data per ragioni di strategia politico-militare con conseguenze giuridiche. La situazione mondiale, protrattasi dalla fine della seconda guerra mondiale sino agli albori degli anni Novanta con la divisione in due blocchi politico-militari contrapposti, fece sì che negli Stati Uniti fossero promulgate leggi severe sull'esportazione di materiale informatico, in considerazione dell'impiego militare che si sarebbe potuto fare dei calcolatori elettronici; impiego della cui portata si era avuta prova sia durante la seconda guerra mondiale sia nell'immediato dopoguerra, in ragione dei calcoli di fisica nucleare che gli elaboratori avevano consentito negli studi sulle bombe atomiche a fissione e all'idrogeno a fusione. Allo scopo di caratterizzare i s. fu necessario, per le prestazioni di ogni elaboratore elettronico, stabilire un'unità di misura insieme a una soglia al di sopra della quale questi si definissero s. e per i quali l'esportazione fosse condizionata a un nulla osta governativo. L'unità di misura prescelta fu la prestanza teorica composita (Composite Theoretical Performance, CTP), espressa in milioni di operazioni teoriche al secondo (Million Theoretical Operations Per Second, MTOPS). Inizialmente (1984), il controllo e il rilascio di autorizzazioni all'esportazione fu dato, dal Dipartimento di stato per il commercio degli USA, a quei sistemi che presentavano una prestanza teorica composita superiore a 12,5 MTOPS, e furono definiti s. i sistemi con prestazioni superiori a 194 MTOPS. Oggi (1995) il controllo è esercitato sui calcolatori con capacità elaborative superiori a 194 MTOPS, e si definiscono s. quei sistemi che superino i 2000 MTOPS. Come si è detto, il s. è tale in rapporto alla sua epoca, e ogni s. ha il suo momento. La sua durata, ai ritmi di sviluppo attuali, è inferiore ai dieci anni.
Evoluzione dei supercalcolatori. - Se il termine s. fu coniato nella metà degli anni Sessanta per distinguere le nuove macchine che si affacciavano nel panorama tecnologico di allora, il primo s. a essere definito tale fu l'IBM 360/91 in cui erano presenti nuovi concetti sia strutturali sia logici. Esso incorporava il concetto di microprogrammazione (formulato nel 1951 da H.W. Wilkes) che, a differenza dei calcolatori precedenti, consentiva di programmare anche l'unità di controllo, cioè il livello più elevato della macchina. Questo fatto, che rendeva più agevole l'evoluzione della programmazione e più flessibile il calcolatore, fu reso possibile dall'introduzione delle memorie rapide su semiconduttore, il circuito integrato nella sua forma primitiva. Tale innovazione consentì di realizzare per la prima volta un'intera gamma di calcolatori tra loro compatibili nel senso della programmazione: il più potente di questa serie venne appunto denominato ''supercalcolatore''. Nel successivo decennio si sperimentarono nuove tecniche costruttive e il s. ILLIAC iv, costruito per l'Agenzia spaziale statunitense NASA, fu in grado di compiere fino a 50 milioni di operazioni al secondo mediante l'uso contemporaneo di 65 processori. Il vero salto di qualità si ebbe nel 1976 con la progettazione e con la produzione da parte di S. Cray di quello che è unanimemente riconosciuto essere il primo vero s.: CRAY-1. Per le differenze rispetto a tutti i calcolatori precedenti, per capacità operativa e affidabilità di funzionamento continuo, i s. di Cray rivoluzionarono il mondo dell'informatica raggiungendo rapidità massime di calcolo di 160 milioni di operazioni al secondo, sino ad allora mai raggiunte.
Con il CRAY-1 iniziò una nuova era detta del ''supercalcolo''; da allora questo e i suoi successori (CRAY-2, CRAY-YMP, CRAY-C90) sono stati il punto di riferimento per i progettisti e i costruttori di s.; punto di riferimento da emulare e possibilmente da superare. Per la prima volta, in una realizzazione tecnologica di dimensioni limitate, fu necessario, nel progettare CRAY-1, tenere conto del tempo necessario a un segnale elettromagnetico per giungere da un capo all'altro dei circuiti elettrici del sistema. Ciò in quanto la rapidità di elaborazione avveniva in tempi confrontabili con quelli che un segnale, che si muova alla velocità della luce, impiega per giungere da un elemento a un altro del sistema stesso. Il tempo era scandito, dall'orologio del s., in intervalli di 12,5 ns (miliardesimi di secondo). In questo tempo un segnale che viaggi alla velocità della luce percorre 3,75 m, una distanza confrontabile con le distanze tra gli elementi circuitali dell'elaboratore stesso. Oggi gli eredi di quel s. hanno un tempo limite di 1 ns. Il confronto con la velocità della luce dà, per un tale tempo, distanze circuitali di soli 30 cm, ed è necessario pertanto che le varie parti del sistema, distanti tra loro molto di più di 30 cm, agiscano in modo coordinato non potendosi applicare a esse il principio di causa ed effetto mediante segnali elettromagnetici. Le parti del sistema, per tempi così ridotti, sono fuori del, ben noto ai fisici, cono di casualità di Minkowski (v. relatività, App. IV, iii, p. 199).
L'esigenza di superamento di questi limiti fisici, per la velocità di esecuzione dei calcoli, determinata dalla velocità di propagazione dei segnali elettromagnetici, ha condotto i ricercatori a sondare altre strade. La prima idea è stata quella di accoppiare più calcolatori in modo da far eseguire a ciascuno una parte del programma di calcolo in modo indipendente. In questo modo si sono raggiunti ragguardevoli risultati fin quasi a ottenere prestanze multiple del numero di elaboratori. Se p è la prestanza di un singolo elaboratore, per un sistema composto di n processori collegati si ottiene una prestanza totale P=cnp, dove il coefficiente c è prossimo all'unità. Il s. significativo del momento attuale in questo settore, CRAY C90, si basa su 16 calcolatori connessi per il funzionamento simultaneo.
Sin qui si sono descritti s. funzionanti in modo sequenziale, cioè che eseguono calcoli in successione: ogni operazione inizia al termine della precedente. Il loro schema risale alle ricerche di J. von Neumann (anni Quaranta del 20° secolo), ricerche che condussero alla realizzazione del citato ENIAC. Con l'introduzione dei s. a più processori connessi si sono superati in via preliminare i limiti fisici su accennati e in un certo qual modo anche l'architettura di von Neumann. Questa nuova via, dell'accoppiamento di più calcolatori e della violazione dello schema sequenziale, condusse nei primi anni Ottanta D. Hills, allora studente del MIT (Massachusetts Institute of Technology) di Boston e impegnato in ricerche sull'intelligenza artificiale, a concepire un nuovo tipo di s. in cui il sistema era costituito da migliaia di calcolatori funzionanti in connessione tra di loro. Il nuovo s. che fu realizzato sulla base di questa nuova idea, fu denominato Connection Machine e si basava su un sistema di 216 cioè 65.536 calcolatori connessi tra loro; si aprì una nuova era.
Il problema che si poneva era come collegare tutti questi sistemi in modo che non si avessero interferenze tra loro. Fu lo stesso Hills a proporre la soluzione risultata poi la migliore: l'ipercubo. Il cubo dello spazio ordinario è composto da 8 vertici, ciascuno dei quali risulta collegato, attraverso i relativi spigoli, ad altri 3 di tali vertici. In geometria, il cubo ha 23=8 vertici perché lo spazio ha 3 dimensioni. Generalizzando questa formula si dice che un ipercubo di uno spazio a n dimensioni ha 2n vertici connessi ciascuno con gli n altri vertici vicini. L'ipercubo del piano, di dimensione 2, è il quadrato che ha 22=4 vertici ciascuno connesso con altri 2. Usando la geometria dell'ipercubo si riuscì a connettere fino a migliaia di calcolatori con un numero di connessioni a coppie relativamente piccolo.
Nella Connection Machine e nei s. da questa ispirati, con un collegamento tra ogni elaboratore e i 16 vertici vicini, si riuscì a realizzare un sistema con 65.536 elaboratori. La via del calcolo massicciamente parallelo detto anche supercalcolo parallelo era aperta. Gli studi condotti in questo settore in Italia dall'università ''La Sapienza'' di Roma hanno portato alla realizzazione del s. APE dalle prestazioni dichiarate simili a quelle dei corrispondenti stranieri.
La ricerca nel settore del supercalcolo vede oggi il massimo sviluppo nella direzione dei calcolatori massicciamente paralleli in quanto si ritiene che a breve termine non si potranno superare i limiti oggi raggiunti nei singoli microprocessori. Dall'altra parte lo sviluppo della programmazione parallela non ha ancora raggiunto un livello tale da poter impiegare a fondo le migliaia di calcolatori contenuti in ogni singolo s. parallelo. Al superamento concettuale della programmazione sequenziale non ha ancora fatto seguito il completo adeguamento delle capacità di esprimere i problemi in forma parallela.
Applicazioni. - Alle origini dello sviluppo dei s. si sono avute esigenze di vario genere di cui in particolare due, le militari e le astronautiche, hanno stimolato, anche con finanziamenti cospicui, la ricerca e lo sviluppo presso le industrie. Lo sbarco sulla Luna fu un esempio di applicazione di s.: il calcolo delle traiettorie e il controllo delle astronavi richiede enormi potenze di elaborazione, e soprattutto le richiede al momento. Questo concetto di prestanza di calcolo disponibile su immediata richiesta è detta in tempo reale (real time) e manifesta l'esigenza di disporre dei prodotti dell'elaborazione in tempo utile per il loro impiego prima che divengano obsoleti. Un esempio di applicazione di calcolatori in tempo reale che ha stimolato i progettisti e i produttori sono le previsioni meteorologiche. La simulazione dell'aerofisica permette oggi di produrre previsioni meteorologiche oggettive la cui validità dipende dalla loro disponibilità prima che gli eventi previsti accadano.
Una volta resi disponibili i s., le possibili applicazioni del supercalcolo sono venute crescendo in modo vertiginoso, creando un mercato che oggi è in grado di alimentare le industrie in modo autonomo. Una tra le applicazioni dei s. di maggior interesse è quella della modellazione della realtà. Come si è accennato sopra, in meteorologia i s. permettono di rappresentare in anticipo l'evoluzione dell'atmosfera e di prevedere i fenomeni meteorici con capacità di gran lunga superiori a quelle umane. In analogia a quanto si fa in meteorologia, con i s. si possono simulare eventi del genere più vario purché si sappia esprimere la loro evoluzione in forma numerica, cioè si conoscano le equazioni di questa evoluzione. In tal modo i s. divengono laboratori di sperimentazione, seppur teorica, permettendo di simulare situazioni sperimentalmente irraggiungibili, come per es., negli studi geofisici, il centro della Terra. In conseguenza di questa nuova visione della realtà ci si aspetta molto dalle applicazioni dei s. in tutti i campi della ricerca: medica, tecnologica, pura.
Bibl.: P. Sguazzero, Supercalcolatori, in Enciclopedia del Novecento, Supplemento, Roma 1989, pp. 491-506; J. Worlton, The once and future supercomputer, New York 1990; S. Petrarca, Calcolatori dedicati alla fisica teorica, in Enciclopedia delle scienze fisiche, I, Roma 1992, pp. 403-04; D. Laforensa, Calcolatori massicciamente paralleli, ibid., pp. 405-07; E. Mallach, Supercomputers: Overview, Delran 1993; G. Carnesecchi, Supercalcolatore, in Enciclopedia delle scienze fisiche, VI, Roma 1995, pp. 1-2.