This guide provides quick steps to create, build, debug, and analyze OpenCL™ applications with the Intel® SDK for OpenCL™ Applications, available as:
Intel® SDK for OpenCL™ Applications for Windows* provides integrated development environment for Microsoft* Windows* applications for mobile and desktop client systems. If you wish to target your OpenCL applications for Linux* systems or other server and embedded configurations, you can use Intel® SDK for OpenCL™ Applications for Linux*, Intel® System Studio for Linux*, or Intel® Media Server Studio. Additional Intel SDK for OpenCL Applications options are available at https://software.intel.com/en-us/intel-opencl.
Intel® SDK for OpenCL™ Applications is a software tool suite that enables development of OpenCL applications via well-known integrated development environments, targeting the Intel® Architecture processors with the Intel® Processor Graphics.
Intel SDK for OpenCL Applications has the following capabilities:
Depending on your target operating systems and hardware set, select between the Microsoft* Windows* or Linux* versions of the Intel® SDK for OpenCL™ Applications.
The Intel SDK for OpenCL Applications provides the following features:
For a full list of features, refer to the Intel® SDK for OpenCL™ Applications Release Notes.
Are you looking for more configurations, like OpenCL support for Intel® Processor Graphics for Linux* OS? Use the Intel SDK for OpenCL Applications available with the Intel® System Studio or Intel® Media Server Studio. See additional configurations at https://software.intel.com/en-us/intel-opencl.
The following components must be installed on the system to ensure the Intel® Code Builder for OpenCL™ API components work:
For help on installing the product refer to the "Installation Guidelines" sections in release notes.
A simple way to get started with the Intel® SDK for OpenCL™ Applications is to use its Microsoft Visual Studio* plug-in: Intel® Code Builder for OpenCL™ API.
Right after installing the Intel® SDK for OpenCL™ Applications, you can check availability of the OpenCL platform on your system. To do so,
As a result you should see the Platform Info window with the list of available platforms and your hardware properties.
Next step is to build an OpenCL™ kernel using the Microsoft Visual Studio* plug-in.
In this example we use a ready code sample from the list of Intel’s OpenCL code samples to test the plug-in.
To build a sample application
In case of a successful build operation, you receive the following output:
In case of a failure, you receive error messages. For example:
You can develop an OpenCL kernel yourself.
See the Developer Guide for more information about developing kernels using the Code Builder plug-in for Visual Studio.
Intel® SDK for OpenCL™ Applications provides native integrated development environment in the Microsoft Visual Studio* and Eclipse* IDEs that enables you to build, run, validate and analyze OpenCL™ kernels.
To use Kernel Development Framework, go to Tools > Intel Code Builder for OpenCL API> OpenCL Kernel Development.
You can create a new session or load an existing one, build it, assigned inputs to the kernel, test its correctness and analyze kernel performance based on group size, build options, and target device.
Use the following link to parts of the Intel® Code Builder for OpenCL™ API Developer Guide for more information about each of the Kernel Development Framework.
You can debug OpenCL™ applications using the OpenCL C Kernel debugger and API debugging capabilities of the Intel® Code Builder for OpenCL™ API plug-in for Microsoft Visual Studio* IDE.
To start debugging API calls of an OpenCL application, you need to configure the API debugger:
Now you can toggle breakpoint in the application on OpenCL API call and start debugging in the standard way - with F5.
The API Debugger provides multiple views of the API calls. To open the views of your interest, just go to Tools > Intel Code Builder for OpenCL API > OpenCL API Debugger.
Use the following links to parts of the Intel® Code Builder for OpenCL™ API Developer Guide for more information about each of the API Debugger views:
For the full list of Intel Code Builder for OpenCL API plug-in capabilities as well as instructions for using them, see to the Intel® SDK for OpenCL™ Applications - Developer Guide.
Intel® SDK for OpenCL™ Applications delivers a seamless debugging experience that enables you to debug both CPU and GPU portions of your application simultaneously.
The source-level kernel debugger enables you to debug OpenCL™ kernels running on the CPU and Intel® Processor Graphics through Microsoft Visual Studio* 2015.
To enable the OpenCL kernel debugger go to: Tools > Intel Code Builder for OpenCL API > Options...
In the CPU Kernel Debugger settings set the “Enable OpenCL CPU Kernel Debugger” property to true and in the GPU Kernel Debugger settings respectively and set the “Enable Debugging” property to True.
For the full list of Intel Code Builder for OpenCL API plug-in capabilities as well as instructions for using them, see the Intel® SDK for OpenCL™ Applications - Developer Guide.
Once you finish with application development, you can start gathering analysis data to improve the application performance.
To start the analysis:
The analysis result view contains an analysis home page and an analysis progress bar with several steps to review the analysis results:
Browse through the report menus to view all the analysis information.
Consider the following documents and web articles to get started with the Intel® Code Builder for OpenCL™ API:
Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.
Notice revision #20110804