Intel® SDK for OpenCL* Applications 2013

The Intel® SDK for OpenCL* Applications 2013 is a software development environment for OpenCL* applications with support for:

  • OpenCL 1.2 Full Profile
  • Intel® Iris™ Graphics and Intel® HD Graphics family
  • 3rd and 4th Generations Intel® Core™ Processors
  • (New!) Intel® Atom™ Processor formerly Bay Trail
  • Windows* 7, Windows* 8, and (New!) Windows* 8.1 OSs

By downloading this package, you accept the End User License Agreement

About Intel® SDK for OpenCL* Applications 2013

The Intel® SDK for OpenCL* Applications 2013 supports certified OpenCL 1.2 drivers for Intel® Core™ Processors and Intel® Atom™ Processors with Intel® Processor Graphics family. For cutting-edge visual computing applications, the SDK allows developers to harness the hardware acceleration capabilities of Intel® Iris™ Graphics and Intel® HD Graphics family. The SDK is ideal for content creation applications like video editing, music creation, and photo editing.

The SDK also supports OpenCL on the CPU with 1st and 2nd generations of Intel Core processors. On these platforms a CPU only OpenCL runtime is available through separated download (Download 64-bit here, and 32-bit here)

The full list of supported platforms is available in the product release notes document.

What’s New with Release 3

 

About Intel® Graphics Technology

Intel® Graphics Technology, including Intel Iris graphics and Intel HD Graphics are built right into the processor. This integration means lower latencies and leads to superior mainstream gaming, enhanced 3D experiences, and programmability with OpenCL 1.2.

About Intel® Iris™ Graphics

Intel Iris graphics, together with the 4th generation Intel Core processor, delivers amazing and vibrant multimedia experiences. Get immersed in high-speed, stunning, 3D gaming. Do advanced photo and video editing quickly and easily.

  CPU only runtime package1 Intel® Graphics Driver2 Intel® SDK for OpenCL* Applications3 Related Analysis Tools
Type Driver Driver Developer Kit Developer Tools
License Free
(redistributable,
64-bit, 32-bit)
Free
(pre-installed with OS,
Upgrade here)
Free Commercial
(30 days evaluation)
Features:
CPU OpenCL Runtime and Complier    
Intel Graphics OpenCL Runtime and Complier      
Header files and libraries      
Microsoft Visual Studio* 2008-2012 IDE Integration      
Kernel Builder (Design, build, and analyze OpenCL kernels)      
Application level profiling with Intel® VTune™ Amplifier XE      
  1. CPU runtime only is available for use with older versions of Intel® Core™ processors where OpenCL support in Intel Graphics Driver is not available. Developer can redistribute this runtime.
  2. Intel Graphics Driver includes OpenCL support for both CPU and Intel Graphics starting with 3rd generation Intel Core processors and Intel® Atom™ Z3000 Series processors. The driver is pre-installed and upgradable on any supported system.
  3. The Intel SDK for OpenCL Applications doesn’t include the OpenCL runtimes. Upgrade to the latest Intel Graphics Driver version to get OpenCL full support in the SDK.

What’s New in 2013 R3?

  • Unified SDK package with support for Windows* 7, Windows* 8, and Windows* 8.1 OS
  • Support the unified Intel® Graphics Driver version 15.33.8 and higher.
  • New Code Sample: Video Motion Estimation Sample
  • Updated header files:
    • cl.hpp
    • cl_ext.h

What’s New in 2013 R2?

This is the first video in the series. More videos will be available later.


Recorded Webinar - Fall 2013:

  • Analyzing OpenCL applications with Intel® VTune™ Amplifier XE
  • View slides

  • Create, Build, and Debug OpenCL code with Intel SDK for OpenCL Applications
  • View slides

  • Taking Advantage of Intel® Graphics with OpenCL
  • View slides


Archived Webinars

  • Getting Started with Intel SDK for OpenCL Applications
  • Writing Efficient Code for OpenCL Applications
  • Creating and Optimizing OpenCL code with Intel development tools

More Tech Articles

Collecting OpenCL*-related Metrics with Intel® Graphics Performance Analyzers
By jmfreema (Intel)Posted 09/10/20132
Intel® SDK for OpenCL* Applications 2012 is a comprehensive software development environment for OpenCL applications on 3rd generation Intel® Core™ processor based platforms. This article provides an overview of the OpenCL-related metrics.
D3D9 Media Surface Sharing Between Intel® Quick Sync Video and OpenCL* on Intel® HD Graphics
By THOMAS C. (Intel)Posted 11/05/20120
Download Article D3D9 Media Surface Sharing Between Intel® Quick Sync Video and OpenCL* on Intel® HD Graphics [PDF KB] Abstract Intel has defined an extension to OpenCL* v1.0 and later, allowing applications to directly access images embedded in Microsoft DirectX* 9 (DX9) media surfaces, withou...
Performance Interactions of OpenCL* Code and Intel® Quick Sync Video on Intel® HD Graphics 4000
By THOMAS C. (Intel)Posted 07/17/20122
Developers of video editing and other applications that generate or process video, and encode them using Intel® Quick Sync Video may find it challenging to gain performance advantages. This paper describes how to gain performance advantages using OpenCL*.
Auto vectorization of OpenCL* code with the Intel® SDK for OpenCL* Applications
By Jerry Baugh (Intel)Posted 04/25/20120
The Intel® SDK for OpenCL* Applications features an implicit vectorization module which boosts application performance. The implicit vectorization module uses state-of-the-art vectorization algorithms based on up-to-date compiler research
Subscribe to

Documentation:

Tutorials:

Title Format
Introduction to Intel SDK for OpenCL Applications and deep dive to Intel Iris Graphics compute architecture (SIGGRAPH 2013 presentation) PDF
Faster Content Creation with Higher Productivity using Intel® Developer Tools and OpenCL* (SIGGRAPH 2013 presentation) PDF
Journey of Pixels in Adobe Photoshop on Intel HD Graphics (SIGGRAPH 2013 presentation) PDF
Integrate OpenCL processing into Intel Media SDK pipelines (See section 7 of the Intel Media SDK Tutorial) HTML

You can reply to any of the forum topics below by clicking on the title. Please do not include private information such as your email address or product serial number in your posts. If you need to share private information with an Intel employee, they can start a private thread for you.

New topic    Search within this forum     Subscribe to this forum


Announcing new Beta version of the Intel® SDK for OpenCL™ Applications 2014
By Arnon Peleg (Intel)1
Dear OpenCL developers, I’m happy to announce the availability of the 2014 Beta version of the OpenCL SDK. Sign up and download now here. The Intel® SDK for OpenCL™ Applications 2014 Beta extends the already supported Windows* operating systems with the Android*OS support. Comparing to the Intel® SDK for OpenCL™ Applications 2013 version, this new 2014 Beta software brings the following new features and capabilities: Support for Android* OS 4.4 (KitKat) as target platform running on Intel® Atom™ processors with Intel HD Graphics, formerly codenamed Bay Trail. Introduction of the Code Builder - a single toolset, bundled with the SDK, that includes all SDK 2013 development features and the following new capabilities: Remote OpenCL Kernel development on supported Android devices and emulator OpenCL API level debugging with command tracing, queue, and memory views Integration with Eclipse* IDE Integration with Microsoft Visual Studio* IDE 2013 Saving and Restoring sessions in the Kernel...
Intel OpenCL auto-vectorization switch
By vince f.0
Hi, I want to disable the auto-vectorization of OpenCL kernel on Xeon Phi, is there any way to do that?
How dose clCreateBuffer( CL_MEM_USE_HOST_PTR) work when platform and device are both CPU
By wang h.1
When my OpenCL platform and device are both CPU, would the behaviour (creating buffer using CL_MEM_USE_HOST_PTR )copy another uniform data or just link to the host_ptr address without copy? Dose any one knows? Thank you!
ClCreateBuffer(| CL_MEM_USE_HOST_PTR): When does OpenCL framework transfer data to device via PCI?
By Dave O.2
Hi  Intel Xeon Phi OpenCL optimization guide suggests using Mapped buffers for data transfer between host and device memory. OpenCL spec also states that the technique is faster than having to write data explicitly to device memory. I am trying to measure the data transfer time from host-device, and from device-host.  My understanding is that OpenCL framework supports two ways of transferring data. Here is my summarized scenario: a. Explicit Method:     - Writing: ClWriteBuffer(...)     { - Invoke execution on device: ClEnqueueNDRangeKernel(kernel)  }     - Reading: ClReadBuffer(...) Pretty simple.   b. Implicit Method:     - Writing: ClCreateBuffer(hostPtr, flag, ...)       //Use flag CL_MEM_USE_USE_PTR. make sure to create aligned host buffer to map to.     { - Invoke execution on device: ClEnqueueNDRangeKernel(kernel)  }     - Reading: ClEnqueueMapBuffer(hostPtr, ...)          //device relinquishes access to mapped memory back to host for reading processed data Not very straight...
clEnqueueCopyBufferRect crashes with access violation in cpu_device32.dll
By Aaron B.2
I have several calls to clEnqueueCopyBufferRect to copy data between two device buffers. After a few calls, I get a crash with an access violation. I am using the 2014 beta sdk, targetting my Intel i7 cpu. Here is a code snippet: size_t bufferOffset[] = { 0, 0}; // The region size must be given in bytes size_t region[] = { img_size.s[0] * sizeof(type_data), img_size.s[1] * sizeof(type_data) }; clEnqueueCopyBufferRect ( oclObjects.queue, //copy command will be queued (cl_mem)d_odata, (cl_mem)(d_idata), bufferOffset, //offset associated with src_buffer bufferOffset, //offset associated with src_buffer region, //(width, height, depth) in bytes of the 2D or 3D rectangle being copied tile_comp->width * sizeof(type_data), //length of each row in bytes 0, //length of each 2D slice in bytes tile_comp->width * sizeof(type_data) , //length of each row in bytes 0, //length of each 2D...
clGetPlatformIDs returns -1001
By wang h.2
I installed intel_sdk_for_ocl_applications_xe_2013_r3_sdk_3.2.1.16712_x64.tgz on my PC( Intel(R) Xeon(R) CPU E5-2680 0). But when I run opencl clGetPlatformIDs ,it returned -1001. My OS is SUSE Linux Enterprise Server 11 SP1  (x86_64), and I connect PC through putty.Anyone knows why?Thank you.
Intel OpenCL SDK: clGetKernelWorkGroupInfo return value
By Dave O.1
Hi  1. I have a global work size of 1024 by 1024. 2. I set the local work size to 16 by 16.  3. My CPU opnecl device has a maximum work-group-size of 8192. 4. I call clEnqueueNDRangeKernel with the desired local-work-size (along with all other necessary parameters) 5. I call:       a. clGetKernelWorkGroupInfo(kernel, device, CL_KERNEL_WORK_GROUP_SIZE, sizeof(size_t), (void*)&workGroupSizeUsed, NULL);       b. clGetKernelWorkGroupInfo(kernel, device, CL_KERNEL_PREFERRED_WORK_GROUP_SIZE_MULTIPLE, sizeof(size_t), (void*)&workGroupSizeUsed, NULL); 6. Both calls return 8192. How is this possible? My expectation is 16 - the value that I passed to it.  Any help?
Inconsistent cl_device_id order
By Sean S.1
I tried to create a program from source, build it and save its binary, and then create a program from binary.  However, when I went to build it the second time I got the follow error: -42 (CL_INVALID_BINARY).  I tracked down the issue being that the order of the cl_device_id's I passed to clCreateContext, if not the same order I get when I query clProgramGetInfo with CL_PROGRAM_DEVICES.  This was quite an unexpected surprise.  Why wouldn't this order be maintained?  Changing that order causes me more headache as I need to query clGetDeviceInfo all over again.  I realize after reading through the spec that it does not require a consistent order, but what is to be gained from not maintaining an order even within the same program execution?   Btw, I'm using the latest non-beta Intel graphics driver and OpenCL SDK for Windows 8.1 64-bit with Visual Studio 2012 Professional.

Pages

Subscribe to Forums

The following samples are designed to work with Intel® SDK for OpenCL™ Applications on Windows* operating systems. The samples support Intel processors and/or Intel Processor Graphics.

Refer to the dedicated release notes for information on sample requirements, guidelines for building sample, and known issues.

List of Samples

Sample Name Complexity Supported Devices Description

OpenCL Optimizations

Novice

CPU/Intel Processor Graphics

Demonstrates basic ways of measuring performance of OpenCL kernels. It also demonstrates several simple optimizations.

Median Filter

Novice

CPU/Intel Processor Graphics

Demonstrates how to implement median filter with OpenCL technology, relying on auto-vectorization performed by Intel® SDK for OpenCL™ Applications compiler. The kernel code minimizes number of color buffer accesses, removes synchronization points, and uses data-level parallelism.

HDR Tone Mapping for Post Processing

Novice

CPU/Intel Processor Graphics

Demonstrates an implementation of high dynamic range (HDR) tone mapping, an algorithm by OpenEXR* community implemented with the OpenCL technology.

New! Video Motion Estimation Using OpenCL Technology

Intermediate

CPU/Intel Processor Graphics

The Video Motion Estimation (VME) tutorial provides step-by-step guidelines on using Intel's motion estimation extension for the OpenCL technology. The motion estimation extension includes a set of host-callable functions for frame-based Video Motion Estimation.

Cross-device NBody Simulation

Intermediate

CPU and Intel Processor Graphics simultaneously

Demonstrates a load-balancing approach to compute NBody across both CPU and Intel Processor Graphics. The sample illustrates basic principles of working with both devices simultaneously.

Bitonic Sort

Intermediate

CPU/Intel Processor Graphics

Demonstrates sorting routine with the OpenCL technology. The sample utilizes properties of bitonic sorting networks for efficient SIMD-level parallelism using OpenCL vector data types.

Hybrid HDR Tone Mapping for Post Processing Multi-Device Version

Intermediate

CPU and Intel Processor Graphics simultaneously

OpenCL implementation of high dynamic range (HDR) tone mapping with multi-device support for CPU and Intel Processor Graphics OpenCL devices.

HDR Rendering with God Rays Effect

Intermediate

CPU/Intel Processor Graphics

Demonstrates OpenCL implementation of the high dynamic range (HDR) rendering with God Rays (crepuscular rays) effect.

Resource Sharing

Intermediate

Intel Processor Graphics

Consists of two samples, which demonstrate how to use the Microsoft Direct3D* and Microsoft* DXVA together with the Intel SDK for OpenCL Applications.

OpenCL and Intel Media SDK Interoperability

Advanced

Intel Processor Graphics

Demonstrates how to use Intel Media SDK and Intel OpenCL implementation together in the most efficient fashion. Specifically the Intel Media SDK performs hardware-accelerated video decoding while the OpenCL technology is used on the Intel Graphics for fast post-processing.

Shallow Water 3D Fluid Simulation

Advanced

CPU/Intel Processor Graphics

Demonstrates shallow water solver implemented with the OpenCL technology. The sample relies on flux splitting method for solving the approximated Navier-Stokes equations.

 

Download Samples

  • What is OpenCL™?
  • OpenCL™ (Open Computing Language) is an established open standard for general-purpose parallel programming of heterogeneous systems. OpenCL provides a uniform programming environment for software developers to write portable code for client computer systems, high-performance computing servers, and handheld devices using a diverse mix of multi-core CPUs, Graphics Processers, and other parallel processors and coprocessors. The standard is defined by the OpenCL Working Group, led by Khronos*. More information is available at: khronos.org/opencl
  • What is the Intel® SDK for OpenCL Applications?
  • Available as a free download, the Intel® SDK for OpenCL Applications provides a comprehensive development environment for OpenCL application on Intel platforms including compatible drivers, code samples, development tools, such as the Code Builder, optimization guide, and support for optimization tools.
  • What is the extent of OpenCL support today, and what are the differences between the different versions of the SDK?
  • Intel today supports OpenCL 1.2 on 3rd and 4th generation Intel® Core™ Processors with Intel® HD Graphics and Intel® Iris™ Graphics Family, Intel® Atom™ Processors with Intel HD Graphics, Intel® Xeon® processors, and Intel® Xeon Phi™ coprocessors. The following are the flavors of the SDK for OpenCL eevelopers:
    • Intel® SDK for OpenCL™ Applications 2013: Supports visual computing applications on both CPUs and Intel Graphics on 3rd and 4th generation Intel® Core™ Processors and Intel Atom Processors formerly codenamed Bay Trail.
    • Intel SDK for OpenCL™ Applications XE 2013: Supports highly-parallel compute applications on both Intel Xeon processors and Intel Xeon Phi coprocessors

    (New!) Intel SDK for OpenCL Applications 2014 Beta: Extends the 2013 version with support for Android* OS as target platform for application development, support for Ubuntu* OS as host system for application development, and new tools like API Debugger. Products comparison available here

  • How do I download the Intel SDK for OpenCL Applications?
  • The various packages and versions of the Intel® SDK for OpenCL Applications are available as free downloads for developers at intel.com/software/opencl.
  • What is OpenCL 1.2 and what benefits does it provide to developers?
  • OpenCL 1.2 ratified by the Khronos group in December 2012. OpenCL 1.2 promises more flexibility in software design for OpenCL developers with improved compilation, linking, and library support, and improved graphics and media surface sharing. The Intel SDK for OpenCL Applications provides way to develop and use the new features available with the OpenCL technology version 1.2.
  • Are Intel's implementations of the OpenCL Standard fully certified with the OpenCL 1.2 specification?
  • The production versions of the OpenCL runtimes for 3rd and 4th Generation Intel Core Processors with Intel® Graphics, Intel Atom Processors formerly codenamed Bay Trail, for the Intel Xeon Processors, and Intel Xeon Phi coprocessors are fully certified with the OpenCL 1.2 specification.
  • How long has Intel been involved in OpenCL technology?
  • Intel was a founding member of the OpenCL Working Group, led by Khronos. Intel has been one of the leading voices in ensuring the OpenCL feature set supports OpenCL programmers on current and future Intel® Architecture.
  • How do I get support for Intel SDK for OpenCL Applications?
  • You are welcome to join the Intel SDK for OpenCL™ Applications Support Forum to post your questions and issues. The support team monitors the discussion to address questions. This forum covers OpenCL issues on CPU, Intel HD Graphics, and Intel Xeon Phi coprocessor.
  • Where do I find more information about Intel® SDK for OpenCL Applications?
  • The Getting Started With OpenCL Applications on Intel Developers Zone is a one-stop shop for downloads, support, and information on the Intel SDK for OpenCL Applications. Here you'll find free downloads of the SDK, software, code samples, product documentation, information on interoperable products, videos, technical articles, case studies, and the support forum.
  • How can I share my OpenCL Code with Intel?
  • This product support is done through the Intel® SDK for OpenCL Applications Support Forum. The forum provides you the option to attach your code files to a forum post. If you need to share private information with the SDK support team, request support engineers to answer your thread in a private channel.
    For sharing more information with Intel, we encourage you to become an Intel® Software Partner. Join us today at software.intel.com/en-us/partner-home.
  • Which debugging and optimization tools does Intel provide for OpenCL developers?
  • Intel SDK for OpenCL Applications provides a comprehensive environment for building, debugging, and tuning your OpenCL applications. In addition, OpenCL profiling is available with Intel's profiling tools like the Intel® VTune™ Amplifier XE and the Intel® Graphics Performance Analyzers (Intel® GPA).

    The SDK includes the following tools for OpenCL development:

    • Kernel Builder for OpenCL™ API - enables kernels design and optimization
    • Integration with IDEs
    • OpenCL Kernel Debugger

    Each SDK version includes a user guide with more details on available tools and provides guidelines on using them.

Intel® SDK for OpenCL™ Applications 2013

  • What is New in Intel® SDK for OpenCL™ Applications 2013 R3?
  • New features with this SDK are comparing to the lower version:
    • Unified SDK package with support for Windows* 7, Windows* 8, and Windows* 8.1 OS
    • Support the unified Intel® Graphics Driver version 15.33.8 and higher on all supported Windows* OS versions and on all supported Intel® Core™ Processors and Intel® Atom™ Processors.
    • Video Motion Estimation Sample
    • Updated header files:
      • cl.hpp
      • cl_ext.h
  • What is New in Intel® SDK for OpenCL™ Applications 2013 R2?
  • New features with this SDK are comparing to the lower version:
    • Support for Windows* 8.1 Operating System, 32-bit and 64-bit versions.
    • OpenCL™ 1.2 compliant on Intel® Atom™ Processors formerly codenamed Bay Trail
      • Intel Atom Processor Z3000 Series with Intel HD Graphics
      • Intel® Celeron® Processor J1000/N2000 Series with Intel HD Graphics
      • Intel® Pentium® Processor J2000/N3000 Series with Intel HD Graphics
    • Tracing of OpenCL kernels execution on Intel® Processor Graphics with Intel® VTune™ Amplifier XE 2013 Update 12 and above.
    • New OpenCL vendor extensions with support to hardware accelerated motion estimation built-in kernels
      • cl_accelerator_intel
      • cl_intel_motion_estimation
  • What Are Intel® HD Graphics and Intel® Iris™ Graphics Families?
  • 3rd and 4th generation Intel Core Processors are integrated with powerful graphic engines named Intel® HD Graphics, Intel® Iris™ Graphics, and Intel Iris Pro Graphics. The Intel Graphics Driver for Windows* expose OpenCL 1.2 devices for both the Intel Core processor (CPU) and the Intel HD Graphics (GPU). The latest release of Intel Graphics Driver adds OpenCL 1.2 support for Intel® Atom™ Processors formerly codenamed Bay Trail. For more information refer to intel.com/content/www/us/en/architecture-and-technology/hd-graphics/hd-graphics-developer.html
  • How Do I Download Intel® SDK for OpenCL™ Applications 2013 and which Package Should I Use?
  • OpenCL support packages are available in 3 configurations:
    • SDK package with development tools and documentation. Use this package when you want to develop an OpenCL application.
    • Intel Graphics Driver for Windows* 7 and 8.1 with OpenCL™ 1.2 runtime for both CPU and Intel Graphics. Install the latest version of the driver to get full OpenCL support on the supported systems.
    • CPU runtime only package with OpenCL complier and runtime for CPU device. Use this package if you want to test OpenCL™ 1.2 on systems without the SDK installed and without an Intel graphics driver that supports OpenCL.

    To download the SDK package go to the SDK page, select “Download” and choose the package you need in the pop-up menu. See more information in the installation notes.

  • What Optional OpenCL™ Features Are Implemented?
  • Intel SDK for OpenCL™ Applications 2013 supports many optional OpenCL 1.2 features and extensions such as interoperability with DirectX*, OpenGL*, Media Surface Sharing, and many more. For a full list of supported features and their descriptions, please see the Intel SDK for OpenCL™ Applications 2013 Users' Guide or the SDK release notes.
  • Can OpenCL 1.1 Applications Run with the New SDK?
  • Yes. OpenCL 1.2 devices are compatible with OpenCL 1.1 applications. Moreover, if you developed OpenCL applications with Intel SDK for OpenCL Applications 2012 that target Intel HD Graphics, these applications should also run as is with this new SDK. Please check issues and limitations in the release notes for more information.
  • Can I Develop Applications for Windows* 8.1?
  • Yes. This SDK provides compatibility of desktop applications across Windows* 7, 8, and 8.1 on a wide range of Intel processors. Windows 8 desktop applications retain the flexibility of a traditional Windows desktop along with touch capabilities. Verify that you have updated your graphics driver to the latest version here.
  • Can I Distribute Applications Developed with Intel SDK for OpenCL Applications 2013?
  • Yes. OpenCL 1.2 compliant applications will run seamlessly on all systems that have the latest driver version. If application targets a system without support for OpenCL in the Intel® Graphics Driver, you can direct users to download the CPU only runtime and run your OpenCL workloads on the CPU.
  • How Do I Uninstall Intel SDK for OpenCL™ Applications?
  • To remove SDK components use the Control Panel or select Start > All Programs > Intel® SDK for OpenCL™ Applications 2013 R3 > Uninstall.

    See more information in the installation notes.

  • How Can I Uninstall Intel® SDK for OpenCL™ Applications Manually?
  • To uninstall the SDK manually follow the steps below:
    For 64-bit operating systems:
    • delete the folder C:\Program Files (x86)\Intel\OpenCL SDK\
    • delete environment variable INTELOCLSDKROOT
    • edit PATH environment variable to remove the path(s) to C:\Program Files (x86)\Intel\OpenCL SDK\\bin\x64|x86
    • delete registry key HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Intel\OpenCL [IntelOpenCL32.dll]
    • delete registry key HKEY_LOCAL_MACHINE\SOFTWARE\Intel\OpenCL [IntelOpenCL64.dll]
    • delete the folder C:\Program Files\Intel\OpenCL SDK\
    • delete environment variable INTELOCLSDKROOT
    • edit PATH environment variable to remove the path to C:\Program Files (x86)\Intel\OpenCL SDK\\bin\x86
    • delete registry key HKEY_LOCAL_MACHINE\SOFTWARE\Intel\OpenCL [IntelOpenCL32.dll]

    See more information in the installation notes.

  • Does Intel Graphics Generate Code that Fully Utilizes the Execution Units?
  • Generally, the Intel Graphics driver is designed to generate and run OpenCL™ code that fully utilizes the execution units (EUs). Nevertheless, it is recommended to read Intel SDK for OpenCL Applications - Optimization Guide to learn how to get the best performance out of the Intel HD Graphics.
  • Does Intel SDK for OpenCL Applications Generate Code that Fully Utilizes the Intel® Advanced Vector Extensions (Intel® AVX and Intel® AVX2)?
  • Yes, Intel SDK for OpenCL™ Applications 2013 introduces performance improvements that include full code generation on the Intel Advanced Vector Extensions (Intel AVX and Intel AVX2). The Implicit CPU Vectorization Module generates the Intel AVX and Intel AVX2 code depending on what the target platform supports.
  • Is It Possible to Tell OpenCL Not to Use All Graphics Execution Units or CPU Cores?
  • By default the Intel HD Graphics utilizes all execution units and this is not configurable.
    However, for the CPU device the Intel SDK for OpenCL Applications provides support of the Device Fission optional feature (also known as sub device), which can be used to control a number of CPU cores used for OpenCL. For more information on device fission please see the related article.
  • Which Debugging and Optimization Tools Are Included in the Intel SDK for OpenCL Applications 2013?
  • The Intel SDK for OpenCL™ Applications 2013 provides a comprehensive environment for building, debugging, and tuning of your OpenCL™ applications. In addition, the SDK takes advantage of the following Intel profiling tools:
    1. Intel VTune™ Amplifier XE
    2. Intel Graphics Performance Analyzers (Intel GPA).

    The table below shows the availability of tools:

    Tool CPU Intel HD Graphics (GPU)

    Kernel Builder (Standalone)

    Yes

    Yes

    Integration with Microsoft Visual Studio* 2008-2012

    Yes

    Yes

    Step by Step Kernel Debugger

    Yes

    No

    Intel VTune™ Amplifier XE

    Yes

    Yes

    Intel GPA

    Yes

    Yes

    Read more at the tools section of the user guide.
    Tools support for Linux OS for CPU and Intel Xeon Phi coprocessor is available with the Intel SDK for OpenCL Applications XE – intel.com/software/opencl-xe.

  • What Is the Status of OpenCL™ on Intel Processors on Apple* Mac OS* X?
  • As of today, Apple supports OpenCL as part of Mac OS* X. Ask Apple for direct comment on specific features and compatibility.
  • When Would You Suggest Using Intel Media SDK and OpenCL Together with the SDK?
  • The Intel Media SDK and the Intel SDK for OpenCL Applications are complementary tools. The Intel Media SDK provides the best performance for media encode, decode and processing using Intel Processor Graphics. OpenCL could be used in conjunction with the Intel Media SDK for custom video pre-processing filters running on either Intel CPUs or Intel Processor Graphics. The SDK includes a sample to illustrate exactly this.
  • How Can I Debug my OpenCL™ Kernels?
  • The Kernel Debugger that is part of the SDK is a Microsoft Visual Studio* plug-in, which enables stepping into OpenCL kernels using the familiar interface of the Microsoft Visual Studio* software debugger for Intel CPUs. To get more debugging capabilities, use the printf function inside OpenCL™ kernels on both the CPU and Intel HD Graphics. For more debugging capabilities, try the new SDK 2014 Beta version.

Getting Started?

Get Help or Advice

Forums - The best place for timely answers from our technical experts and your peers.
Support - The Intel SDK for OpenCL* Applications Forum is the main support channel. Use it for bug reports and feature requests. If you need to share private information with an Intel employee, they can start a private and secured thread for you per request.

Resources