Supporto a OpenCL: la posizione di NVIDIA

Supporto a OpenCL: la posizione di NVIDIA

NVIDIA vede positivamente l'introduzione OpenCL, che permetterà di supportare un maggior numero di applicazioni GPGPU

di pubblicata il , alle 10:53 nel canale Schede Video
NVIDIA
 

Il sito web TechReport ha avuto modo di pubblicare una interessante intervista condotta con Manju Hedge, responsabile del progetto NVIDIA CUDA per il colosso californiano. L'intervista ha permesso di fare luce sulla strategia che NVIDIA percorrerà per offrire all'interno delle proprie soluzioni, il supporto a OpenCL.

Innanzitutto, secondo quanto emerso dalle dichiarazioni di Hedge, NVIDIA non considera OpenCL come un possibile antgonista di CUDA. L'azienda californiana, al contrario, guarda positivamente al nuovo standard: l'inserimento del supporto a OpenCL, infatti, si tradurrà immediatamente nella possibilità di supportare applicazioni GPGPU sviluppate con quel linguaggio di programmazione e di estendere così il parco di applicazioni potenzialmente eseguibili tramite le GPU NVIDIA. Un maggior numero di applicazioni supportate, pertanto, significa una maggiore appetibilità sul mercato delle schede, con conseguente possibilità per NVIDIA di stimolare la domanda per le proprie soluzioni, sia nei confronti dell'utente finale, sia nei confronti dei costruttori.

Al di là delle considerazioni di mercato, gli elementi più interessanti riguardano le tempistiche con le quali NVIDIA introdurrà il supporto ad OpenCL. Secondo le informazioni disponibili, a partire dal primo trimestre del prossimo anno il supporto sarà disponibile in fase di beta, per poi proporre la piena implementazione il trimestre successivo.

Hedge ha poi voluto puntualizzare come OpenCL sia un ambiente di sviluppo che consente al programmatore il pieno accesso alle risorse hardware, in modo che possa gestire direttamente la gestione di memoria, l'inizializzazione di periferiche e via discorrendo. La differenza con CUDA, in questo caso, è piuttosto importante: quest'ultimo infatti si configura più come un linguaggio di programmazione ad alto livello, grossomodo confrontabile con il linguaggio C.

18 Commenti
Gli autori dei commenti, e non la redazione, sono responsabili dei contenuti da loro inseriti - info
!fazz12 Dicembre 2008, 10:55 #1
ovviamente visto che è il principale fornitore di gpu per apple
demon7712 Dicembre 2008, 10:59 #2
Non sono programmatore quindi capisco solo grossolanamente la differenza tra openCL e CUDA...
Quello che non mi è del tutto chiaro.. se sono diversi sono anche "incompatibili": o usi cuda o usi openCL no??

Alla fine CUDA essendo Nvidia only andtà necessariamente a morire o (come spero) a venire assorbito in un sistema più ampio che usi tutte le GPU e non solo le nvidia..
!fazz12 Dicembre 2008, 11:02 #3
Originariamente inviato da: demon77
Non sono programmatore quindi capisco solo grossolanamente la differenza tra openCL e CUDA...
Quello che non mi è del tutto chiaro.. se sono diversi sono anche "incompatibili": o usi cuda o usi openCL no??

Alla fine CUDA essendo Nvidia only andtà necessariamente a morire o (come spero) a venire assorbito in un sistema più ampio che usi tutte le GPU e non solo le nvidia..


Se non sbaglio opecl è un layer sopra ai vari cuda, brook cal ecc ecc

penso che alla fine o implementeranno direttamente il gpgpu all'interno di opecl o più probabilmente creeranno delle routine di conversione opencl--> cuda, brook ecc ecc
qboy12 Dicembre 2008, 11:13 #4
"Al di là delle considerazioni di mercato, gli elementi più interessanti riguardano le tempistiche con le quali NVIDIA introdurrà il supporto ad OpenCL. Secondo le informazioni disponibili, a partire dal primo trimestre del prossimo...£
del prossimo cosa? anno? mese? decenio? non si capisce la data
lowenz12 Dicembre 2008, 11:21 #5
Nell'articolo dice che è un layer SOTTO non sopra

"OpenCL sia un ambiente di sviluppo che consente al programmatore il pieno accesso alle risorse hardware, in modo che possa gestire direttamente la gestione di memoria, l'inizializzazione di periferiche e via discorrendo."
!fazz12 Dicembre 2008, 11:21 #6
Originariamente inviato da: qboy
"Al di là delle considerazioni di mercato, gli elementi più interessanti riguardano le tempistiche con le quali NVIDIA introdurrà il supporto ad OpenCL. Secondo le informazioni disponibili, a partire dal primo trimestre del prossimo...£
del prossimo cosa? anno? mese? decenio? non si capisce la data


anno prossimo visto che nel 2009 è previsto snow leopard
deglia12 Dicembre 2008, 11:23 #7
scusa...ma xchè vuoi la morte di CUDA?ok va solo sulle nvidia,è ottimizzato x quelle schede,quindi se resta in ambito professionale/ricerche che ti frega?in fondo è quello il settore (x ora) dove nvidia punta maggiormente con tesla ecc ecc.
Kuarl12 Dicembre 2008, 11:30 #8
cuda in realtà permette due stili di programmazione, uno molto simile a opencl, che poggia sui driver della gpu, e l'altro che poggia sul sistema operativo. Entrambi hanno vantaggi e svantaggi, credo anche io comunque che opencl sarà per cuda (ma anche per ati stream) solo un binding di codice già esistente.
ElBizio12 Dicembre 2008, 11:34 #9

cit demon77: Non sono programmatore quindi capisco solo grossolanamente la differenza tra openCL e CUDA...
Quello che non mi è del tutto chiaro.. se sono diversi sono anche "incompatibili": o usi cuda o usi openCL no??


ciao,

in maniera grossolana le differenze tra linguaggi di programmazione di alto e basso livello è questa:

in un linguaggio di alto livello dici alla "macchina" cosa deve fare (leggi qua, scrivi questo ecc.....), ma la tua istruzione (di lettura o scrittura in questo esempio) non è immediata, il tuo prgramma è uno strato software che interagisce più in basso con un altro strato software, il s.o., che esegue le tue istruzioni al momento che ritiene "più opportuno". Lo stesso s.o. poi, deve interagire ancora più in basso con un altro strato software, il firmware del dispositivo che fisicamente effettuerà la tua istruzione (il motore e la testina del disco rigido ad esempio)

sostanzialmente più il linguaggio di programmazione è ad alto liello più è "capibile" dall'uomo,
più è di basso livello più si avvicina al dispositivo hw

spero di essere stato semplice e chiaro


detto questo, è assolutamente normale e, come avrai capito, necessario che vari linguaggi di programmazione interagiscano tra loro, ogni linguaggio è buono per svolgere particolari compiti e assolutamente incapace di svolgerne di altri

ciao

demon7712 Dicembre 2008, 11:38 #10
Originariamente inviato da: deglia
scusa...ma xchè vuoi la morte di CUDA?ok va solo sulle nvidia,è ottimizzato x quelle schede,quindi se resta in ambito professionale/ricerche che ti frega?in fondo è quello il settore (x ora) dove nvidia punta maggiormente con tesla ecc ecc.


Dici a me?
No non voglio la morte di cuda.. dico solo che se viene delineato un sistema standard (cosa per cui faccio un tifo enorme) è fisiologico che cuda essendo proprietario e valido solo per nvidia venga accantonato..
Chiaro che però con "accantonato" non intendo "buttato via" ma assorbito nel sistema standard al fine di renderlo migliore!

Devi effettuare il login per poter commentare
Se non sei ancora registrato, puoi farlo attraverso questo form.
Se sei già registrato e loggato nel sito, puoi inserire il tuo commento.
Si tenga presente quanto letto nel regolamento, nel rispetto del "quieto vivere".

La discussione è consultabile anche qui, sul forum.
 
^