OpenCL
OpenCL (Open Computing Language) è una libreria basata sul linguaggio di programmazione C99 che può esser eseguito su una molteplicità di piattaforme, CPU, GPU, e altri tipi di processori. In particolare, le potenzialità di OpenCL sono bene espresse con architetture altamente parallelizzabili e potenti come le GPU, e in questo caso cadiamo nell'ambito chiamato GPGPU.
Lo standard è stato originariamente proposto dalla Apple, successivamente ratificato dalla stessa assieme le principali aziende del settore (Intel, NVIDIA, AMD), ed infine portato a compimento dal consorzio no-profit Khronos Group.
Il nome OpenCL è stato pensato in analogia a OpenGL ed OpenAL, in quanto tutti standard industriali aperti, pur con diverse finalità: il primo per sfruttare le potenzialità delle attuali GPU oltre il rendering grafico, e gli altri rispettivamente per la grafica 3D e il rendering audio posizionale.
Allo stato attuale OpenCL è disponibile in versione beta per GPU NVIDIA e ATI su sistemi Linux, Windows e Mac OS X.
Note
Voci correlate
- CAL (ex CTM (Close To Metal)), Framework di AMD per la programmazione delle sue GPU ATI Radeon HD e FireStream. Il modello di programmazione proposto è di tipo streaming, con forti richiami ai linguaggi data oriented. Usa una specializzazione di Brook, denominato Brook+ di ispirazione vettoriale.
- CUDA, framework C proposto da Nvidia per la programmazione di GPU a partire dalla famiglia GeForce G80. Comprende un compilatore per un superset del linguaggio C - NVCC - e una serie di librerie di primitive implementate a vari livelli di complessità. Comprende un nutrito insieme di esempi applicativi e un ambiente di emulazione e debug. Compatibile con MSVC 2005 (piattforma Windows XP), GCC (piattaforme Linux e OSX).
- Intel Larrabee