Monday, August 12, 2013

Howto Setup Intel® SDK for OpenCL* Applications XE 2013 (Open Computing Language) for GPGPU & Parallel Programming on Ubuntu 12.04.2 64 bit

There are very few installation guides available for setting up Intel® SDK for OpenCL* Applications XE 2013 on Ubuntu 12.04.2 and following steps should help with you to quickly configure your system

1. Download Intel SDK for OpenCL Application XE 2013 version from Intel site

http://software.intel.com/en-us/vcsource/tools/opencl-sdk-xe

select 64-bit SDK and click on download button

2. Then click on "Installation Instruction" link (just under download button) and download public key from this page.

Intel-E901-172E-EF96-900F-B8E1-4184-D7BE-0E73-F789-186F.pub

3. Now import the public key

$ sudo rpm --import Intel-E901-172E-EF96-900F-B8E1-4184-D7BE-0E73-F789-186F.pub

4. Once sdk is downloaded, extract the file.

$ tar zxvf intel_sdk_for_ocl_applications_2013_xe_sdk_3.0.67279_x64.tgz

5. Now we need to install additional packages to manage RPM files & other tools for building packages

$ sudo apt-get install rpm alien build-essential fakeroot dpkg-dev

6. Now lets verify signature of rpm files. For example, do this for all rpm files

$ rpm --checksig opencl-1.2-base-3.0.67279-1.x86_64.rpm

and the result should be as follows

opencl-1.2-base-3.0.67279-1.x86_64.rpm: rsa sha1 (md5) pgp md5 OK

7.  Lets proceed to convert all .rpm files to .deb

$ fakeroot alien --to-deb --scripts *.rpm

8. We need to create /usr/lib64 folder, if it is not existing

$ sudo mkdir /usr/lib64

9. Now lets proceed with the installation

$ sudo dpkg -i opencl-1.2-base_3.0.67279-2_amd64.deb
$ sudo dpkg -i opencl-1.2-devel_3.0.67279-2_amd64.deb
$ sudo dpkg -i opencl-1.2-intel-cpu_3.0.67279-2_amd64.deb

$ sudo dpkg -i opencl-1.2-intel-devel_3.0.67279-2_amd64.deb
$ sudo dpkg -i opencl-1.2-intel-mic_3.0.67279-2_amd64.deb

10. As required by Ubuntu, lets create symbolic links for libraries

$ sudo ln -s /usr/lib64/libOpenCL.so /usr/lib/libOpenCL.so
$ sudo ln -s /usr/lib64/libOpenCL.so.1 /usr/lib/libOpenCL.so.1
$ sudo ln -s /usr/lib64/libOpenCL.so.1.2 /usr/lib/libOpenCL.so.1.2

and update library cache

$ sudo ldconfig

11. Lets test our installation by downloading sample application from following link

http://software.intel.com/sites/default/files/article/391203/capsbasic-sample.tar.gz

and extract the file

$ tar zxvf capsbasic-sample.tar.gz
$ cd CapsBasic
$ make
$ ./capsbasic

And if the application compiles & runs successfully displaying system information then your installation is successful