[Haifux] Towards the GPGPU lecture series

Orna Agmon Ben-Yehuda ladypine at gmail.com
Sun Oct 30 18:13:24 MSK 2011


Hello everyone,

General Purpose GPU programming became a hot topic in the last few years,
ranging from academic studies to being used by commercial software
products. As an example, three out of the world’s top10 supercomputers
(June2011 list) contain GPUs in them. This series of lectures focuses on
OpenCL, the open standard for parallel programming of heterogeneous systems.

On November 14th Haifux will begin a 4-meeting series (8 hours in total) of
practical, hands-on GPGPU, given by Ofer Rosenberg from AMD Israel (
http://www.linkedin.com/in/oferrosenberg ).  The meetings will take place
at Taub 6, on alternate Mondays (14/11, 28/11, 12/12, 26/12), 18:30-20:30,
but watch our site (http://haifux.org) or join the announcement mailing
list on the same page for announcements on changes (in particular, room
changes).
The outline of the talks will be as follows (see detailed syllabus below):

1. GPGPU introduction
2.OpenCL introduction
3.OpenCL Dos and Don'ts
4.OpenCL optimization and profiling

The third and fourth meetings will include hands-on experience, under
Ofer's guidance. For these meetings, each participant will have to bring a
laptop with:
1. Linux (this is Haifux, the Haifa Linux Club)
2. An x86 processor, either AMD or Intel. An IPAD is not good for this
purpose.
3. AMD's OpenCL implementation installed. It works both on AMD and Intel,
installation details for those who need them will follow.
4. Eclipse installed.
5. If possible, an AMD GPU, with a version number of 54 or higher.  Use
“lspci | grep VGA” to find the GPU vendor & model.

To arrange for machine access for those who do not have a suitable laptop,
as well as prepare for the series,* please reply in private to
webmaster at haifux.org*
*if you intend to attend the series.
*If you have (or do not have) the required gear. In particular, if you have
an AMD GPU.

 Please forward to whomever you see fit.

*Syllabus: Introduction to GPGPU Programming*

General Purpose GPU programming became a hot topic in the last few years,
ranging from academic studies to being used by commercial software
products. As an example, three out of the world’s top10 supercomputers
(June2011 list) contain GPUs in them. This series of lectures focuses on
OpenCL, the open standard for parallel programming of heterogeneous systems.

1. GPGPU introduction
The first lecture is an introduction to GPU architecture and GPGPU
programing. It covers the differences between GPU and CPU architectures,
and how these differences impose restrictions on programming GPUs. We will
also touch the issue of memory aspects of GPU architecture and the overall
system (CPU & GPU)

2. OpenCL overview
>From the Khronos website: “OpenCL™ is the first open, royalty-free standard
for cross-platform, parallel programming of modern processors found in
personal computers, servers and handheld/embedded devices”. This lecture
will provide an overview of OpenCL, covering the API programming aspects
(such as OpenCL objects, contexts, queues, events, etc.) as well as the
language enhancements (such as vectors, images, samplers, built-in
functions etc.)

3. OpenCL Do’s and Don’ts
This lecture provides a practical guide for programming in OpenCL by doing
a hands-on guided experience of writing OpenCL applications and kernels.
Starting from basic examples through more complex scenarios, we will
provide some tips for writing code that provides the required correct
results. We will also provide some performance tips.

4. OpenCL Optimization & Profiling
This lecture focuses on performance aspects of OpenCL. We will provide a
hands-on experience of improving performance of OpenCL kernels by
optimizing a specific example. In addition we will show ways to profile the
kernel, including working with profiling tools such as AMD kernel profiler
and gDebugger. Note that some of issues presented in this lecture will be
possible only on AMD GPUs.

--
Orna Agmon Ben-Yehuda.
http://ladypine.org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://haifux.org/pipermail/haifux/attachments/20111030/0bbe990c/attachment.html 


More information about the Haifux mailing list