Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Can I use openCL in a application that I distribute to non developer machine?

I recently started to learn how to use openCL to speed up some part of my code. So far the speed gain is impressive. In one case the code ran up to 50X faster than on the CPU. However I wonder if can start using this code in a production environnement. The reason is that the first time that I tried to run the example code, nothing worked. I was able to make it run by downloading the driver on the Nvidia openCL SDK download page (I have a Geforce GTX260). It gave me a blue during installation but after that I was able to run the example program and create my own code.

Does the fact that it didn't work "out of the box" for me mean that the mainstream drivers does not yet support it, despite the fact that it is specifically written that it does on the driver download page? What about ATI support? Will everyone have to download the special driver that gave me a blue screen on install?

In short, is openCL ready for production code?

If someone can give me some details, I'd like to know. Does anyone has been able to run a simple program on a number of different device without installing anything SDK related?

like image 628
Laurent Bourgault-Roy Avatar asked Feb 23 '10 02:02

Laurent Bourgault-Roy


3 Answers

You may find an accurate answer on the OpenCL forums on the Khronos Group message boards. The OpenCL work group hangs out there regularly.

like image 113
James Avatar answered Oct 05 '22 23:10

James


Does anyone has been able to run a simple program on a number of different device without installing anything SDK related?

Nop. For instance, on ATI's GPUs end-users need to install ATI Stream SDK in order to run OpenCL code (just having an up-to-date graphics driver is not sufficient).

like image 42
Stringer Avatar answered Oct 05 '22 23:10

Stringer


You may want to consider trying DirectCompute (Microsoft's version of GPU programming) or doing your OpenCL work on a Snow Leopard Mac. Those are the two ways (that I know of) that you can deliver a GPU programming solution to another user without any driver or other installation hassle.

like image 32
K. Brafford Avatar answered Oct 06 '22 01:10

K. Brafford