Tuesday, June 21, 2011

Install OpenCL and PyOpenCL in Ubuntu 10.04 LTS Lucid Lynx 64 bit

After playing with Scientific Linux 6 with OpenCL and PyOpenCL, I decided to bring it into my primary OS, and yes it is Ubuntu 10.04 LTS Lucid Lynx 64 bit.

Searching through the net, I found two ways to install OpenCL

Because my previous experience in SL6 is worked, so i liked to doing so within my ubuntu.

Things that needed by my system for OpenCL(testing that it works by executing 'make all' in your $AMDAPPSDKROOT -> i put it on "/home/user/AMD-APP-SDK-v2.4-lnx64/", this will built samples application that included in samples folder)
  • read the guide AMD_APP_SDK_Installation_Notes.pdf (it just extract and put a conf in /etc dir)
  • install libglu1-mesa-dev (in my case the package(header files) that missing is only this, so might be different on your system!), this needed when build a OpenCL samples
  • also add a AMDAPPSDK in your $PATH in .bashrc file like this
Below are some screenshoot to test sample applications under AMD-APP-SDK-v2.4-lnx64/samples/opencl/bin/x86_64/ directory if the installation of AMDAPPSDK and is working:
test using HelloCL
test using GlobalMemoryBandwidth

and notice if running an OpenCL program using all processor thread(because i didn't have a GPU capable for OpenCL

And now for PyOpenCL(made by Andreas Klöckner at )
To install correctly please enable the internet connectivity its needed to install required python dependency module.

In my system is need to install libboost1.40-all-dev, python-numpy and python-libxslt. (Both are available from ubuntu repository). Using command from terminal -> sudo apt-get install libboost1.40-all-dev python-numpy python-libxslt

Installing PyOpenCl:
  • download PyOpenCL from PyOpenCL
  • Notice when execute : python   --cl-inc-dir=$AMDAPPSDKROOT/include   --cl-lib-dir=$AMDAPPSDKROOT/lib/x86_64   --cl-libname=OpenCL
  • then -> python build
  • finnally -> sudo python install
test PyOpenCL using examples

BTW  I'm just noticed that python in ubuntu is faster than in Scientific Linux 6, and it same 64 bit, same laptop.