ATI Stream, Nvidia CUDA, OpenCL
-
Hi,
ich muss ein neues Projekt anfangen und soll auf Grafikkarten programmieren.
Ich habe mich ein im Netz umgeschaut und bin auf Nvidia CUDA und ATI Stream und OpenCL gestoßen. Die Hardware soll noch angeschafft werden daher habe ich noch freie Wahl. Bei dem Projekt geht es um Bildanalyse.
Kann mir jemand die Vor- und Nachteile von CUDA zu ATI Stream sagen?
Soweit ich verstanden habe ist OpenCL sowohl bei ATI Stream SDK als auch beim Nvidia CUDA SDK dabei, stimmt das?
Warum gibt es so wenige Applikationen mit OpenCL?
Welche Vor- und Nachteile hat OpenCL gegenüber CUDA?Schon mal im voraus vielen Dank für die Antworten
Derin
-
OpenCL ist eine Vereinheitlichung von Stream & CUDA, allerdings noch ein sehr neuer Standard. Deswegen gibt es noch kaum Anwendungen, die es benutzen. Auch sind - soweit ich gehoert hab - die Treiber zur Zeit noch nicht optimal auf OpenCL ausgelegt (d.h. du hast anscheinend zur Zeit bessere Performance mit CUDA). Allerdings aehneln sich CUDA und OpenCL sehr, wenn du das eine kannst ist es nicht sehr schwer, das andere zu lernen.
-
Ich hab mich noch nicht damit beschäftigt und kann dazu also nix sagen, aber evtl. wäre DX11 + Compute Shader auch ne Alternative für dich.