OpenCL™ (Open Computing Language) è un’API di basso livello per l’elaborazione eterogenea eseguita sulla base dell'architettura CUDA. Grazie a OpenCL, gli sviluppatori possono creare kernel di calcolo usando un linguaggio di programmazione simile al C e sfruttare al massimo l’enorme potenza di elaborazione in parallelo delle GPU NVIDIA per realizzare applicazioni di computing davvero sbalorditive. La costante maturazione dello standard OpenCL e il suo supporto sui processori di altri vendor sono favoriti dalla costante offerta di driver, strumenti e risorse di formazione da parte di NVIDIA.
In collaborazione con NVIDIA, OpenCL è stato sottoposto a Khronos da Apple nell'estate del 2008 con l'obiettivo di creare un ambiente cross-platform per l'elaborazione generale su GPU. NVIDIA ha presieduto il gruppo di lavoro che si è occupato della definizione dello standard OpenCL sin dalla sua nascita e ha distribuito la prima implementazione su GPU di OpenCL conforme per Windows e Linux nel giugno del 2009. |
 |
NVIDIA offre supporto per OpenCL nei driver di produzione per utenti finali sin da ottobre 2009. Al momento l'azienda supporta OpenCL su tutti gli oltre 250.000.000 di GPU con architettura CUDA distribuiti a partire dal 2006.
Risorse per sviluppatori OpenCL:
Disponibilità di driver ed esempi di codice per OpenCL v1.1 (Giugno 2010)
I driver di pre-release di OpenCL v1.1 e i campioni di codice dell’SDK sono disponibili a tutti gli sviluppatori registrati di GPU Computing. Effettuare il login o richiedere un account per scaricare OpenCL v1.1 oggi stesso.
|
Risorse per sviluppatori OpenCL:
| Sessioni della edizione 2010 della GPU Technology Conference:
|
NVIDIA supporta entusiasticamente tutti i linguaggi e le API che consentono agli sviluppatori di accedere alla potenza di elaborazione in parallelo delle GPU. NVIDIA vanta una lunga tradizione di supporto e sostegno agli standard, dato che per l'azienda una scelta più ampia di linguaggi non può che favorire il numero e l'ambito di applicazioni in grado di sfruttare il computing in parallelo sulla GPU. Grazie al supporto di C/C++ e Fortran e ad API quali quelle per OpenCL e Microsoft DirectX Compute, già disponibili, il GPU Computing è già diventato mainstream. NVIDIA è la sola azienda produttrice di processori a offrire una simile ricchezza di linguaggi aperti e standard per le proprie GPU.
NVIDIA è leader del settore nel supporto di OpenCL:
2010
Novembre - NVIDIA rilascia un aggiornamento di Visual Profiler e il nuovo supporto di cuda-memcheck per le applicazioni OpenCL
Luglio – Il
Khronos Group certifica NVIDIA OpenCL 1.1 come prima implementazione conforme dell’intero settore
Giugno – NVIDIA rilascia un aggiornamento del Visual Profiler e nuovi esempi di codice SDK per gli sviluppatori di OpenCL
Giugno – NVIDIA distribuisce a migliaia di sviluppatori la release R256 OpenCL 1.1, candidata alla certificazione della conformità
Marzo – NVIDIA rilascia Visual Profiler 3.0 con supporto integrato per le applicazioni OpenCL e CUDA C/C++ su GPU con architettura Fermi
Marzo – NVIDIA rilascia driver R195 aggiornati con l'ICD approvato da Khronos, che permette alle applicazioni di usare le GPU NVIDIA OpenCL e altri processori simultaneamente
Gennaio – NVIDIA rilascia driver R195 aggiornati che supportano le estensioni di OpenCL richieste dagli sviluppatori per il buffer sharing e il loop unrolling di Direct3D9/10/11
Gennaio – Khronos ratifica la specifica ICD, preparata da NVIDIA, che permette alle applicazioni di utilizzare contemporaneamente più implementazioni di OpenCL
2009
Novembre – NVIDIA rilascia i driver R195 che supportano le caratteristiche opzionali della specifica OpenCL v1.0 quali le operazioni matematiche in doppia precisione e la condivisione del buffer di OpenGL
Ottobre – NVIDIA presenta la GPU Technology Conference, che offre corsi di formazione per OpenCL a più di 500 sviluppatori
Settembre – NVIDIA completa la formazione per OpenCL di oltre 1000 sviluppatori per mezzo di webinar gratuiti
Settembre – NVIDIA inizia a distribuire supporto conforme a OpenCL 1.0 in tutti i pacchetti di driver (pubblici) per utenti finali di Windows e Linux
Settembre - NVIDIA rilascia OpenCL Visual Profiler, il primo strumento di profilazione delle prestazioni hardware del settore per le applicazioni OpenCL
Luglio – NVIDIA presenta i primi webinar per sviluppatori: “Introduzione al GPU Computing e a OpenCL” e “Best Practice per la programmazione avanzata su OpenCL”
Luglio – NVIDIA rilascia la
Guida alle Best Practice di NVIDIA OpenCL, che presenta numerose tecniche di ottimizzazione e linee guida per ottenere risultati rapidi e accurati con OpenCL
Luglio – NVIDIA contribuisce codice sorgente e specifiche per un ICD (Installable Client Driver) al gruppo di lavoro su OpenCL di Khronos, con l'obiettivo di permettere alle applicazioni di utilizzare più implementazioni di OpenCL contemporaneamente sulle GPU, CPU e altri tipi di processore
Giugno – NVIDIA rilascia i primi driver conformi a OpenCL 1.0 del settore e un SDK per sviluppatori
Aprile – NVIDIA rilascia i primi driver per GPU OpenCL 1.0 per Windows e Linux, accompagnati dalla Guida alla programmazione di NVIDIA OpenCL (oltre 100 pagine), a una Guida introduttiva di OpenCL che mostra agli sviluppatori come eseguire il porting di codice esistente da CUDA C a OpenCL, e i forum per sviluppatori di OpenCL
2008
Dicembre – NVIDIA mostra al mondo
la prima dimostrazione di GPU OpenCL, eseguendo una GPU per laptop NVIDIA durante il SIGGRAPH Asia
Giugno – Apple inoltra una proposta di OpenCL al Khronos Group; NVIDIA si offre volontaria per presiedere il gruppo di lavoro OpenCL
2007
Dicembre – NVIDIA lancia Tesla e si aggiudica il premio di eccellenza tecnica del PC Magazine
Giugno – NVIDIA lancia Tesla C870, la prima GPU progettata per il computing a elevate prestazioni (HPC)
Maggio - NVIDIA rilascia le prime GPU ad architettura CUDA in grado di eseguire OpenCL su laptop e workstation
2006
Novembre - NVIDIA rilascia la prima GPU ad architettura CUDA in grado di eseguire OpenCL
OpenCL è un marchio di Apple Inc. usato su licenza di Khronos.