For the past decade, every C++ programmer who wanted to do real concurrent work has had the same conversation with themselves. std::async is a toy. std::thread is too low-level. std::future doesn’t compose. So you reach for TBB, or another third-party library,…
The 13 application areas where OpenCL and CUDA can be used
Which algorithms map is best to which accelerator? In other words: What kind of algorithms are faster when using accelerators and OpenCL/CUDA? Professor Wu Feng and his group from VirginiaTech took a close look at which types of algorithms were a…
Intel OpenCL CPU-drivers 2013 beta with OpenCL 1.2 support
This article is still work-in-progress Intel has just released its OpenCL bit CPU-drivers, version 2013 bèta. It has support for OpenCL 1.1 (not 1.2 as for the CPU) on Intel HD Graphics 4000/2500 of the 3rd generation Core processors (Windows only). The…
How expensive is an operation on a CPU?
Programmers know the value of everything and the costs of nothing. I saw this quote a while back and loved it immediately. The quote by Alan Perlis is originally about Perl LISP-programmers, but only highly trained HPC-programmers seem to have obtained…
Basic Concepts: online kernel compiling
Typos are a programmers worst nightmare, as they are bad for concentration. The code in your head is not the same as the code on the screen and therefore doesn’t have much to do with the actual problem solving. Code highlighting…
Kernels and the GPL. Are we safe and linking?
Disclaimer: I am not a lawyer and below is my humble opinion only. The post is for insights only, not for legal matters. GPL was always a protection that somebody or some company does not run away with your code and…
Basic Concepts: OpenCL Convenience Methods for Vector Elements and Type Conversions
In the series Basic Concepts I try to give an alternative description to what is said everywhere else. This time my eye fell on alternative convenience methods in two cases which were introduced there to be nice to devs with i.e. C/C++ and/or…
Installing both NVidia GTX and AMD Radeon on Linux for OpenCL
August 2012: article has been completely rewritten and updated. For driver-specific issues, please refer to this article. Want to have both your GTX and Radeon working as OpenCL-devices under Linux? The bad news is that attempts to get Radeon as a…
AMD OpenCL coding competition
The AMD OpenCL coding competition seems to be Windows 7 64bit only. So if you are on another version of Windows, OSX or (like me) on Linux, you are left behind. Of course StreamHPC supports software that just works anywhere (seriously, how…
Qt Creator OpenCL Syntax Highlighting
With highlighting for Gedit, I was happy to give you the convenience of a nice editor to work on OpenCL-files. But it seems that one of the most popular IDEs for C++-programming is Qt Creator. So you receive another free syntax highlighter….
Install OpenCL on Debian, Ubuntu and Mint orderly
If you read different types of manuals how to compile OpenCL software on Linux, then you can get dizzy of all the LD-parameters. Also when installing the SDKs from AMD, Intel and NVIDIA, you get different locations for libraries, header-files, etc….
Intel’s OpenCL SDK examples for GCC
Update august 2012: There is a new post for the latest Linux examples. Note: these patches won’t work anymore! You can learn from the patches how to fix the latest SDK-code for GCC and Linux/OSX. Code-examples are not bundled with the…
ImageJ and OpenCL
For a customer I’m writing a plugin for ImageJ, a toolkit for image-processing and analysis in Java. Rick Lentz has written an OpenCL-plugin using JOCL. In the tutorial step 1 is installing the great OS Ubuntu, but that would not be…
Engineering GPGPU into existing software
At the Thalesian talk about OpenCL I gave in London it was quite hard to find a way to talk about OpenCL for a very diverse public (without falling back to listing code-samples for 50 minutes); some knew just everything about…
Qt Hello World
The earlier blog-post was about how to use Qt Creator with OpenCL. The examples are all around Images, but nowhere a simple Hello World. So here it is: AMD’s infamous OpenCL Hello World in Qt. Thank’s to linuxjunk for glueing the…
Using Qt Creator for OpenCL
More and more ways are getting available to bring easy OpenCL to you. Most of the convenience libraries are wrappers for other languages, so it seems that C and C++ programmers have the hardest time. Since a while my favourite way…














