OpenCL.lib and multivendor implementation
Hello,
I'm, writing an application that gonna use OpenCL.
You've currently available a beta OpenCL SDK that requires to link with OpenCL.lib(which indirectly also requires a OpenCL.dll). The question is... imagine I want to use both ATI, NVIDIA and ClearSpeed OpenCL implementations in the same .EXE. How OpenCL.lib would find the proper OpenCL.dll? I bet there will be a conflict...
I think the solution is to modify a bit how you deploy the OpenCL.lib.
1. Rename the OpenCL.dll to ATI_OpenCL_1_0_0.dll ( include company's name + version to avoid DLL hell ).
And other question...
How can I enumerate all the OpenCL devices in a machine? Can I use your SDK to enumerate and use, for example, a NVIDIA graphics card? I need a way to do that... like DX10 does with the IDXGIFactory/IDXGIAdapter/IDXGIOutput. A good separation between the Interface and Implementation is vital.
thx