View Full Version : Da AMD SDK per usare OpenCL anche sulle CPU
Redazione di Hardware Upg
07-08-2009, 08:30
Link alla notizia: http://www.hwupgrade.it/news/cpu/da-amd-sdk-per-usare-opencl-anche-sulle-cpu_29802.html
AMD rilascia la versione beta di un tool di sviluppo per consentire la programmazione OpenCL sfruttando le normali CPU
Click sul link per visualizzare la notizia.
capitan_crasy
07-08-2009, 08:39
Clicca qui... (http://www.youtube.com/watch?v=7PAiCinmP9Y&feature=channel_page)
latilou85
07-08-2009, 08:51
Clicca qui... (http://www.youtube.com/watch?v=7PAiCinmP9Y&feature=channel_page)
resta da vedere quando uscira la versione completa cosa si riuscira a fare sfruttando sia cpu che gpu, se intel e nvidia non fanno accordi mi sa che sara molto dura sta dietro ad amd-ati.
resta da vedere quando uscira la versione completa cosa si riuscira a fare sfruttando sia cpu che gpu, se intel e nvidia non fanno accordi mi sa che sara molto dura sta dietro ad amd-ati.
Il concetto dell'OpenCL è che puoi scrivere una cosa e gira su tutte le piattaforme supportate.
Quindi anche gpu nvidia e se noti dice cpu x86, non cpu amd.
Certamente però nvidia dovrebbe implementare questa funzione anche nel suo sdk.
latilou85
07-08-2009, 09:09
Il concetto dell'OpenCL è che puoi scrivere una cosa e gira su tutte le piattaforme supportate.
Quindi anche gpu nvidia e se noti dice cpu x86, non cpu amd.
Certamente però nvidia dovrebbe implementare questa funzione anche nel suo sdk.
si pero dicono che l'ottimizzazione e per cpu amd, sarebbe da vedere la reale differenza d'utilizzo con cpu intel, magari con un i7.
Clicca qui... (http://www.youtube.com/watch?v=7PAiCinmP9Y&feature=channel_page)
ehm, e chi ce li ha 24 cores? :asd:
Questa idea di AMD è cosa buona e giusta, ora, se vogliono prendere un po' di distanza da Intel e nVidia, devono solo fare in modo di far collaborare CPU e GPU in modo da poterle sfruttare insieme contemporaneamente ed il gioco è fatto.
Anche io condivido questa mossa: AMD e' indietro (almeno per quanto riguarda la diffusione) sia con le CPU che con le GPU, pero' e' attualmente l'unica ad offrire entrambe le piattaforme, ed e' su questo che deve puntare il piu' possibile...
Bluknigth
07-08-2009, 09:30
L'idea è eccezzionale, ma temo che come sempre non sarà supportata a dovere dagli sviluppatori.
Comunque mi pare di capire che anche con processori intel potresti avere dei vantaggi.
In pratica basta avere una scheda video ATI e il tool dovrebbe permetterti di ottimizzare anche i processi delle CPU.
Il problema è che le Schede grafiche ATI sono un 20% del mercato. Non so se gli sviluppatori vorranno investire su una quota cosi bassa.
un ottimo test con 24 core... non mi resta che comprare N processori via... ^^
L'idea è eccezzionale, ma temo che come sempre non sarà supportata a dovere dagli sviluppatori.
Comunque mi pare di capire che anche con processori intel potresti avere dei vantaggi.
In pratica basta avere una scheda video ATI e il tool dovrebbe permetterti di ottimizzare anche i processi delle CPU.
Il problema è che le Schede grafiche ATI sono un 20% del mercato. Non so se gli sviluppatori vorranno investire su una quota cosi bassa.
Leggi meglio, non si tratta della GPU che esegui processi della CPU, si tratta della CPU che esegue processi OpenCL(quindi GPU, anche se bisogna dire che OpenCL è pensato per programmare tutto una serie di cose che vanno oltre alla GPU)
Il problema è che le Schede grafiche ATI sono un 20% del mercato. Non so se gli sviluppatori vorranno investire su una quota cosi bassa.
amd ha più del 20% se si considerano le schede discrete.
Eraser|85
07-08-2009, 10:33
Con opencl scrivi dei kernel di computazione in un linguaggio simil-c. Questi kernel vengono poi mandati in esecuzione su un Computing Device. Un CD può essere una CPU, una GPU, un CELL o un DSP.. dal punto di vista OpenCL non c'è alcuna differenza... poi sta al programmatore ottimizzare determinati task mandandoli in esecuzione su GPU piuttosto che CPU.. in teoria l'OpenCL prevede anche l'esecuzione di codice nativo (ad esempio una funzione contenuta in una .dll compilata diverso tempo fa) su di una qualsiasi CD... però le specifiche non richiedono che questa caratteristica debba venire supportata per potersi fregiare del logo OpenCL..
Cmq, tutto è molto interessante.. vediamo l'evoluzione concreta sul mercato di questo framework (OpenCL) a cosa porterà..
masty_<3
07-08-2009, 12:42
ehm, e chi ce li ha 24 cores? :asd:
Questa idea di AMD è cosa buona e giusta, ora, se vogliono prendere un po' di distanza da Intel e nVidia, devono solo fare in modo di far collaborare CPU e GPU in modo da poterle sfruttare insieme contemporaneamente ed il gioco è fatto.
già
Anche io condivido questa mossa: AMD e' indietro (almeno per quanto riguarda la diffusione) sia con le CPU che con le GPU, pero' e' attualmente l'unica ad offrire entrambe le piattaforme, ed e' su questo che deve puntare il piu' possibile...
:confused: da quando?
SwatMaster
07-08-2009, 16:44
già
Già. :(
:confused: da quando?
E' indietro in quanto a marketing, avrà voluto dire. :stordita:
Il concetto dell'OpenCL è che puoi scrivere una cosa e gira su tutte le piattaforme supportate.
Quindi anche gpu nvidia e se noti dice cpu x86, non cpu amd.
Certamente però nvidia dovrebbe implementare questa funzione anche nel suo sdk.
La tecnologia di base che gestisce la (ri)compilazione automatica per cpu x86 oppure per GPU e' gia utilizzata anche da Nvidia.
Sia Apple (per gli shader per OpenGL) che AMD ed Nvidia per OpenCL utilizzano la tecnologia di LLVM ( http://www.llvm.org ).
Apple ha persino supportato lo sviluppo del compilatore CLang (il front-end "ottimizzato per llvm" per compilare codice C/C++) che viene utilizzato anche per compilare il codice OpenCL.
LLVM "liscio" di suo supporta gia parecchie cpu (x86, x86-64, ARM, ecc.) ed ha parecchi front-end per molti linguaggi ad alto livello e non, oltre al CLang c'e' un front-end basato su GCC che supporta C,C++,Ada e mi sembra anche il Fortran, poi ce ne sono anche per Scheme, per Java e per linguaggi di tipo funzionale.
La versione finale richiederà ancora agli sviluppatori di determinare quale delle risorse disponibili, CPU o GPU, siano da utilizzare per la computazione multi-thread.
Perchè, questo sarebbe un processo automatizzabile?
Sarebbe interessante se fossero in grado appunto di far usare opencl sia su cpu che su gpu, in modo che non vi sia proprio distinzione tra le due cose, ma il carico di lavoro venga ripartito equalmente.
Praticamente un unico metodo di scrittura, a cui le varie aziende devono adattare i loro drivers. Praticamente avremmo drivers superottimizzati sia per cpu che per gpu.
Per assurdo credo si possa arrivare a sbarazzarsi dell'emulazione x86 che fanno le cpu moderne, e far lavorare direttamente il programma sulla cpu nuda, bypassando l'emulazione.
Ovviamente my 2 cents.
Sarebbe interessante se fossero in grado appunto di far usare opencl sia su cpu che su gpu, in modo che non vi sia proprio distinzione tra le due cose, ma il carico di lavoro venga ripartito equalmente.Sono d'accordo sul fatto che OpenCL dovrebbe essere ugualmente supportato sia da CPU che da GPU però il sistema dovrebbe essere in grado di distinguere e riconoscere le varie capacità di calcolo per poter poi distribuire il carico di lavoro in maniera equa e proporzionata, se no la CPU per certi calcoli fonderebbe e la GPU rimarrebbe semi-inutilizzata.
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.