This course reviews HPC practices for achieving high efficiency in scientific codes on modern accelerators from multiple vendors, with a focus on maximizing productivity across the diverse systems currently used in academia and industry. The GPU accelerators considered employ multiple programming models, which will be described in depth.
Performance modeling will also be introduced to demonstrate how accurate models can establish user expectations, diagnose system inefficiencies, and guide code optimization.
The coding exercises will concentrate on the programming models presented in lectures and are designed to produce results
consistent with the performance models developed during the course.