ICD – Installable Client Driver / OpenCL
ICD is a feature that makes it possible to have several different OpenCL plattforms installed and to choose in code which to use. This is very useful as ATI implementation supports CPUs and ATI GPU and Nvidia only supports Nvidia GPUs. Sounds great but until now it is not working (ATI Stream SDK 2.0.1 / Nvidia GPU Computing SDK 2.3). But there is simple way to use both plattforms one Machine.
In order to test a programm on each plattform it is necessary to have OpenCL.dll from both of them.
- Install ATI Stream SDK and Samples
- Open C:\Windows\System32 and copy OpenCL.dll to another folder
- Install Nvidia GPU Computing SDK and the Nvidia Driver, this will replace OpenCL.dll from ATI by Nvidia’s implementation.
- Now programms will use Nvidia plattform by default.
- In order to use ATI Plattform copy the previously secured ATI OpenCL.dll to your programm folder (containing .exe).
Another way to switch OpenCL.dll would be to store them both in …\System32 and just rename them. The one that should be used has to be named OpenCL.dll.
Nvidia GPU Computing SDK – OpenCL
ATI Stream SDK:
ICD / How it should work (be used) and know problems:
Windows 7 64-bit
Nvidia 8500 GT
Visual C++ Express