PSA: Installing the Intel CPU OpenCL Runtime 18.1 deletes the current GPU cl device

Discussion in 'Processors and motherboards Intel' started by Astyanax, May 21, 2020.

  1. Astyanax

    Astyanax Ancient Guru

    Messages:
    6,672
    Likes Received:
    2,112
    GPU:
    GTX 1080ti
    On the first time installing the newest Intel CL Runtime, it erases the nvopencl/amdcl entries.

    If you had 16.2 installed, it doesn't delete the entry so you end up with duplicated opencl devices, though it replaces the runtime in Programs and Features.

    uninstalling 16.2 also does not remove the intelopencl entries so you must remove these manually to install 18.1 clean. (16 uses intelopencl**.dll, 18 uses intelocl**.dll)


    Installing 18.1 a second time (after uninstalling) does not remove the Nvidia / AMD opencl entries.

    Both behaviors occured on 2 machines, and another user also confirmed the first behavior from a clean install having never had 16.2 installed.
     
    Last edited: May 21, 2020
  2. ManuelG

    ManuelG NVIDIA Rep

    Messages:
    807
    Likes Received:
    209
    GPU:
    Geforce RTX 2080 FE
    "On the first time installing the newest Intel CL Runtime, it erases the nvopencl/amdcl entries."

    OpenCL regkeys are no more installed under HKEY_LOCAL_MACHINE\SOFTWARE\Khronos\OpenCL\Vendors by NVIDIA drivers.

    The regkeys are expected to be present under HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\* as "OpenCLDriverName". There will be multiple entries in different directories 000, 001 and so on, one for Intel, the other for NVIDIA.

    We observe that Intel OpenCL CPU runtime installer is overwriting OpenCL.dll shipped by NVIDIA with an older version of OpenCL.dll shipped by Intel OpenCL runtime. This is not expected as per Khronos ICD loader installation guidelines. As a work-around, you can remove OpenCL.dll from your System32/SysWow64 and then reinstall NVIDIA display driver. This will copy appropriate OpenCL.dll in System32. If this fixes your problem, you may contact Intel and check if this is an issue with their OpenCL CPU runtime installer.
     
    Last edited: May 29, 2020
  3. Astyanax

    Astyanax Ancient Guru

    Messages:
    6,672
    Likes Received:
    2,112
    GPU:
    GTX 1080ti
    I can confirm that observation, my conclusion was based on an understanding of the previous loader requirement for Opencl 2.1.0.0 needing the vendor string,

    The nvidia driver i had been using does not generate this dword and due to this the overwritten opencl loader could only display the entry for the intel icd which did include the string.
     
    Last edited: May 29, 2020

Share This Page