Course Description:
This course covers the advanced design, analysis, and optimization of high-performance applications. Topics include high-performance computer architectures, including accelerators and systems-on-chip, performance modeling and benchmarking, data and control dependence analysis, data locality estimation, memory hierarchy management, techniques for exposing parallelism, and code transformations. Different workloads are studied.Prerequisite:
CS 5329 and CS 5348 or equivalent with a grade of B or higher, or consent of the instructor.
Course Objectives:
The students will be able to:
- describe architectural characteristics of high-performance computing (HPC) systems
- explain how architecture affects performance and energy consumption of HPC applications
- discuss benchmarking and performance evaluation methodologies of HPC applications and systems
- apply performance analysis and modeling techniques to different classes of HPC applications
- discuss and apply HPC program optimization techniques
- analyze performance and energy efficiency issues
- design systematic performance studies of HPC applications and systems
Course Notes:
Course effective Fall 2017. Available only for computer science majors.
Section Info:
It is expected that CS 5348 will be removed as a pre-requisite for Fall 2018.