OpenCL Starter

Hi guys.. Its time to understand some parallel programming. OpenCL seems to be the best candidate in this area. Being its specification fully open and adaptable to different  hardware platforms there is a huge leap towards it.
      Parallel programming means taming parallel hardware... Mmm.. offcourse GPUs are the easily accessible parallel things...then comes the FPGAs.. then some mighty DSP processors... and also 32-64 core processing units... etc:.... So OpenCL specification is available for all above platforms. Vendors like Intel, AMD, NVIDIA, Altera, Tilera have already come forward with their SDKs for harnessing parallel beasts...

So why don't join the league..  ???

As a user what u can do is to identify a platform cost effective to you.. and start coding.. You are in luck if u have some AMD ATi HD5400 series or above graphic card sitting silently (roaring mostly.. :) ) in your PC and an x86 CPU. What u will need is just some free software packages.. And adding the luck, AMD has the most matured SDK for OpenCL. I am always lucky... :)

So depending on your hardware install the respective SDK.
1. Intel SDK            :  if u have a 2nd gen core i3 processor or above with HD4000 graphics
2. AMD APP SDK : If u have any x86 CPU (AMD or non-AMD ) with  Radeon graphics (HD5400 or      
                                   above ).
3. Nvidia SDK        : If u have some OpenCL compatible  NVIDIA card.

IDE tools
1. Microsoft Visual Studio  (not free)
2. Microsoft Visual C++ Express (free)
2. Code::blocks with mingGW or GCC.
3. Eclipse IDE with GCC.

See below link to know about setting up CodeBlocks for OpenCL development along with AMD APP SDK.  http://www.alexandreobellianne.fr/tutorials/OpenCL/tuto_opencl_codeblocks.php

Help link to configure Microsoft Visual Studio for OpenCL development along with AMD APP SDK
http://vasanthexperiments.wordpress.com/2011/07/26/install-opencl-in-windows7-and-configure-in-visual-studio/
The steps in above link can also be used to configure Visual C++ Express for OpenCL

OpenCL is an ideal platform for graduate student Projects in Image processing, DSP domains.

Once you have completed installing and configuring any of the above SDK and IDE, a small program can be run to retrieve the OpenCL platform and Hardware Info from your PC. Use the below link for such a program. The zip file contains an executable and source  file of such a info retrieval program written by me.
The source code is very simple to understand. It just uses some OpenCL specific functions and some 'printf' lines only. So successful running of this executable should indicate the proper configuration of tools and IDE in your PC.
http://www.mediafire.com/download/6j3z7lv9rb1yae5/OpenCL_info.zip





Comments

Popular posts from this blog

Bidirectional 3.3v 5v Level Shifter

DIY Fixing a Laptop Battery

USB-UART console using old nokia DKU-5 datacable. (3.3v TTL)