Deploy OpenCL™ Runtimes
On NVIDIA platform, OpenCL comes with the latest R195.39 or R195.62 WHQL. R195.39 is the first driver that offer a public OpenCL support. The OpenCL.dll that comes with R195.38 is actually the Khronos OpenCL interface and real OpenCL implementation is hidden in some nvcuda files. Info as to which drivers you need for running the app:https://documents.blackmagicdesign.com/ConfigGuides/DaVinciResol. OpenCL rendering kernels. The combination of the limited Cycles split kernel implementation, driver bugs, and stalled OpenCL standard has made maintenance too difficult. We can only make the kinds of bigger changes we are working on now by starting from a clean slate. Installed drivers(as reported by Code builder) Experimental OpenCL 2.1 CPU Only Platform Intel(R) Core(TM) i7-4710HQ CPU @ 2.50GHz (Device Driver Version 6.1.0.1600) Intel(R) OpenCL Intel(R) Core(TM) i7-4710HQ CPU @ 2.50GHz (Device Driver Version 5.2.0.10049) Intel(R) HD Graphics 4600 (Device Driver Version 10.) NVIDIA CUDA. OpenCL.dll errors occur for several reasons, for example, the file may be corrupted, deleted, or not found on the computer.
Obtain runtimes to execute or develop OpenCL™ applications on Intel® Processors
- Intel® Graphics Technology Runtimes
- Target Intel® GEN Compute Architectures on Intel® Processors only
- Intel® Xeon® Processor or Intel® Core™ Processor Runtimes
- Target Intel® x86/x86-64 only
Important Change
There is a change in OpenCL™ CPU runtime for Windows* distribution in the 2020 February release to be consistent with Linux* distribution. The OpenCL CPU runtime is removed from the OpenCL driver for Windows starting in the 2020 February release version 'igfx_win10_100.7870.exe'.
- But the installer of the new driver did not remove the old OpenCL CPU runtime when you upgrade the newer driver, so you may have two OpenCL CPU runtimes on your system. This issue is already fixed in the installation script on github here.
- To download the OpenCL CPU runtime for Windows, please follow any of the following methods:
- Follow the section 'Intel® CPU Runtime for OpenCL™ Applications 18.1 for Windows* OS (64bit or 32bit)' below to download and install.
- Github: https://github.com/intel/llvm/releases
- Search for 'oneAPI DPC++ Compiler dependencies' and find latest release to download, e.g. https://github.com/intel/llvm/releases/tag/2020-WW20
- Following the installation instructions to install
Intel® Graphics Technology Runtimes
Execute OpenCL™ applications on Intel® Processors with Intel® Graphics Technology.
- Specifically target Intel® HD Graphics, Intel® Iris® Graphics, and Intel® Iris® Pro Graphics if available on Intel® Processors.
- Runtimes for Intel® Graphics Technology are often deployed in tandem with an Intel® CPU runtime.
- Consider graphics runtimes when developing OpenCL™ applications with the Intel® SDK for OpenCL™ Applications or Intel® System Studio.
Check release notes to ensure supported targets include your target device. For Intel® processors older than supported targets, please see the legacy deployment page.
Linux* OS
Repository Install Guidance *Easy* | Manual Download and Install | Build | README | FAQ
Note: The latest OpenCL runtime for CPU requires GNU* gcc version 7.3 or newer.
Intel® Graphics Compute Runtime for OpenCL™ Driver is deployed with package managers for multiple distributions. Please see the documentation on the GitHub* portal for deployment instructions.
Considerations for deployment:
- Ensure the deployment system has the (libOpenCL.so) ICD loader runtime from either:
- Your system package manager (for example with the unofficial ocl-icd )
- Useful package manager search hints:
- apt update; apt-file find libOpenCL.so
- yum provides '*/libOpenCL.so'
- Useful package manager search hints:
- Build from the official Khronos ICD Loader reference repository.
- Part of the Intel® SDK for OpenCL™ Applications.
- Your system package manager (for example with the unofficial ocl-icd )
- The Intel® Graphics Compute Runtime for OpenCL™ Driver depends on the i915 kernel driver. Necessary i915 features are available with relatively recent Linux* OS kernels. The recommended kernel is the validation kernel cited in documentation. In general, deployments after the 4.11 kernel should be OK. Make sure to review the release notes and documentation for more specifics.
Windows* OS
- Intel® Graphics Compute Runtime for OpenCL™ Driver is included with the Intel® Graphics Driver package for Windows* OS.
- Download Options
- System Vendor
- See your vendor website for a graphics or video driver download for the system
- Intel® Download Center
- Navigate to “Graphics Drivers” for recent releases.
- Try the system vendor first in consideration of vendor support. System vendors may disable Intel® Graphics Driver install.
- The graphics driver package is built in with Windows* 10 OS install. However, the built-in default deployment may not contain latest features.
- System Vendor
- Release Notes
- In the Download Center navigate to “Graphics Drivers” for Release Notes.
Intel® Xeon® Processor OR Intel® Core™ Processor (CPU) Runtimes
Execute OpenCL™ kernels directly on Intel® CPUs as OpenCL™ target devices.
- Consider an OpenCL™ CPU implementation for Intel® systems without Intel® Graphics Technology.
- Systems with Intel® Graphics Technology can simultaneously deploy runtimes for Intel® Graphics Technology and runtimes for Intel® CPU (x86-64).
- For application developers, the CPU-only runtime is pre-included with the Intel® SDK for OpenCL™ Applications or Intel® System Studio: OpenCL™ Tools component.
Check release notes to ensure supported targets include your target device. For Intel® processors older than supported targets, see the legacy deployment page.
Intel® CPU Runtime for OpenCL™ Applications 18.1 for Linux* OS (64bit only)
Download
- Size 125 MB
- See supported platform details in the Release Notes.
- Ubuntu* install uses an rpm translator
- The Linux* OS CPU runtime package also includes the ICD loader runtime (libOpenCL.so). The runtime installer should set the deployment system to see this ICD loader runtime by default. When examining system libraries, administrators may observe ICD loader runtimes obtained from other places. Examples include the system package manager (for example with ocl-icd) or as part of the Intel® SDK for OpenCL™ Applications.
- Maintenance and updates are now provided in the Experimental Intel® CPU Runtime for OpenCL™ Applications with SYCL support implementation. This implementation is listed later in this article.
- MD5 83c428ab9627268fc61f4d8219a0d670
- SHA1 5f2fa6e6bc400ca04219679f89ec289f17e94e5d
Intel® CPU Runtime for OpenCL™ Applications 18.1 for Windows* OS (64bit or 32bit)
- Size 60 MB
- CPU-only deployments should use the .msi installer linked in the Download button, and consider removal of the Intel® Graphics Technology drivers where applicable.
- CPU & Graphics deployments should use the Intel® Graphics Technology driver package, which contains both CPU (x86-64) and Intel® Graphics Technology implementations.
- See supported operating system details in the Release Notes
- Maintenance and updates are now provided in the Experimental Intel® CPU Runtime for OpenCL™ Applications with SYCL support implementation. This implementation is listed later in this article.
- MD5 8e24048001fb46ed6921d658dd71b8ff
- SHA1 451d96d37259cb111fe8832d5513c5562efa3e56
Intel® CPU Runtime for OpenCL™ Applications with SYCL support
Please visit the Intel® CPU Runtime for OpenCL™ Applications with SYCL support to download and install the runtime for Windows or Linux.
- Feedback can be provided at OpenCLTM for CPU forum or the Intel® oneAPI Data Parallel C++ forum.
Develop OpenCL™ Applications
Tools to develop OpenCL™ applications for Intel® Processors
Intel® oneAPI: DPC++ Compiler
Opencl Driver Free Download
- DPC++/SYCL programs can run SYCL kernels by way of underlying OpenCL™ implementations.
- OpenCL-C kernels can also be directly ingested and run by a SYCL runtime. Users of the OpenCL C++ API wrapper may find the SYCL specification particularly appealing.
- Explore the Intel® oneAPI: DPC++ Compiler, Github* hosted DPC++/SYCL code samples, OpenCL™ injection tests, as well as training videos part1 and part2 on techdecoded.intel.io.
- As of article publication, this compiler is in Beta.
Intel® System Studio
- For compilation, cross-platform, IoT, power considerate development, and performance analysis.
- OpenCL™ development tools component:
- Develop OpenCL™ applications targeting Intel® Xeon® Processors, Intel® Core™ Processors, and/or Intel® Graphics Technology.
- Develop applications with expanded IDE functionality, debug, and analysis tools.
- Note: Some debug and analysis features have been removed from recent versions of the SDK.
- Earlier versions of the SDK contain an experimental OpenCL™ 2.1 implementation. Intel® CPU Runtime for OpenCL™ Applications 18.1 was intended as a replacement for the experimental implementation.
- OpenCL™ development tools component:
- Visit the Intel® System Studio portal
Intel® SDK for OpenCL™ Applications
- Standalone distribution of Intel® System Studio: OpenCL™ Tools component.
- Develop OpenCL™ Applications targeting Intel® Xeon® Processors, Intel® Core™ Processors, and/or Intel® Graphics Technology.
- Develop applications with expanded IDE functionality, debug, and analysis tools.
- Note: Some debug and analysis features have been removed from recent versions of the SDK.
- Earlier versions of the SDK contain an experimental OpenCL™ 2.1 implementation suitable for development testing on CPU OpenCL™ targets. Intel® CPU Runtime for OpenCL™ Applications 18.1 was intended as a replacement for that experimental implementation.
- See release notes, requirements, and download links through the Intel® SDK for OpenCL™ Applications portal.
Intel® FPGA SDK for OpenCL™ Software Technology
- Build OpenCL™ Applications and OpenCL™ kernels for Intel® FPGA devices.
- See release notes, requirements, and download links through the SDK’s portal webpage.
- For OpenCL™ runtimes and required system drivers, visit Download Center for FPGAs.
Intel® Distribution of OpenVINO™ toolkit
- The Intel® Distribution of OpenVINO™ toolkit is available for vision and deep learning inference. It benefits from OpenCL™ acceleration for each of these components:
- Intel® Deep Learning Deployment Toolkit
- OpenCV
- OpenVX*
- For a developer oriented overview, see videos on the techdecoded.intel.io training hub.
Intercept Layer for Debugging and Analyzing OpenCL™ Applications
- The Intercept Layer for Debugging and Analyzing OpenCL™ Applications (clIntercept) can intercept, report, and modify OpenCL™ API calls.
- No application-level modifications nor OpenCL™ implementation modifications are necessary.
- clIntercept functionality can supplement removed functionality from recent releases of the Intel® SDK for OpenCL™ Applications.
Additional resources
*OpenCL and the OpenCL logo are trademarks of Apple Inc. used by permission by Khronos.
On a Windows 10 system with an AMD Radeon GPU and an Intel GPU (desktop or notebook), with graphics drivers installed for both GPUs, I bet you will see that OpenCL is limited to the AMD GPU only. If you search for Intel OpenCL related files with Explorer or Regedit, you will quickly find that all OpenCL driver files are there. So why is Intel OpenCL support disabled when an AMD Radeon GPU is present? Sorry, I don’t have the answer. Probably a savory story of drivers (AMD?). But here is a way to enable the Intel OpenCL support on Windows 32-bit and 64-bit with a simple registry tweak.
Before tweaking the registry, here is the OpenCL support on my test system:
Test system
– CPU: Intel Core i7-8700K + UHD Graphics 630 + Intel v6444 driver
– MSI Radeon RX 470 + Adrenalin 18.12.3
– Windows 10 64-bit v1809
OpenCL support
GPU Caps Viewer is a 32-bit app. Let’s see the same support with a 64-bit app like the prototype of the upcoming GPU Shark 2:
Not better.
Here is the tweak to enable OpenCL support for Intel processors. The OpenCL ICD (Installable Client Driver, the OpenCL.dll shipped with the graphics driver) tries to load all OpenCL implementations described in the HKEY_LOCAL_MACHINESOFTWAREKhronosOpenCLVendors key (64-bit app on Win64 or 32-bit app on WIn32) of the registry. For 32-bit apps on Windows 64-bit, the key is: KEY_LOCAL_MACHINESOFTWAREWOW6432NodeKhronosOpenCLVendors.
This key lists all OpenCL implementations (see the cl_khr_icd OpenCL extension for more details). On my test system, the first key was not present and the second key was present but with a value that didn’t work…
Here are the right values for both keys. These values properly enabled OpenCL for Intel CPU/GPU on my test system when AMD Adrenalin 18.12.3 driver was already installed.
64-app on Win64 or 32-bit app on Win32
In the HKEY_LOCAL_MACHINESOFTWAREKhronosOpenCLVendors key, create a DWORD value with the following name:
C:WindowsSystem32DriverStoreFileRepositoryiigd_dch.inf_amd64_f02a6686365638a8IntelOpenCL64.dll
I found this path in the registry (look for IntelOpenCL_x64_CpuRuntime or IntelOpenCL_x32_CpuRuntime values):
Opencl Driver Linux
32-bit app on Win64
In the HKEY_LOCAL_MACHINESOFTWAREWOW6432NodeKhronosOpenCLVendors key, create a DWORD value with the following name:
C:WindowsSystem32DriverStoreFileRepositoryiigd_dch.inf_amd64_f02a6686365638a8IntelOpenCL32.dll
Once these values have been created, the OpenCL support for Intel CPU and GPU finally appeared:
Remark 1: on a system with no AMD GPU, these tweaks are useless, because Intel OpenCL support is properly enabled after Intel driver installation.
Opencl Driver Install
Remark 2: on a system with NVIDIA GPU (with GeForce 417.35) + Intel GPU (driver v6444), these tweaks are useless too, because Intel OpenCL support is properly enabled. Moreover, the OpenCL registry key (KhronosOpenCLVendors) is empty…
Opencl Driver Download
Opencl Driver Nvidia
Related posts: