Skip to main navigationSkip to main content
The University of Southampton

An introduction to OpenCL Programming Event

24 October 2012
NAG (Numerical Algorithms Group), Manchester

Event details

Event from Computational Modelling Group

This course provides an introduction to the development of OpenCL programs for execution on GPUs from NVIDIA and AMD, as well as on multi-core CPUs. Topics covered in the lectures will include: motivation for many-core and heterogeneous architectures; an overview of GPU architectures; an introduction to relevant parallel programming models including data parallelism and SIMT multithreading; OpenCL kernels, work items and workgroups; efficient use of the memory hierarchy including coalescence; conditional code and divergence; parallel reductions; profiling program execution and optimising performance; common pitfalls; availability of libraries; future roadmaps for OpenCL; and resources for further study. The course will consist of lectures and hands-on practical sessions. We will use the C++ OpenCL API for this course for which some familiarity with C++ will be beneficial.

Aimed at: Anyone interested in writing OpenCL programs for GPUs and multi-core CPUs.

Prerequisites: Attendees should be competent in programming in C/C++ and be familiar with working in a UNIX environment (i.e., you should be able to connect to a machine remotely, use basic UNIX commands, edit a source file and understand the elementary steps in compiling object files and creating executables). No prior experience of parallel computing is required.

After Course Attendees Will: Be able to develop simple OpenCL programs, and further develop their skills by studying the OpenCL example codes provided by vendors including AMD, NVIDIA, Intel and IBM.


To book your place visit HECToR Training.

An event from our Computational Modelling Group

Bringing together Southampton university researchers using applied Computational Modelling to support the understanding and advancement of physical and natural sciences, engineering, medicine, economy, society, psychology.

Find out more
Privacy Settings