In one hour we go from a C++ program to an optimised OpenCL program for CPUs and GPUs. You'll learn the good parts of easy speed-up and the struggles you need to get along with. Presented subjects are: flattening of code, parallelisation, memory-management, data-location awareness, rooftop-model, tools and more. At the end there is time for discussion, to compare to alternatives like OpenMP 4.0 and CUDA, and to briefly discuss FPGAs and embedded processors.
When you know C and C++, you have the right knowledge to start programming OpenCL. The presentation is targeted towards programmers, so most high-level concepts are left out.
What you will learn
The goal is to give insights into what type of software can be successfully ported to OpenCL, and how to do it without making the beginner mistakes.
Vincent Hindriksen is founder and CEO of the Amsterdam based StreamComputing BV, a company specialised in performance engineering with a strong focus on GPU-computing. The company is one of the best knownGPGPU-companies in Europe and has customers world-wide.