Il Khronos Group ha ratificato un update per le specifiche OpenCL 1.2 (Open Computing Language) standard originariamente proposto da Apple, in seguito adottato da Intel, NVIDIA e AMD e ora parte del consorzio no-profit. Le nuove estensioni abilitano funzionalità che consentono di migliorare le performance e aumentare la sicurezza nell’uso, ad esempio, delle funzionalità WebGL dal browser (tecnologia che rende possibile lo sfruttamento dell’accelerazione hardware 3D direttamente dalle pagine web). Le estensioni in questione non sono indispensabili ma saranno probabilmente fondamentali in future release delle specifiche. Tra le società che hanno annunciato l’endorsement: ARM, PowerVR e Vivante, tre società specializzate nel designer di processori per dispositivi mobile.
Le unitaÌ di calcolo grafico (GPU) presenti sulle schede video di ultima generazione riescono a eseguire compiti con velocitaÌ superiori al trilione di operazioni al secondo (le GPU piùÌ veloci sono in grado di superare il teraflop) e possono essere sfruttate per fare molto piùÌ che disegnare semplici immagini. Con la tecnologia OpenCL (Open Computing Language) gli sviluppatori possono sfruttare appieno questa potenza di calcolo e utilizzarla per applicazioni esigenti come i moderni videogame e la modellazione 3D. Gli sviluppatori che sfruttano OpenCL possono ottenere miglioramenti in termini di velocità in software di ogni tipo. Apple mette a disposizione dei programmatori le versioni del proprio ambiente di sviluppo e tool che consentono di riadattare il codice senza doverlo riscrivere completamente; dovranno soltanto ricompilare in OpenCL C (in sostanza una variante del C) le parti che richiedono prestazioni maggiori.
A mettere il bastone tra le ruote a OpenCL NVIDIA, la quale, nonostante l’appoggio, spinge gli sviluppatori verso una tecnologia di sua ideazione denominata CUDA. Come abbiamo riportato qui, nonostante inizialmente abbia accettato di far parte del team che cura lo sviluppo di OpenCL, il supporto è arrivato sempre con ritardo e driver specifici sono stati rilasciati un anno dopo rispetto ad AMD. Come se non bastasse, NVIDIA ha rimosso dal proprio sito web la documentazione e i tutorial dedicati allo sviluppo di OpenCL e si dice abbia fatto pressione presso alcuni sviluppatori per impedirne lo sfruttamento in vari software. La situazione è divenuta intollerabile, tanto che a settembre di quest’anno lo sviluppatore Vincent Hindriksen ha lanciato una petizione chiedendo il ritorno dell’SDK e dei tutorial per OpenCL sul sito NVIDIA. La posta in gioco per il produttore è alta: se gli sviluppatori scelgono CUDA si limita l’utilizzo di software ottimizzati alle schede video di sua proprietà; OpenCL, al contrario, è supportata da Apple, Intel, AMD, ARM.
[A cura di Mauro Notarianni]