Snippets

Bastian Köcher Ubuntu Intel OpenCL 16.1 Install Script

Created by Bastian Köcher

File installopencl.sh Added

  • Ignore whitespace
  • Hide word diff
+#!/bin/bash
+#based on https://bitbucket.org/snippets/rajb245/epGzn/script-to-install-intel-opencl-runtime-151
+#this might work on other DEB based distros, YMMV
+#prereqs: wget, rpm2cpio, cpio, clinfo (for testing), and no other conflicting OpenCL drivers
+#Get this file
+#https://software.intel.com/en-us/articles/opencl-drivers#philinux
+#http://registrationcenter.intel.com/irc_nas/4181/opencl_runtime_14.2_x64_4.5.0.8.tgz
+#or this one http://registrationcenter.intel.com/irc_nas/5193/opencl_runtime_15.1_x64_5.0.0.57.tgz
+#wget http://registrationcenter.intel.com/irc_nas/4181/opencl_runtime_14.2_x64_4.5.0.8.tgz
+#wget http://registrationcenter.intel.com/irc_nas/5193/opencl_runtime_15.1_x64_5.0.0.57.tgz
+wget http://registrationcenter-download.intel.com/akdlm/irc_nas/9019/opencl_runtime_16.1_x64_ubuntu_5.2.0.10002.tgz
+
+#unpack the tarball
+tar xvf opencl_runtime_16.1_x64_ubuntu_5.2.0.10002.tgz
+
+#unpack the rpms
+#according to http://mhr3.blogspot.com/2013/06/opencl-on-ubuntu-1304.html, we don't need all of them unpacked
+#basically, just the ICD itself
+rpm2cpio opencl_runtime_16.1_x64_ubuntu_5.2.0.10002/rpm/opencl-1.2-intel-cpu-5.2.0.10002-1.x86_64.rpm | cpio -idmv
+
+#stub out the directory structure for the deb package as a staging area
+#some of these steps are from here http://mhr3.blogspot.com/2013/06/opencl-on-ubuntu-1304.html
+mkdir opencl-driver-intel-cpu
+cd opencl-driver-intel-cpu
+mkdir DEBIAN
+mkdir -p etc/OpenCL/vendors
+mkdir -p usr/lib/x86_64-linux-gnu/OpenCL/vendors/intel
+mkdir -p usr/share/doc/opencl-driver-intel-cpu
+cd ..
+
+#put the right description of the package in the right place
+#from the blog post with my modifications
+#version number is from the filename
+cat <<'EOF' >>  opencl-driver-intel-cpu/DEBIAN/control
+Package: opencl-driver-intel-cpu
+Version: 5.2.0.10002-1
+Section: libs
+Priority: optional
+Architecture: amd64
+Depends: ocl-icd-libopencl1 (>= 2.0), libnuma1
+Maintainer: Your Name 
+Description: Intel OpenCL CPU implementation
+ This package provides Intel OpenCL implementation which can utilize Intel Core processors.
+EOF
+
+#copy over the documentation into the deb staging area
+cp opt/intel/opencl-1.2-5.2.0.10002/doc/* opencl-driver-intel-cpu/usr/share/doc/opencl-driver-intel-cpu/
+
+#the icd registry could be copied from opt/intel/opencl-1.2-5.0.0.57/etc/intel64.icd 
+#but it's wrong anyway and we'd have to change it, handle this later
+
+#now put the libs where they go in the staging area
+cp opt/intel/opencl-1.2-5.2.0.10002/lib64/* opencl-driver-intel-cpu/usr/lib/x86_64-linux-gnu/OpenCL/vendors/intel/
+
+#now deal with that icd registry
+cat <<'EOF' >>  opencl-driver-intel-cpu/etc/OpenCL/vendors/intel64.icd
+/usr/lib/x86_64-linux-gnu/OpenCL/vendors/intel/libintelocl.so
+EOF
+
+#finally build the deb package
+dpkg-deb --build opencl-driver-intel-cpu
+
+#and install it
+sudo dpkg --install opencl-driver-intel-cpu.deb
+sudo apt-get install -f
+sudo ldconfig
+clinfo #this verifies it installed correctly
+#cleanup
+rm -rf opencl-driver-intel-cpu opencl_runtime_16.1_x64_ubuntu_5.2.0.10002*
+rm -rf opt
HTTPS SSH

You can clone a snippet to your computer for local editing. Learn more.