CMPUT 382: Introduction to GPU Programming


This course on heterogeneous parallel computing will deal with:

  • CUDA Language
  • Functionality and maintainability of GPU
  • How to deal with scalability
  • Portability issues
  • Parallel programming API, tools and techniques
  • Principles and patterns of parallel algorithms
  • Processor architecture features and constraints


  • Learn how to program heterogeneous computing environments
  • Learn how to solve computing problems using parallel processing frameworks
  • Understand the limitations of modern heterogeneous computers from a hardware and software point-of-view

Course Work

  • Assignments
  • Labs
  • Final Exam