Skip to content

Intel(R) Graphics Compute Runtime for OpenCL(TM). Replaces Beignet for Gen8 (Broadwell) and beyond.

License

Notifications You must be signed in to change notification settings

AdamCetnerowski/compute-runtime

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Intel(R) Graphics Compute Runtime for OpenCL(TM)

Introduction

The Intel(R) Graphics Compute Runtime for OpenCL(TM) is an open source project to converge Intel's development efforts on OpenCL(TM) compute stacks supporting the GEN graphics hardware architecture.

Please refer to http://01.org/compute-runtime for additional details regarding Intel's motivation and intentions wrt OpenCL support in the open source.

License

The Intel(R) Graphics Compute Runtime for OpenCL(TM) is distributed under the MIT License.

You may obtain a copy of the License at: https://opensource.org/licenses/MIT

Installation Options

To allow Neo accessing GPU device make sure user has permissions to files /dev/dri/renderD*.

Under Ubuntu* or Centos* user must be in video group. In Fedora* all users by default have access to /dev/dri/renderD* files.

Via system package manager

NEO is available for installation on a variety of Linux distributions and can be installed via the distro's package manager.

For example on Ubuntu* 19.04, 19.10:

apt-get install intel-opencl-icd

Procedures for other distributions.

Manual download

.deb packages for Ubuntu are provided along with installation instructions and Release Notes on the release page

Dependencies

Optional dependencies

Below packages are needed to enable cl_intel_va_api_media_sharing extension

Supported Platforms

  • Intel Core Processors with Gen8 graphics devices (formerly Broadwell) - OpenCL 2.1
  • Intel Core Processors with Gen9 graphics devices (formerly Skylake, Kaby Lake, Coffee Lake) - OpenCL 2.1
  • Intel Atom Processors with Gen9 graphics devices (formerly Apollo Lake, Gemini Lake) - OpenCL 1.2
  • Intel Core Processors with Gen11 graphics devices (formerly Ice Lake) - OpenCL 2.1
  • Intel Core Processors with Gen12 graphics devices (formerly Tiger Lake) - OpenCL 2.1

Linking applications

When building applications, they should link with ICD loader library (ocl-icd). Directly linking to the runtime library (igdrcl) is not supported.

Tutorial applications

The Intel(R) GPU Compute Samples repository has sample source code to demonstrate features of Intel(R) Graphics Compute Runtime for OpenCL(TM) Driver.

Feature double-precision emulation (FP64)

By default NEO driver enables double precision operations only on platforms with supporting hardware. This is signified by exposing the "cl_khr_fp64" extension in the extension string. For other platforms, this support can be emulated by the compiler (IGC).

How do I enable emulation?

FP64 emulation can only be enabled on Linux. There are two settings that have to be set.

Runtime setting:

There are two ways you can enable this feature in NEO:

  • Set an environment variable OverrideDefaultFP64Settings to 1: OverrideDefaultFP64Settings=1

  • In igdrcl.config configuration file in the same directory as application binary (you may have to create this file) add a line as such: OverrideDefaultFP64Settings = 1

Compiler setting:

IGC reads flags only from environment, so set IGC_EnableDPEmulation to 1 as such: IGC_EnableDPEmulation=1

After both settings have been set you can run the application normally.

Known issues and limitations

Intel does not claim full specification conformance when using emulated mode. We reserve the right to not fix issues that appear only in emulation mode. Performance degradation is to be expected and has not been measured by Intel.

How to provide feedback

By default, please submit an issue using native github.com interface: https://github.com/intel/compute-runtime/issues.

How to contribute

Create a pull request on github.com with your patch. Make sure your change is cleanly building and passing ULTs. A maintainer will contact you if there are questions or concerns. See contribution guidelines for more details.

See also

(*) Other names and brands may be claimed as property of others.

About

Intel(R) Graphics Compute Runtime for OpenCL(TM). Replaces Beignet for Gen8 (Broadwell) and beyond.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 95.1%
  • C 2.6%
  • CMake 2.3%