Blog Summary Widget

This course will concentrate on teaching students the fundamentals of OpenCL, an open standard for programming heterogenous multi-core processors using a parallel programming language (based on ANSI-C99).


The goal of the course is to give students the opportunity to:


  1. BulletGain an understanding of OpenCL as a technology framework for enabling heterogenous parallel processing.

  2. BulletBecome familiar with the tools and techniques required to develop an efficient OpenCL enabled application.

  3. BulletLearn techniques for adapting existing algorithms to a data and/or task parallel programming model.

  4. BulletUnderstand the different characteristics of modern multi-core hardware architectures (e.g. CPUs vs. GPUs).

Subscribe to RSS Feed

Introductory Session


  1. BulletMonday 11 January - 9am-12pm [slides]


Evening Courses


  1. BulletThursday 14 January   - 6pm - 7:30pm [part1] [part2]

  2. BulletThursday 21 January   - 6pm - 7:30pm

  3. BulletThursday 28 January   - 6pm - 7:30pm

  4. BulletThursday   4 February - 6pm - 7:30pm

  5. BulletThursday 11 February - 6pm - 7:30pm

  6. BulletThursday 18 February - 6pm - 7:30pm

  7. BulletThursday 25 February - 6pm - 7:30pm


  1. Bullet Christopher Harris [web]

  2. Bullet Derek Gerstmann [web]

  Instructors

  Course Description

  Course Schedule

  References

Khronos


  1. BulletThe OpenCL 1.0 Specification (v1.0.48). [pdf]

  2. BulletThe OpenCL 1.0 Quick Reference Card. [pdf]

  3. BulletThe OpenCL 1.0 Man Pages. [web]


Vendor Documentation


  1. BulletAMD. ATI Stream Software Development Kit. [web]

  2. BulletAMD. A Brief History of GPGPU Computing. [web]


  1. BulletNVIDIA. The CUDA Architecture. [pdf]

  2. BulletNVIDIA. OpenCL Programming Guide [for NVIDIA GPUS].  [pdf]

  3. BulletNVIDIA. OpenCL Best Practices Guide [for NVIDIA GPUS].  [pdf]


Articles & Papers


  1. BulletBuck, I., Foley, T., Horn, D., Sugerman, J., Fatahalian, K., Houston, M., and Hanrahan, P.

     Brook for GPUs: Stream computing on graphics hardware.

     ACM Transactions on Graphics 23, 3, 777–786. 2004. [pdf]


  1. BulletGerstmann, D., Peercy, M., Segal, M.

     A Performance-Oriented Data Parallel Virtual Machine for GPUs.

     ACM SIGGRAPH Sketch 2006. [pdf]


  1. BulletOwens, J. D. Luebke, D. Govindaraju, N. Harris, M. Kruger, J. Lefohn, A. E. Purcell, T. J.

     A Survey of General-Purpose Computation on Graphics Hardware.

     Computer Graphics Forum, 2007, VOL 26; NUMBER 1, pages 80-113. [pdf]

  Updates