CIS 4205 Effective Use of High-Performance Computing
NOT OFFERED THIS YEAR Spring, usually weeks 1–7. 2 credits. Prerequisites: proficiency in C, C++, Fortran, or Fortran 90.
A hands-on introduction to high-performance computing (HPC) for graduate students or advanced undergraduate students who will use HPC as a tool in their work. Various HPC architectural platforms are described with a focus on computational clusters. Students learn how to identify and exploit parallelism in algorithms and legacy applications; how to measure parallel speedup and efficiency; and how to diagnose bottlenecks affecting performance. Parallel programming with MPI, OpenMP, and task-farming techniques (for web services and grid computing) is covered in depth. Examples and assignments are taken from typical application areas such as matrix and Monte Carlo computations. The goal of the class is for students to gain practical HPC experience for use in their specific fields of research.