Cinquant'anni di storia informatica Conta la storia per predire il futuro? di Luigi Dadda Necessariamente conta perché in ogni caso noi lavoriamo sull'eredità, anche tecnologica, del passato, anche lontano. Non nel senso di mantenerla immutata, bensì per poterla migliorare od adattare. Abbiamo ereditato da Babbage e da von Neumann il concetto di macchina da calcolo programmabile, dove vige una rigorosa sequenzialità nella esecuzione delle istruzioni. Ma abbiamo, nei passati decenni, ragionato e sperimentato su architetture nuove che, pur conservando la sostanza di tale concetto, hanno generato macchine nelle quali più istruzioni sono eseguite in parallelo. Da macchine nelle quali la parte hardware deve essere valevole per tutti i problemi, siamo passati a macchine nelle quali la parte del software è invece realizzata come hardware per ragioni di velocità. Abbiamo sperimentato macchine che, anziché essere governate dalla rigida sequenza delle istruzioni (instruction driven) sono invece governate dal flusso dei dati (data driven). L'esperienza ha di certo confermato il concetto ereditato, ma lo ha modificato all'occorrenza e, talvolta, abbandonato. A seguito del medesimo problema abbiamo inoltre imparato a fare funzionare insieme più unità di calcolo, anche di origine e di "lingua madre" (codice di macchina) diverse, per poter costruire una rete globale di calcolatori capaci di interagire con efficacia, costruendo un nuovo medium con Internet. Con le successive generazioni di computer abbiamo raggiunto il risultato di mettere un computer in ogni posto di lavoro ed in casa, con potenze di calcolo e di comunicazione crescenti. Con una nuova generazione di reti stiamo creando, con i Grids, la possibilità di distribuire non solo informazione ma anche potenza di calcolo nella misura richiesta. (Così come abbiamo precedentemente creato con le reti di potenza elettrica, o "power Grids", la capacità di distribuire potenza fisica nella misura richiesta da ciascuno). Un'importante serie di problemi si pone oggi nella fascia alta delle macchine: i supercomputers. La storia dice che circa 30 anni fa si individuarono una diecina di grandi sfide scientifiche, cioè classi di problemi che non si potevano risolvere con le macchine allora disponibili, e che sarebbero invece stati risolti con macchine molto più potenti. Le macchine di allora offrivano una potenza di calcolo di poche diecine di megaflops (1 megaflop = 106 flops o floating point operations per second). La sfida indicò come necessari una potenza dell'ordine di un teraflops (1012 flops), centomila volte più potente. Ci si poneva obbiettivi ambiziosi in vari campi: nella fluidodinamica con la costruzione di gallerie del vento per una più efficiente progettazione degli aerei, nella biologia, nella fisica, nell'astronomia, ecc. La sfida fu vinta poco prima del 2000, in quello stesso anno la IBM installò un supercomputer da 10 teraflops. Pochi mesi dopo la giapponese NEC installava a Yokohama un supercomputer da 36 teraflops, per uno scopo molto preciso e mai fino ad allora sollevato: la creazione di un modello matematico della terra, di enorme importanza per affrontare i numerosi problemi globali che erano emersi nel corso del tempo. Il supercomputer NEC fu vissuto dagli USA come una sfida alla quale il Department of Energy rispose con l'ordinazione alla IBM (l'unica società americana rimasta attiva nel campo) di due macchine: la prima, da installarsi entro il 2004, di 100 teraflops, la seconda, chiamata Blue-Gene e da installarsi entro il 2005, da 360 teraflops. Tali dati sono stati poi corretti in 75 teraflops per la prima macchina ed in 1 petaflops (cioè mille teraflops) per il Blue-Gene. Pochi mesi fa è stato annunciato sulla stampa che un sistema Blue-Gene sarà installato a Milano, presso l'Ospedale San Raffaele, per essere destinato a ricerche di biologia. Si deve innanzitutto osservare che, al di là della sfida Giappone-Usa, la nuova specie di supercomputer appare necessaria per la soluzione di problemi scientifici reali. La realizzazione di tali macchine richiama alla memoria una situazione, simile sotto certi aspetti, avvenuta nel caso della realizzazione dei grandi acceleratori di particelle, realizzati in pochi esemplari ad opera di grandi organismi. È noto che lo "hadron collider" del CERN di Ginevra è l'unico al mondo nel suo genere. La stessa osservazione può essere fatta a proposito degli osservatori spaziali L"Hubble", l'unico finora lanciato, lavora incessantemente esplorando l'universo in base a programmi controllati da terra ed invia un vero fiume di dati che hanno esteso enormemente le nostre conoscenze sull'universo. Sorgono spontanee due domande: come deve essere visto il "metodo scientifico" che, da Galileo in qua, ci ha permesso di scoprire le leggi del creato come mai prima si era potuto fare? Come devono oggi essere viste le due fasi di tale metodo, cioè la formulazione e lo studio del modello logico-matematico e l'esperimento che interroga la natura sulla base di domande emerse dal modello? Sulla base degli esempi prima descritti si può certamente dire che gli strumenti necessari sono tra le più grandi opere dell'ingegneria che mai siano state realizzate e che la mole dei dati sperimentali da essi generata non può più essere studiata direttamente dall'uomo. Sono necessari potenti supercomputers, anche per la visualizzazione dei risultati. Se poi si considerano i modelli logico-matematici necessari per rappresentare sinteticamente ed efficacemente le nostre conoscenze sul creato, troviamo che essi hanno raggiunto livelli di complessità tali da rendere praticamente impossibile all'uomo un loro studio diretto. Un computer permette un modo del tutto nuovo per l'esame del modello: esso permette di "simulare" la parte del creato rappresentata dal modello, creando di tale parte (atomo, molecola, cellula vivente, globo terrestre, universo intero) una "realtà virtuale" che ci permetterà più facilmente l'individuazione di esperimenti nuovi per approfondire la conoscenza del creato tramite l'affinamento continuo del modello (che ne rappresenta la conoscenza che noi già abbiamo di esso). I modelli del creato che noi abbiamo già costruito risultano enormemente complessi (esempi: il modello standard dell'atomo, il modello della molecola tramite le leggi della meccanica quantistica, il modello della cellula, il modello dell'intero globo terrestre, il modello dell'universo). Non abbiamo altro modo, per interrogare i modelli, che rappresentarli in un supercomputer. In aggiunta a questo, conserviamo i dati delle esperienze reali perché pensiamo che nel futuro possa essere utile correlare tra loro dati esperimenti diversi, per possibili nuove scoperte. Abbiamo i mezzi per memorizzare tali dati anche quando essi si misurano in petabytes (mille terabytes). Possiamo dunque affermare che è stato modificato il classico, galileiano, "metodo scientifico"? In linea di principio la risposta è no. Ma in linea concreta è si, in quanto senza i supercomputers sarebbe semplicemente impossibile, in molti casi, compiere progressi nella conoscenza del creato. Siamo oggi nella fase che può dirsi delle "scienze computazionali". Sta crescendo la Chimica computazionale e le nuove molecole verranno progettate a computer. Si sviluppa la Biologia informatica, o Bioinformatica, ove le elaborazioni sul Genoma genereranno nuove conoscenze e potranno sintetizzarsi nuove proteine. La meteorologia computazionale potrà compiere migliori previsioni e potranno essere studiati quantitativamente gli effetti delle polluzioni sui cambiamenti climatici. Quanto or ora detto può generare l'illusione che la pura e semplice disponibilità di potenza di calcolo sia la causa prima di tali previsti progressi. Così non è, perché i calcolatori potranno fornire i risultati desiderati solo se opportunamente programmati, come sempre è avvenuto. Questo implica lo sviluppo di modelli teorici adeguati. Non si ricavano risultati validi con la sola forza bruta dei calcolatori, ma ci devono essere alla base idee scientificamente corrette. Con altre parole: il calcolatore non esime dalla conoscenza delle matematiche e dalla investigazione su nuovi metodi matematici anzi, li esige. L'aggettivo "computazionale" prevedibilmente finirà col cadere, perché diverrà pleonastico. C'è già un esempio: la Fisica non è mai stata detta computazionale, per il semplice motivo che lo è sempre stata. Un progetto ambizioso che fa meditare È quello elaborato da un "panel" di esperti designati dalla National Science Foundation americana, con il titolo: Revolutionalizing Science and Engineering Trongh Cyberinfrasctructure: Vi si trova un Esecutive Summary, il Report e le Appendici tecniche. Se ne riportano qui, in libera traduzione le affermazioni più importanti. Stiamo entrando in una nuova era della ricerca scientifica ed ingegneristica per effetto del continuo progresso nelle capacità di calcolo e di elaborazione, nelle tecnologie della comunicazione, spinti dalla crescente complessità, vastità degli obiettivi e dalla complessità delle attuali sfide scientifiche ed ingegneristiche. La capacità della tecnologia dell'informazione ha superato le soglie che rendono possibile una "ciberinfrastruttura"con la quale possono essere costruiti nuovi tipi di ambienti ed organizzazioni per la scienza e per l'ingegneria, che renderanno possibile perseguire la ricerca in modi nuovi e con efficacia crescente. Tali ambienti ed organizzazioni, resi possibili dalla ciberinfrastruttura, sono richiesti con sempre maggiore urgenza per affrontare le priorità nazionali e globali, come la comprensione dei cambiamenti climatici globali, la protezione del nostro ambiente naturale, per rafforzare la sicurezza nazionale, per l'applicazione della genomica-proteomica alla salute, per dominare il mondo delle nanotecnologie, per la previsione dei disastri naturali ed umani e la protezione nei loro riguardi, come pure per affrontare alcuni quesiti intellettualmente fondamentali come la formazione ed evoluzione dell'universo e la comprensione della natura della materia. La raccomandazione fondamentale del Panel è che la National Science Foundation promuova e guidi la creazione di un'Advanced Cyberinfrastructure Program (ACP) su larga scala, che comprenda tutti gli Enti interessati e che sia anche internazionalmente coordinata. Tale struttura deve potenziare tutta la ricerca scientifica ed ingegneristica come pure le attività di formazione. Il Panel stima che sia necessario un finanziamento da parte della National Science Foundation dell'ordine di un miliardo di dollari ogni anno. Per poter raggiungere una massa critica e per stimolare il co-investimento coordinato di altre agenzie federali, delle università, dell'industria e dei finanziamenti internazionali necessari per una effettiva rivoluzione. Il costo di interventi non sufficientemente rapidi o a livello sub-critico potrà essere alto. Sia per le opportunità perse sia per l'accresciuta frammentazione e balcanizzazione delle comunità di ricerca. Il Rapporto esamina anche, e accuratamente, le conseguenze sulla formazione, indicando la necessità di una cultura pluridisciplinare. La Ciberinfrastruttura sarà utilizzata anche per l'insegnamento. Si rimanda il lettore al Rapporto per gli approfondimenti desiderati. Se ora scendiamo dall'Olimpo della Scienza a quello della vita dell'uomo, qual è stato e quale sarà l'impatto dell'informatica o più in generale della tecnologia dell'informazione? Due tecnologie sono qui dominanti: Internet e i sistemi embedded. Non è qui il caso di discuterle a fondo, ci si limiterà a ricordare gli aspetti più rilevanti della loro evoluzione. Internet non sarà sostituito dalle Grids già sorte, per molte discipline, anche in Europa. Esso manterrà il ruolo iniziale di diffondere capillarmente l'informazione e permettere i collegamenti interpersonali a livello globale. La sua principale evoluzione sarà presumibilmente verso un "Web semantico" che permetta una ricerca dell'informazione concernente un tema liberamente scelto. Ciò potrà avvenire con il linguaggio di marcatura XML (si ricorda che l'esistente linguaggio HTML permette di controllare solo la presentazione tipografica ed in modo eccellente!). Il linguaggio XML permette invece una marcatura mirata alla semantica del testo, con "etichette" scelte opportunamente dall'autore. I sistemi embedded permettono il controllo delle funzioni di qualsiasi oggetto o macchina, con ciò permettendo una nuova rivoluzione nel progetto di qualsiasi prodotto industriale. È anche possibile il collegamento dei sistemi embedded tramite Internet con importanti applicazioni, ad esempio in campo medico. Lo stato attuale delle applicazioni scientifiche delle reti e dei supercomputer é rappresentato dalle Grids cui si è accennato precedentemente a proposito delle scienze computazionali. È significativo osservare che in USA si sta completando la rete "Teragrid" che può essere considerata già un buon passo verso la "Ciberinfrastruttura", poiché ottiene di porsi come strumento per tutte le Grids e permette di realizzare facilmente nuove Grids, ammettendone l'accesso da qualsiasi località. Ciò è di grande importanza per la ricerca, ma anche per l'insegnamento. È auspicabile che anche l'Europa adotti lo schema, soprattutto per poter cooperare su base internazionale più vasta. (Ndr: ripreso da Media Duemila di dicembre 2004/gennaio 2005) |