CUDA oder OpenCL oder ATI-Stream

Perdan

Mitglied
Hi zusammen,

ich muss ein Projekt anfangen bei dem ich auf Grafikkarten programmieren soll. Ich habe auf diesem Gebiet keine Erfahrung. Da die Hardware erst noch angeschafft werden muss, ist nun eine Entscheidung fällig welches System genommen wird.

Kann mir wer bitte einen Überblick geben wo die Vor- und Nachteile von CUDA mit Nvidia, ATI mit Stream oder OpenCL liegen?

Die Anwendung die Entwickelt werden soll beschäftigt sich mit Bildanalysen.

Vielen Dank

Perdan
 
Ich persönlich habe zwar keine Erfahrung mit den jeweiligen Techniken doch möchte ich erstmal darauf hinweisen, dass der wesentliche Unterschied zwischen OpenCL und CUDA die Tatsache ist, dass OpenCL lediglich eine Library ist, die Code entsprechend für Grafikkarten, u.a. für die Hardwareimplementation CUDA kompilieren kann. Der klare Vorteil von OpenCL ist die Tatsache, das Code damit plattformunabhängig wird und du anders als bei reinem CUDA, das sich auch ziemlich mies schreiben lassen soll ähnlich purem OpenGL, du nicht an spezielle Hardware in diesem Fall von Nvidia angewiesen bist, da CUDA meines Wissens nicht auf ATI-Karten läuft da es proprietär ist.
 
Ich würd auch eher auf den offenen Systemen aufbauen, also OpenCL oder (wenn nur unter Windows) DirectCompute. So erspart man sich zumindest dieses Hickhack der Grafikkarten (wer weiß, wer in 5 Jahren noch State-of-the-Art ist)..

mfg chmee
 

Neue Beiträge

Zurück