Accelerazione via GPU, a che punto siamo?

Accelerazione via GPU, a che punto siamo?

Un sistema dotato di GPU dedicata non consente di avere benefici solo in ambito videoludico. Se da un lato le applicazioni commerciali capaci di sfruttare questo componente scarseggiano sul mercato, i futuri browser saranno però in grado di andare ad impiegare tale potenza di calcolo. Ecco come

di pubblicato il nel canale Web
 

Introduzione

Quando si parla di accelerazione via GPU si intende un concetto piuttosto semplice: la possibilità di velocizzare l'esecuzione di alcune operazioni grazie all'impiego del processore originariamente destinato ai calcoli grafici, sgravando di fatto la CPU.

Questo perchè avviene? Come abbiamo detto a più riprese, occupandoci spesso di schede video, l'architettura che caratterizza le GPU è, per sua natura, estremamente parallelizzata. Questo particolare rende il componente particolarmente indicato sia per calcoli relativi alla grafica (compiti per cui è nata) sia per computazioni particolarmente intense: quest'ultimo motivo ha dato vita alla nascita di quello che viene generalmente identificato dal temine GPGPU (General Purpose GPU) e che prevede l'applicazione della scheda grafica dedicata come unità di calcolo per compiti che esulano dal "semplice" calcolo grafico.


Il grafico evidenzia la crescita prestazionale, in termini di GFLOPS, delle CPU e delle GPU

In questo scenario sia NVIDIA sia AMD si sono dedicate a lavorare in modo proattivo con le software house: se da un lato le potenzialità che le GPU sono in grado di garantire così come i vantaggi che permettono di godere in determinati scenari sonon assodati, lo sviluppo di software capaci di supportare in modo corretto questi componenti è fondamentale perchè l'utente ne possa giovare direttamente.

Quando si parla di GPU Computing, termine con cui si identifica l'ambito di utilizzo dei chip grafici per calcoli, merita di essere citato CUDA. NVIDIA si è da tempo dedicata allo sviluppo di una serie di librerie che consentono di andare ad utilizzare la potenza di calcolo della scheda grafica dedicata senza dover ricorrere ad una ricompilazione per intero del software. CUDA ha per ora trovato molteplici applicazioni in ambito scientifico: sono molti i centri di ricerca che si sono appoggiate a CUDA per lo sviluppo dei propri progetti e sono diverse le applicazioni in ambito professionale (dal rendering grafico a impieghi medicali) che fanno ora uso di CUDA. Tra gli ultimi annunci ricordiamo quello di cui abbiamo parlato in questa notizia, con Autodesk 3ds Max 2011 che ha annunciato il supporto all'accelerazione via GPU.

Oggi però vogliamo provare a fare il punto sull'accelerazione video e analizzare quali benefici questo elemento potrà comportare all'utente finale nei prossimi periodi: se, come abbiamo osservato a diverse riprese, CUDA e in generale l'impiego della GPU per accelerare i processi ha trovato terreno fertile nel segmento professionale, stenta a decollare sul mercato puramente consumer.

Il motivo principale è legato all'assenza di applicazioni che siano state sviluppate in modo da trarre pieno vantaggio dalla GPU: se si fa eccezione per l'ultima Creative Suite di Adobe, che ha ora raggiunto la versione 5, troviamo solo applicativi minori e sviluppati per scenari di impiego particolarmente verticali.

Negli ultimi anni qualche passo in avanti è stato fatto, anche se con estrema cautela e conseguente estrema lentezza: nell'ultima versione del sistema operativo di casa Microsoft, Windows 7, la GPU viene impiegata per gestire gli effetti grafici dell'interfaccia, oltre a venire chiamata in causa da Windows Media Player per decodificare eventuali flussi video.

Sino ad ora ci siamo limitati a descrivere quello che è lo stato attuale dell'accelerazione video, le sue applicazioni e i suoi limiti. Ma quali prospettive di sviluppo si intravedono in un prossimo futuro? Andiamo avanti per parlarne meglio.

 
^