cancel
Showing results for 
Search instead for 
Did you mean: 

Archives Discussions

kreuzerkrieg
Journeyman III

Intel and AMD OpenCL on the same machine

Hi,

I'm experiencing odd problem. I have Intel opencl installed on my machine and everything works ok. Once the AMD OpenCL got installed the same code crashes with access violation within amdocl64.dll when calling clGetPlatformIDs. I've changed the include path and library path to compile and link with AMD ocl with same result. The problem disappears once the AMD SDK is uninstalled.

Running under Win8, VS2012, the project has x64 configuration only.

Looks like it loads wrong DLLs or something but I have no clue how to handle this problem.

0 Likes
1 Solution

Yes radeon 5xxx series card are least which is supported. radeon 4xxx and older are supported only with legacy drivers.

View solution in original post

0 Likes
10 Replies
yaxunliu
Staff

You can check whether the correct dlls are loaded by using process explorer. Search and download it from microsoft, install it. When running your opencl application, right click the process in process explorer and choose menu view/lower panel view/dlls. Check if it is using opencl.dll and amdocl(64).dll from AMD.

0 Likes

no need in process explorer when debugging in studio. I see that the application loads OpenCL.dll and amdocl64.dll from system32. god knows where it came from. So I've replaced with these provided by AMD, still access violation.

0 Likes

That's a weird issue as I often switch between AMD and Intel without issues.  One thing I have noted is that if you have displays other than one hooked up to the Intel GPU enabled, then Intel doesn't report a GPU device (this is on Ivy Bridge).

What version of the AMD drivers and Intel drivers are you testing and what CPU and GPUs do you have?

0 Likes

Yesterday I've installed latest catalyst, 13.1 it brings ocl 10.x.xsomething. the question is what should I do, how should I compile and link when multiple OCLs installed? If i include cl.h and link opencl.lib from intel, it still should work with AMD, right? otherwise I dont get the idea of ICD.

And by the way, the intel kernel builder fails with the same exception when loading the amdocl64.dll from system32 folder. kdbsync.exe fails with the same issue too.

I'm wondering if it could be linkage problem something like the DLL, the export library and functions exported by ocl implementors are not in sync...

0 Likes

additional input. the same access violation happens when running AMD samples, both x86 and x64 (debug versions)

this is the callstack

amdocl64.dll!000007ffbf5b2e07()Unknown
amdocl64.dll!000007ffbf5a1192()Unknown
amdocl64.dll!000007ffbf55cd98()Unknown
amdocl64.dll!000007ffbf55ce0b()Unknown
amdocl64.dll!000007ffbfa1b570()Unknown
amdocl64.dll!000007ffbfa1c455()Unknown
amdocl64.dll!000007ffbfa1cc05()Unknown
amdocl64.dll!000007ffbfa262d9()Unknown
amdocl64.dll!000007ffbfa2647e()Unknown
amdocl64.dll!000007ffbfa12eb0()Unknown
amdocl64.dll!000007ffbfa131eb()Unknown
amdocl64.dll!000007ffbf9e3e5b()Unknown
amdocl64.dll!000007ffbf9e2e6f()Unknown
amdocl64.dll!000007ffbf9d2227()Unknown
OpenCL.dll!000007ffdfe210a8()Unknown
OpenCL.dll!000007ffdfe2388d()Unknown
OpenCL.dll!000007ffdfe2101c()Unknown
OpenCL.dll!000007ffdfe212ac()Unknown
>MersenneTwister.exe!SDKSample::validatePlatformAndDeviceOptions() Line 221C++

not too useful since there is no PDB provided

0 Likes

can you give the version of Intel HD Driver and OCL SDK installed. Please check intel's website. From AMD catalyst 13.4 is the latest stable release. Also what CPU and GPU(s) you have on your machine. Also attach (as zip) the output of clinfo.

0 Likes

Will check InteHD when back to the problematic machine (dont sure it have it installed). 13.1 is the latest which was proposed for download on AMD site for my aging Radeon4800. Should I download and install manually the 13.4?

CPU: Q6600

GPU: Sapphire Radeon48xx

The Intel SDK is the latest one, Intel® SDK for OpenCL* Applications 2013

0 Likes

The HD4800 is no longer supported for OpenCL, which is probably the source of your issues.

oh, I see... so why AMD still provides ocl installations for obsolete cards? in any case what is the lowest card model which is supported? 5xxx?

0 Likes

Yes radeon 5xxx series card are least which is supported. radeon 4xxx and older are supported only with legacy drivers.

0 Likes