martedì 6 marzo 2012

La musica che verrà

Nel marzo del 1996 Garry Kasparov accettò di giocare un match a scacchi contro il
supercomputer IBM Deep Blue. Kasparov vinse.

Sorte diversa tocco a Kasparov nella rivincita di Deep Blue l’anno dopo. Kasparov perse contro il supercomputer. Ma non è questa la cosa importante, e nemmeno le voci di una partita combinata per fare propaganda all’IBM. Quello che è interessante è che per la prima volta un supercomputer è salito alla ribalta delle cronache e la gente comune ha imparato questo nuovo termine: “supercomputer”.

Oggi! Giappone contro Cina contro USA.
E’ una guerra!
Una guerra che però non si combatte con missili intercontinentali, ma a colpi di “petaflops”.
K contro TienHe contro Jaguar di Cray. Questi sono i tre supercomputer più potenti al mondo. I tre supercomputer che si contendono il primato del supercalcolo.
Calcolo massivamente parallelo, un’orchestra composta da centinaia di migliaia di elementi che però fatica a trovare una musica giusta da suonare. E sì, perché il problema di queste grandi macchine non è l’hardware, ma il software. In pochi oggi sono in grado di scrivere software veramente efficienti che sfruttino al massimo le potenzialità di questi calcolatori.
Nelle accademie non ci si prepara adeguatamente in questo campo e oggi c’è una grande richiesta di programmatori in grado di comprendere a fondo e di utilizzare al meglio le architetture ed i paradigmi del calcolo massivamente parallelo.

Diverse tecnologie oggi ci vengono in aiuto per introdurci in questo mondo parallelo.
Tecnologie come OpenCL e come CUDA (NVIDIA) che fanno assaporare sui nostri piccoli computer domestici le brezza del supercalcolo utilizzando i “many-core” delle GPU per eseguire calcoli numericamente impegnativi in maniera massivamente parallela.
Quello che viene richiesto a noi programmatori é di cambiare modo di pensare. In maniera artificiosa, siamo stati abituati in questi 40 anni a pensare in maniera “seriale”, anche se tutto quello che ci circonda ed il nostro stesso cervello funziona in maniera parallela.

Semplicemente non dobbiamo sforzarci di imparare un nuovo astruso paradigma di programmazione, ma dobbiamo riappropriarci del nostro modo naturale di pensare ed iniziare a comporre la musica giusta per queste nuove grandi macchine.

Nessun commento:

Posta un commento