I have an application that runs fine in GPU, but when I chose the Intel CPU as platform, clBuildProgram crashes. clCreateProgramWithSource returns what appears to be a valid cl_program and the last parameter (the error) is filled with 0 (success)
Do you have any experience with an issue like this?
Only as clarification: the crash that happens is:
Unhandled exception at 0x00000000 in PublicLayer_Debug.MetriaApps.PublicLayerSample.exe: 0xC0000005: Access violation.
in this line:
error = clBuildProgram(program, 0, NULL, NULL, NULL, NULL);
As said, program seems to be valid, because clCreateProgramWithSource executes ok, and clGetProgramInfo returns valid info about the program.
Ok, problem solved. Internally, the Intel’s OpenCL driver uses TBB, and in our project we was using TBB too, but an older version. Our TBB dll’s was being copied to our bin folder, so when the Intel’s driver tried lo load their TBB, it was loading an obsolete version, so that’s why it was crashing.
I hope this post serves to somebody if they experience the same issues.