COSC 89.25 GPU Programming and High Performance Computing
The GPU Computing course introduces students to the basic programming and algorithmic techniques for developing the modern parallel computer code for high-performance computing applications. Course topics will cover the fundamentals for GPU (CUDA) and CPU (multi-threading) parallel programming, parallel computer architecture, parallel data structures, parallelizable linear algebra, conjugate gradient and multigrid solvers, particle systems and N-body problems, and vectorization. The materials will be illustrated using large-scale computing examples and applications from computer graphics, computational physics, and machine learning.
Prerequisite
Recommended Preparation: COSC 50, COSC 70, Experience with C++, and Comfort with multi-variable calculus and linear algebra.