I am a newbie for OpenCL Programming, I am familiar with Java so I decide JOCL as library to work with OpenCL, but I have some confusion and need to your help:
JOCL is the wrapper of OpenCL lib from Khronos or this is separate lib developed by MIT using Java ?
To use JOCL, beside download jar file from jocl , do we have to install driver or SDK ?
If I program with OpenCL, what kind of graphic cards I should use: NVIDIA/AMD/INtel ? I intend use GeForce GT430 but I don’t know what version of OpenCL it support. Could anyone help to let me know ?
1. JOCL is the wrapper of OpenCL lib from Khronos or this is separate lib developed by MIT using Java ?
JOCL is not developed by the MIT. It is just published under the Open Source License that is known as “MIT License”. It is developed by a single person. (Namely me, in my spare time)
2. To use JOCL, beside download jar file from jocl , do we have to install driver or SDK ?
That depends. I think for the latest AMD cards, the OpenCL implementation is already part of the Graphics Card Driver (but I’m not entirely sure, since I unfortunately don’t have an AMD card). If not, you just have to install the AMD APP SDK. For NVIDIA cards, the OpenCL implementation is part of the CUDA Toolkit.
3. If I program with OpenCL, what kind of graphic cards I should use: NVIDIA/AMD/INtel ? I intend use GeForce GT430 but I don’t know what version of OpenCL it support. Could anyone help to let me know ?
I will not give any recommendation here. The supported OpenCL version does not so much (only partially) depend on the Graphics Card itself, but mainly on the Software - namely the CUDA Toolkit for NVIDIA Cards, or the Driver/APP SDK for the AMD card. (But of course, future OpenCL versions may contain features that will not be supported by the older cards). AMD currently supports OpenCL 1.2. NVIDIA Supports OpenCL 1.1, but might support OpenCL 1.2 with the next CUDA Toolkit. (You will probably not need the OpenCL 1.2 functions in the beginning anyhow…)
1. JOCL is the wrapper of OpenCL lib from Khronos or this is separate lib developed by MIT using Java ?
JOCL is not developed by the MIT. It is just published under the Open Source License that is known as “MIT License”. It is developed by a single person. (Namely me, in my spare time)
2. To use JOCL, beside download jar file from jocl , do we have to install driver or SDK ?
That depends. I think for the latest AMD cards, the OpenCL implementation is already part of the Graphics Card Driver (but I’m not entirely sure, since I unfortunately don’t have an AMD card). If not, you just have to install the AMD APP SDK. For NVIDIA cards, the OpenCL implementation is part of the CUDA Toolkit.
3. If I program with OpenCL, what kind of graphic cards I should use: NVIDIA/AMD/INtel ? I intend use GeForce GT430 but I don’t know what version of OpenCL it support. Could anyone help to let me know ?
I will not give any recommendation here. The supported OpenCL version does not so much (only partially) depend on the Graphics Card itself, but mainly on the Software - namely the CUDA Toolkit for NVIDIA Cards, or the Driver/APP SDK for the AMD card. (But of course, future OpenCL versions may contain features that will not be supported by the older cards). AMD currently supports OpenCL 1.2. NVIDIA Supports OpenCL 1.1, but might support OpenCL 1.2 with the next CUDA Toolkit. (You will probably not need the OpenCL 1.2 functions in the beginning anyhow…)
bye
Marco[/QUOTE]
Thanks for your replying. But I still have some confusion with your answer.
I saw you recomemended install driver support OpenCL in here: https://developer.nvidia.com/opencl. So beside install driver for OpenCL, do we need to install CUDA toolkit SDK ? because I don’t think OpenCL and CUDA are same. If I’m wrong, please feel free to correct.
Oh sorry. I did not notice that the OpenCL support was included in the NVIDIA drivers as well (Usually I install the CUDA Toolkit anyhow… :o ). So in this case, you should only need the driver.