Intel® C++ Compiler
Support and discussions for creating C++ code that runs on platforms based on Intel® processors.

offload to Iris Pro Graphics P580

Sorry if this is slightly off-topic but I didn't see a more applicable forum. I am trying to use Cilk offload for GPGPU applications and I can't find a driver that works with the E3-1585v5 / Iris Pro P580 in Windows 10. I have tried several drivers, both using the installer and manual install. It appears that the offload driver is not getting installed on the system: [snip] C:\>gfx_sys_check -v Checking CPU family:6 model:5e type:0 stepping:3 (signature:506e3) Checking OS Windows 8 x64 graphics timeout set to default (2 seconds) Checking display device: Provider: Intel Corporation Description: Intel(R) Iris(TM) Pro Graphics P580 Version: device: Provider: ASPEED Description: ASPEED Graphics Family(WDDM) Version: Checking Intel HD Graphics Driver failed to load library igfx11cmrt64.dll (error#126) [end snip] Running "dir /s igfx11cmrt64.dll" from C:\ shows that the offload driver files are not in the C:\Windows\Sys* folders. If I navigate to the folder I extracted the driver into, gfx_sys_check does recognize the device: [snip2] Checking Intel HD Graphics Driver DX11 version will be used cm_version=600 RT Dll version: ( JIT Dll version: ( CAP_KERNEL_COUNT_PER_TASK=16 CAP_KERNEL_BINARY_SIZE=65536 CAP_SAMPLER_COUNT=64 CAP_SAMPLER_COUNT_PER_KERNEL=16 CAP_BUFFER_COUNT=256 CAP_SURFACE2D_COUNT=256 CAP_SURFACE3D_COUNT=64 CAP_SURFACE_COUNT_PER_KERNEL=255 CAP_ARG_COUNT_PER_KERNEL=255 CAP_ARG_SIZE_PER_KERNEL=2016 CAP_USER_DEFINED_THREAD_COUNT_PER_TASK=262144 CAP_HW_THREAD_COUNT=504 CAP_SURFACE2D_FORMAT_COUNT=26 CAP_SURFACE3D_FORMAT_COUNT=2 CAP_VME_STATE_G6_COUNT=8 CAP_GPU_PLATFORM=Skylake CAP_GT_PLATFORM=GT4 CAP_MIN_FREQUENCY=350 CAP_MAX_FREQUENCY=1150 CAP_GPU_CURRENT_FREQUENCY=0 JIT version: 3.3 executing visa3.0 CmRT reported execution time 25999 nanosec executing visa3.1 CmRT reported execution time 9249 nanosec executing visa3.2 CmRT reported execution time 9083 nanosec GPU architecture: skylake vISA support: visa3.2 [end snip2] Visa3.x CmRT seems to work but it isn't clear to me if that is offload or something else like DX11, OpenCL, etc. I tried running some of the samples and my code--I thought they may run if I copy the exe into that folder; however, the code ran but from the execution time it was obviously running on a single CPU core and not offloaded. The code and samples both offload just fine on my other machine (i7-4810MQ w/HDG4600), so the driver issue notwithstanding, I can't rule out a compiler issue. I am using MSVS 2015 update 3 and Intel 2017 update 2 on both machines. Thanks, Randy
0 Kudos
2 Replies
Valued Contributor II
>>...I tried running some of the samples and my code... Do you use OpenMP v4.x offload functionality, or something else? Please provide more details.

In Win10 some of the driver files are kept in a different place, which is not in the PATH. Will be fixed in the upcoming compiler release. As a workaround, add the directory contained in the following registry entry to the PATH:

64-bit system:  HKEY_LOCAL_MACHINE\SOFTWARE\Intel\MDF\DriverStorePath

32-bit system: HKEY_LOCAL_MACHINE\Software\WOW6432Node\Intel\MDF\DriverStorePath

Typical content is: