CUDA/OpenCL Training

Acceleware CUDA/OpenCL Training Acceleware now offers customized CUDA/OpenCL training courses. Clients can access our top rated training on techniques for parallel programming in CUDA, OpenCL, MPI and many others.

Acceleware's customized CUDA/OpenCL training consists of classroom lectures and several practical hands-on exercises.

We recommend that the attendees have a background C/C++ (2 or more years) in order to get the most out of the course. Contact services@acceleware.com if you are interested in a beginner level CUDA/OpenCL training class.

Attendees should be familiar with the following C/C++ concepts:

  • Pointers and pointer to pointers (*, **)
  • Taking the address of a variable (&)
  • Writing functions, for loops, if/else statements
  • Printing to standard output (printf, cout)
  • Memory allocation and deallocation
  • Arrays and indexing
  • Structures
  • General debugging

Entirely optional (but helpful) experiences:

  • Multithreading
  • Optimization of programs
  • Low level programming (e.g., assembly languages)
  • Familiarity with computer architectures

Here is an example of our CUDA/OpenCL training syllabus for a 5 or 2 day course:
 

Acceleware 5 Day CUDA/OpenCL Course

Mon-Thu: 9:00AM – 5:00PM (incl. 1 hour lunch)
Fri: 9:00AM – 12:00PM

  • Day 1:
    • Lecture: Overview of GPU Computing
    • Hands-on-Exercise: Memory Allocation and Memory Transfers
    • Lecture: Data-Parallel Architectures and the GPU Programming Model
    • Hands-on-Exercise: Simple Kernels
    • Lecture: The GPU Memory Model & Thread Cooperation
    • Hands-on-Exercise: Shared Memory and Constant Memory
  • Day 2:
    • Lecture: Textures
    • Hands-on-Exercise: Textures
    • Lecture and Hands-on-Exercise: Asynchronous Operations
    • Lecture: Other GPU Features
    • Lecture: Debugging GPU Programs
    • Hands-on-Exercise: Debugging Tools and Techniques
  • Day 3:
    • Lecture: Introduction to Optimization
    • Hands-on-Exercise: Arithmetic Optimization
    • Lecture: Resource Management, Latency and Occupancy
    • Hands-on-Exercise: Occupancy Calculator
    • Lecture: Memory Performance Optimizations
    • Hands-on-Exercise: Memory Performance Optimizations
  • Day 4 & 5:
    • More Hands-on-Exercises: Building GPU Prototypes and Specific client applications
    • Running on servers and clusters
Acceleware 2 Day CUDA/OpenCL Course

First Day: 9:00 am – 5:00 pm
Second Day: 9:00 am – 4:00 pm

  • Day 1:
    • Lecture: Overview of GPU Computing
    • Hands-on-Exercise: Memory Allocation and Memory Transfers
    • Lecture: Data-Parallel Architectures and the GPU Programming Model
    • Hands-on-Exercise: Simple Kernels
    • Lecture: The GPU Memory Model & Thread Cooperation
    • Hands-on-Exercise: Shared Memory and Constant Memory
    • Lecture: Asynchronous Operations
  • Day 2:
    • Hands-on-Exercise: Asynchronous Operations
    • Lecture: Introduction to Optimization
    • Hands-on-Exercise: Arithmetic Optimization
    • Lecture: Resource Management, Latency and Occupancy
    • Hands-on-Exercise: Occupancy Calculator
    • Lecture and Hands-on-Exercise: Memory Optimizations

Acceleware Past Training Course Customers
Customers of previous Acceleware CUDA/OpenCL Courses

Contact us for pricing information and to schedule your training session.