Il Khronos Group ha annunciato di aver finalizzato le specifiche OpenCL 2.0, evoluzione dello standard aperto e royalty-free (inizialmente progettato da Apple che poi l’ha reso uno standard libero) che semplifica la programmazione in parallelo e cross-platform, sfruttando la potenza di calcolo delle moderne GPU.
Tra le peculiarità delle release 2.0, il supporto a tecnologie per la gestione della memoria condivisa, il parallelismo “multilivellare” (detto anche “nidificato”) indirizzamento generico dello spazio di memoria, supporto alla scrittura d’immagini sRGB e 3D, supporto insiemi atomic, pipe e molto altro. L’annuncio arriva a una sola settimana di distanza dall’annuncio della tecnologia CUDA 6 da parte di NVIDIA, piattaforma di elaborazione e programmazione in parallelo che offre funzionalità simili. OpenCL è in teoria supportata anche da NVIDIA (oltre che ovviamente anche da Apple, AMD, Intel e altre società) ma in passato la società è stata accusata di mettere il bastone tra le ruote, spingendo per l’adozione della tecnologia di sua creazione.
Con la tecnologia OpenCL (acronimo di Open Computing Language) gli sviluppatori possono sfruttare appieno la potenza di calcolo delle GPU per applicazioni esigenti come i moderni videogame, la modellazione 3D, operazioni finanziarie complesse. Gli sviluppatori possono ottenere miglioramenti in termini di velocità in software di ogni tipo. Apple e Intel mettono a disposizione dei programmatori ambienti di sviluppo e tool per ottimizzare il codice senza doverlo riscrivere completamente, ricompilando in OpenCL C (una variante del C) le parti che richiedono miglioramento in termini di prestazioni.