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.
1663 Discussions

Latest Components... Dev Tools: 2020 Initial Release, CPU Runtime: 18.1, GFX Runtime: "NEO"

Michael_C_Intel5
Employee
2,059 Views

Announcement (Dec 2019)

  • Intel® oneAPI Beta has released offering DPC++ language support.  In tandem, Intel® will be changing the distribution model for OpenCL™ Tools:

    • Kernel Development Framework and the API debugger are being deprecated.

    • Intel® will continue to support developer components such as OpenCL compilers, OpenCL capable debuggers and analyzers.
  • Please provide comments about your development interests or concerns with OpenCL and DPC++/SYCL in the forum.

For more information on:

 

Latest SDK

  • Intel® System Studio 2020 Initial Release: OpenCL™ Tools component is the latest release.
  • Intel® System Studio 2019 Update 5: OpenCL™ Tools will remain available at the current time.
  • New developers are encouraged to review the core concepts getting started guide for OpenCL™ developers. 2020 Updates are pending, but 2019 code samples are OK for use with 2020 libraries.
  • Developers are encouraged to visit the 2019 Linux* OS specific getting started guide and Windows* OS specific getting started guide.
  • Use of OpenCL headers from this SDK when building Intel® DPC++ or SYCL applications is not recommended. OpenCL headers direct from Khronos or from a system package manager should be preferred.
  • Note on Windows* OS:
    • 'DCH' designated Intel® Graphics drivers contain OpenCL™ implementations. Intel® System Studio: OpenCL™ Tools *do* support DCH graphics drivers as of 2019 Update 4 and 5.
    • Visual Studio* 2020 contents are compatible with the Intel® System Studio 2020 Initial Release: OpenCL™ Tools.
    • Visual Studio* 2019 is not supported for Intel® System Studio 2019: OpenCL™ Tools. Other developer tools (like Intel® Compiler and Intel® Vtune Amplifier) may have Visual Studio* 2019 support. When using a global installer, Visual Studio* 2019 integration does not apply to the OpenCL Tools.
    • Some Windows* OS configurations may need to drop to .NET 3.5 mode for the installer to avoid a hang.
  • Intel® System Studio 2020: OpenCL™ Tools is available as a standalone product. The standalone is a simplified package that uses the Intel® System Studio 2020 installer. Developers can still use the full installer from the install portal.

Latest Intel® Graphics Technology implementations

The OpenCL™ Runtimes for Intel® Processors page is the best resource for obtaining information about CPU and Graphics Intel® OpenCL™ implementations.

For Linux* OS

  • There primary Intel® Graphics Technology implementation the new Intel® Graphics Compute Runtime for OpenCL™ Driver (aka the 'Neo' runtime) is available on GitHub (https://github.com/intel/compute-runtime). This driver replaces Intel® development effort for the SRB5 closed-source driver (aka Classic) and the Beignet open-source driver.
    • To learn about the motivation for this change, visit http://01.org/compute-runtime. For more information on this driver, source code, and binary releases, please visit the GitHub portal. The community invites you to post any questions and issues on the GitHub portal.
    • Downloads are now enabled in system package manager repository format along side precompiled builds.
    • Note: any functional delta relative to SRB5.0 is posted at https://github.com/intel/compute-runtime/blob/master/documentation/LIMITATIONS.md.
  • The intel-opencl-r5.0 (SRB5.0) Linux driver package is the previous, now deprecated, closed source GPU runtime and CPU runtime package:
    • This has bug fixes/functional quality improvements above SRB4.1 and includes the following new features introduced since the standalone intel-opencl-r4.1 release:
      • cl_intel_va_api_media_sharing – added new full NV12 format support
      • Added Centos 7.3 support
      • Added experimental support Ubuntu 16.04.2 with default 4.8 kernel  – no kernel patching needed
    • For more info, see the Release Notes.
  • The Beignet OpenCL™ implementation for Intel® Graphics may be functional for legacy Intel® Processors. However, it is no longer being actively maintained by Intel® developers as their efforts have moved to 'Neo'.

For Windows* OS :

  • Obtain the Intel® Graphics Compute Runtime for OpenCL™ Driver (aka the 'Neo' runtime) from the Intel® Graphics Technology Driver package.
    • This package contains both CPU (x86-64) and Intel® Graphics Technology implementations.
      • Uninstall the Intel® Graphics Technology driver package if looking to run the standalone CPU runtime without Intel Graphics.
    • Get the package from from:
      • The target system OEM/Vendor website; typically on a graphics or video driver support page. Prioritize accessing the driver from the vendor page given vendors may require their drivers be used for support or warranty.
      • downloadcenter.intel.com, click Graphics Drivers. Even if an Intel® package matches your SKU, it may report incompatibility with your system if the vendor prefers the vendor driver only. Attempt install from the vendor support page first.
      • Windows* OS installs that occur on Intel® Processors with Intel® Graphics Technology have the driver package included, but it will be an older version. Consider updating to a newer implementation.

Latest CPU-only implementation

The Intel® CPU Runtime for OpenCL™ Applications 18.1 for Intel® Core™ and Intel® Xeon® Processors is the latest CPU-only runtime package for both Windows* OS and Linux OS*. This standalone installer is applicable for compatible Intel® Processors without Intel® Graphics.

​The 18.1 release includes:

  • Support of Intel® Advanced Vector Extensions 512 (Intel® AVX-512) ISA introduced on Intel® Xeon® Platinum processors (formerly code name Skylake)
  • Enabled features of OpenCL™ 2.1. The product is based on a published Khronos* Specification and has passed the Khronos Conformance Process. The conformance record can be found at https://www.khronos.org/conformance/adopters/conformant-products/opencl. Refer to submission #322 recorded on October 7, 2018.
  • Support for vectorization width 16 for the environment and configuration file variable CL_CONFIG_CPU_VECTORIZER_MODE, as well as for OpenCL™ C optional kernel attribute intel_vec_len_hint
  • Support for OpenCL™ Kernel debugging on Linux* OS with GDB*
  • Improved coexistence support with Intel® Graphics Compute Runtime for OpenCL™ Driver when both are installed.
  • Changed the platform name returned via clGetPlatformInfo(...) OpenCL™ API call with CL_PLATFORM_NAME bitflag to “Intel(R) CPU Runtime for OpenCL(TM) Applications”
  • New environment variable CL_CONFIG_CPU_TARGET_ARCH. It generates code exclusively for a given target CPU architecture. Allows only lowering the instruction set level supported by CPU:
  • Allowed values are:

    skx

    Generates code for processors that support Intel® Advanced Vector Extensions 512 (Intel® AVX-512) Foundation instructions, Intel® AVX-512 Conflict Detection instructions, Intel® AVX-512 Doubleword and Quadword instructions, Intel® AVX-512 Byte and Word instructions and Intel® AVX-512 Vector Length Extensions for Intel® processors, and the instructions enabled with core-avx2.

    core-avx2

    Generates code for processors that support Intel® Advanced Vector Extensions 2 (Intel® AVX2), Intel® AVX, SSE4.2 SSE4.1, SSE3, SSE2, SSE, and SSSE3 instructions.

    corei7-avx

    Generates code for processors that support Intel® Advanced Vector Extensions (Intel® AVX), Intel® SSE4.2, SSE4.1, SSE3, SSE2, SSE, and SSSE3 instructions.

    corei7

    Generates code for processors that support Intel® SSE4.2 Efficient Accelerated String and Text Processing instructions. May also generate code for Intel® SSE4 Vectorizing Compiler and Media Accelerator, Intel® SSE3, SSE2, SSE, and SSSE3 instructions.

  • Fixed an issue with user functions not being inlined in programs created using clCreateProgramWithIL(...) OpenCL™ API call
  • Fixed incorrectly reported CL_DEVICE_MAX_COMPUTE_UNITS for multi-socket Intel® Xeon™ systems (reported on forum https://software.intel.com/en-us/forums/opencl/topic/702240)
  • Fixed incompatibility with Intel® Threading Building Blocks (Intel® TBB) max_allowed_parallelism parameter
  • Fixed an issue with CL_DRIVER_VERSION returning incorrect driver version
  • Improved OpenCL™ C compiler diagnostics
  • Minor bug fixes
  • Updated the compiler infrastructure to LLVM* version 6.0.
  • Intel® CPU Runtime for OpenCL™ Applications 18.1 supports CPU only. For Intel Xeon Phi™ coprocessor support, use the version 14.2. For more information, see OpenCL™ runtime entry and release notes on the OpenCL™ driver page at: https://software.intel.com/en-us/articles/opencl-drivers .
0 Kudos
4 Replies
Asiatic_S_
Beginner
2,055 Views

Good Day, I am new to the developer tech scene thus I do not know if this is where I ask my Question?

Anyhow, I need answers, So I am on a HP with the Core i5 - 5200 Processor... And I am using Adobe After Effects (Ae).

And "Ae" is prompting me to use cuda... But that's for NVIDIA.

So I found OpenCl for intel HD graphics...

Thus, which Opencl download can I download for "Intel HD graphics 5500" or

Or... Do I even need to download it for this  "Intel HD graphics 5500"   

Please Help

Thanks

Jeffrey_M_Intel1
Employee
2,055 Views

Replied in private message.  This release is for CPU-only runtime libraries.  For GPU support see https://software.intel.com/en-us/articles/opencl-drivers

 

Iconoclast
Beginner
1,862 Views

Hi, I am in a bit of fix so I thought to post my question here since it seems the most appropriate place. I have an MSI trident gaming PC with NVIDIA RTX 2070 with Intel i7 9th gen octa-core processor. My development environment is MS Visual Studio 2017, I first installed the complete system studio 2020 which I believe comes bundled with the opencl runtime, however, IDE plugins were not installed in MSVC 2017. Nor (if i remember correctly) were the OpenCL templates available in MSVC. 

After this, I tried to use the NVIDIA CUDA toolkit which has the OpenCL SDK for NVIDIA... to no avail, I am mentioning this in order to highlight any conflicts that might be occurring between Intel and NVIDIA SDKs. 

Lastly, I unlocked my UHD 630 intel graphics from bios (i discovered that it was locked through MSI bios). I installed the latest intell graphics drivers. opencl 18.1 runtime is installed and running on my system. I uninstalled system studio and reinstalled it with full options selected. 

Now the situation is that most of the functionality of OpenCL SDK is integrated into the MSVC environment. However, the Intel Code Builder OpenCL API tool is absent from the tools menu. The sample, OpencCL templates are compiling and running. My question: how do i get the Code builder opencl API in the tools mentu. why is it not installing?

softworkz
Novice
1,171 Views

Please provide comments about your development interests or concerns with OpenCL and DPC++/SYCL in the forum.

 

All those changes are very confusing.  The many and frequent deprecations of technologies and the sudden removal of tools, don't make me confident about using any new technologies.

I had just the same experience like this guy: https://community.intel.com/t5/OpenCL/Intel-Open-CL-Plugin-for-VS-2017-2019/m-p/1231627

...and had to search through many release notes documents to fine a line, indicating that it has been removed: https://software.intel.com/content/www/us/en/develop/documentation/openclsdk-devguide/top/whats-new-...

What is very annoying is the ping-pong of information between various "Developer Guides" and several "Release Notes" documents (an overview release notes across multiple versions and version specific ones). Information is spread all over those different documents without any logic, but highly fragmented.

Also, the "Getting Started" documentation for OpenCL on Windows does not apply anymore.

It would have save me a lot of time when just had written somewhere, that System Studio 2020 and OpenCL SDK 2020 are not suitable for OpenCL development on Windows with Visual Studio (only minimal support remaining) and that users should resort to using System Studio 2019 and OpenCL SDK 2019 instead.

Best regards,
softworkz

 

Reply