OpenCL* for CPU
Ask questions and share information on Intel® SDK for OpenCL™ Applications and OpenCL™ implementations for Intel® CPU.
Announcements
This forum covers OpenCL* for CPU only. OpenCL* for GPU questions can be asked in the GPU Compute Software forum. Intel® FPGA SDK for OpenCL™ questions can be ask in the FPGA Intel® High Level Design forum.
1722 Discussions

"clBuildProgram" hangs on Intel HD Graphic 3000

Michaël_J_
Beginner
528 Views

Hi,

The OpenCL function "clBuildProgram" hangs on those specific systems (while every thing works well on other ones):
Intel HD Graphic 3000 on Win 8.1 with this specific driver (9.17.10.3347) + possibly some Intel HD 4000
So, it seems to concern only a small list of chipsets, cf: https://downloadcenter.intel.com/Detail_Desc.aspx?agr=Y&DwnldID=22672&keyword=9.17.10.3347&DownloadType=Drivers&lang=eng

Before compilling the program I am testing the device with the following:
[cpp]
// Check device availability & capability
{
  cl_bool isDeviceAvailable, isDeviceCompilerAvailale;
  if (!GetDeviceInfo(deviceIDs[deviceIndex], CL_DEVICE_AVAILABLE, isDeviceAvailable) || isDeviceAvailable != CL_TRUE ||
  !GetDeviceInfo(deviceIDs[deviceIndex], CL_DEVICE_COMPILER_AVAILABLE, isDeviceCompilerAvailale) || isDeviceCompilerAvailale != CL_TRUE)
  {
    if (verbose) Log::Warning("%s::%d OpenCL device %d::%d not available.", __FUNCTION__, __LINE__, platformIndex, deviceIndex);
    continue;
  }

  cl_device_exec_capabilities executionCapabilities;
  if (GetDeviceInfo(deviceIDs[deviceIndex], CL_DEVICE_EXECUTION_CAPABILITIES, executionCapabilities) || !(executionCapabilities & CL_EXEC_KERNEL))
  {
    if (verbose) Log::Warning("%s::%d OpenCL device %d::%d has not the required execution capabilities.", __FUNCTION__, __LINE__, platformIndex, deviceIndex);
    continue;
  }
}
[/cpp]

None of those functions tell me that the device have a lack of OpenCL support; although I am working on legacy code "Extensions" and "clImages" are neither used.

Unortunately, I don't have the above hardware and the problem only occurs on client desktops, so I was not able to reproduce it on my own hardwares and go further with tracking down the problem. However I got able to get the call stack hanging entry point which is the function "clBuildPrograms".

PS: I have seen exact same problem on an older threads, but after the bug submission no update was made:
http://software.intel.com/en-us/forums/topic/329291 - http://software.intel.com/en-us/forums/topic/279313 - http://software.intel.com/en-us/forums/topic/487559

PS: The driver is unique for those plateformes, so cannot advice customers to update/downdate it.

PS: I have also seen that there is "similar" OpenCL known issue with Intel HD Graphics laster driver:
http://downloadmirror.intel.com/23102/eng/releasenotes_gfx_3223_64.pdf
"When two applications are concurrently using OpenCL, the graphics driver may crash."

Thank you very much.
Kind Regards,
Michaël Jeulin-L.

0 Kudos
1 Reply
ARNON_P_Intel
Employee
528 Views

Hi,

OpenCL is not supported on Intel HD Graphics 3000, so your OpenCL code is expected to failed. Can you confirm that any of the issues are also available with supported Intel Graphics (see list here: http://software.intel.com/en-us/articles/intel-sdk-for-opencl-applications-2013-release-notes#hw)

Arnon

0 Kudos
Reply