Overview
This course covers the learning outcomes and goals of understanding the future of accelerator programming in C++. Students will learn about accelerator hardware models, different vendors, programming techniques for accelerators, concurrency, memory management, computation limitations, parallel primitives, and writing accelerator functions using various tools like C++AMP, HSL, and VexCL. The teaching method includes a presentation style with slides. The intended audience for this course is programmers and developers interested in exploring advanced C++ programming for accelerators.
Syllabus
Intro
About Me
Accelerator Programming
Accelerator Hardware Model
Accelerators and Vendors
Programming Accelerators
Concurrency
Memory Management: Explicit (cont.)
Memory Management Convenient
Memory Management Reversed
Computation Limitations
Parallel Primitives: Fancy Iterators
Writing Accelerator Functions (C++AMP)
Writing Accelerator Functions (HSL)
Writing Accelerator Functions (VexCL)
Kernel Space Exploration (Obsidian)
Kernel Space Exploration (Halide)
Conclusion
Taught by
CppNow