Gå til innhold

Nyhet: OpenCL driver++ (nvidia) tilgjengelig


Anbefalte innlegg

Skrevet (endret)

Nvidia har lagt ut en opencl driver for windows,linux og mac. De har også lagt ut en profiler(beta) og eksempel kode.

 

Dette har tidligere vært tilgjengelig for registrerte utviklgere utviklere, men er nå fritt vilt.

 

link

Endret av Giddion
Videoannonse
Annonse
Skrevet
La oss håpe at de ikke kupper dette området også, slik de har gjort med Direct3d. EDIT: Microsoft altså.

 

Helt enig, men de har jo "bare" kuppet (i stor grad) på sitt eget os.... Det er jo forsåvidt noe av problemet.

Skrevet

Det er kjernen i problemet. Standarden er leverandør-spesifikk, og det er det ingen andre enn den leverandøren som tjener på. Hadde den vært åpen så ville andre hatt mulighet til å konkurrere på tilnærmet likt grunnlag, og det hadde ikke vært noe problem.

Skrevet

Tror nok ikke de uten videre kan kuppe dette. OpenCL var satt i gang av Apple, og er nå ett sammarbeidsprosjekt, som er styrt og distribuert av Khronos. OpenCL skal være krysskompatiblet uavhengig av OS og skjermkort merke.

 

Samtidig har vi CUDA som en motpol til dette, som er nVidia sitt. CUDA fungerer på tvers av OS, men dessverre kun på nVidia skjermkort.

 

Begge disse kan bruke for Direct Computing etter hva jeg har forstått av http://en.wikipedia.org/wiki/DirectCompute Er hvertfall i CUDA null problem å få CUDA til å være en del av ett større program, det er til og med enkelt å lage CUDA programmer som kalles fra MATLAB.

Skrevet (endret)
Hva i huleste er "opencl" og det dere snakker om?! Er jeg veldig utdatert eller?

OpenCL er et programmeringsspråk for multi-threading i all hovedsak. Det er basert på C og har nesten all syntaks derifra, men har lagt til noen ting som en kanskje kjenner bedre igjen fra GLSL (som vektor-aritmetikk)

 

 

Det som derimot gjør dette spesielt i forhold til eksempelvis OpenML for C/C++ er at dette tillater at deler eller hele programmet kjører rent på GPU-en, som er svært gunstig for multithreadede programmmer (som for eksempel ray-tracing som jeg nevnte tidligere) da en vanlig grafikkort kan kjøre 128 eller flere operasjoner samtidig, avhengig av hva slags operasjoner det er snakk om.

 

OpenCL er konkurrent for nVidia CUDA og Microsoft DirectComputing (som er en del av DirectX 11, men fungerer på DirectX 10 hardware)

 

edit:

Lastet ned C++ bindings for OpenCL. Det ble en del enklere gitt :p

http://www.khronos.org/registry/cl/

 

edit2:

Haha! Dette var jo temmelig greit å bruke så fort jeg fikk tak i C++ bindingene!

Men jeg skjønner ikke helt hvordan jeg kan queue nye oppgaver inne i en kernel eller en annen funksjon...

Endret av GeirGrusom
Skrevet

Hmmm... Spørsmål. Er det noen annen måte å få tak i libraryet på enn å laste ned en hel nVidia driver? I så fall tror jeg muligens jeg venter til det faktisk blir lagt inn i standard nVidia drivern, hvertfal på Linux.

Skrevet

Men er det ikke litt irrelevant egentlig? I verste fall må du jo bare sende med redist for driveren med programmet, og det er jo ikke alle som har nVidia.

 

hmmm, på en litt fnodig sidenotis, så legger den nyeste offentlige nVidia driveren til støtte for DirectCompute... hvorfor er de så trege med OpenCL i forhold?

 

Egentlig litt kjipt for nVidia at de må støtte tre API-er for å gjøre akkurat det samme, CUDA, OpenCL og DirectCompute. Redundanse er en fin ting.

Skrevet (endret)
hmmm, på en litt fnodig sidenotis, så legger den nyeste offentlige nVidia driveren til støtte for DirectCompute... hvorfor er de så trege med OpenCL i forhold?

OpenCL kom vel litt senere og støttes av flere platformer.

 

Egentlig litt kjipt for nVidia at de må støtte tre API-er for å gjøre akkurat det samme, CUDA, OpenCL og DirectCompute. Redundanse er en fin ting.

Stemmer det, men det samme må ATI/AMD gjøre også :)

Endret av Giddion
Skrevet
Men er det ikke litt irrelevant egentlig? I verste fall må du jo bare sende med redist for driveren med programmet, og det er jo ikke alle som har nVidia.

 

Ja, men nå bruker jeg foreløpig ikke CUDA i ett program som skal ut til kunde eller i det hele tatt distruberes, enda. Lager meg en liten spillengine, som etterhvert skal bruke OpenCL til en del beregningstunge oppgaver. Tenkte blant annet å bruke OpenCL til å simulere vannbevegelser. Men er en stund til jeg kommer dit, og da jeg er der er nok OpenCL lagt inn i den vanlige driveren.

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...