Conclusioni

CUDA, il nuovo linguaggio di programmazione per le GPU Nvidia, promette grandi risultati e mostra le schede video sotto una nuova luce. Cerchiamo di capire un po' di più cosa ci riserva CUDA.

Avatar di Andrea Ferrario

a cura di Andrea Ferrario

Editor in Chief

Conclusioni

Nvidia ha presentato CUDA assieme alla GeForce 8800. In quei giorni le promesse erano molto attraenti, ma abbiamo aspettato un po' prima di valutare i fatti. Dopo tutto, non era ancora il momento di lanciarsi nel territorio delle GPGPU. Senza un SDK disponibile, non c'era molto di concreto su cui lavorare. Dopo tutto, non è la prima volta che una buona iniziativa, annunciata troppo presto, sfocia nel nulla. Ora, un anno e mezzo dopo l'annuncio, possiamo dire che Nvidia ha mantenuto le promesse.

Oggi con CUDA è possibile sviluppare senza problemi. L'SDK disponibile è nella versione beta 2.0, ed è fruibile per la maggior parte dei sistemi operativi (Windows XP, Vista, Linux 1.1 e Mac OS X), e Nvidia sta dedicando un'intera sezione del suo sito agli sviluppatori.

A livello personale, le impressioni che abbiamo tratto dal primo contatto con CUDA sono molto positive. Anche se siete familiari con l'architettura GPU, è naturale essere un po' preoccupati riguardo alla sua programmazione, e, anche se le API possono sembrare chiare a prima vista, non si può sperare in ottimi risultati al primo colpo.

CUDA è utilizzabile da ogni programmatore che conosce C, a patto che sia disposto a investire un po' di tempo per adattarsi a un nuovo tipo di programmazione.

Cosa manca a Cuda per affermarsi come un'API di successo? In una parola: la portabilità. Sappiamo che il futuro dell'IT naviga ancora verso il parallel computing: tutto, dal software all'hardware, si sta avviando in questa direzione ma al momento, in termini di sviluppo, siamo ancora alla preistoria. Con CUDA, Nvidia sta però proponendo una soluzione per gestire in maniera semplice e veloce molteplici thread, e questo, in futuro, potrebbe tramutarsi in una giocata vincente.

L'azienda afferma che nel mondo sono già presenti 70 milioni di GPU compatibili con CUDA, ma questo non è sufficiente per imporre uno standard. Inoltre, non pensate che la concorrenza stia seduta sugli allori: AMD sta offrendo una propria SDK (Stream Computing) e Intel ha annunciato il suo impegno in questo settore.

Nvidia dovrà quindi accettare la sfida, e anche se CUDA è tecnologicamente un innegabile successo, ora dovrà convincere gli sviluppatori, e non sarà una cosa facile. Tuttavia, giudicando dai recenti annunci, il futuro è promettente.