The course focuses on modern aspects of performance engineering on the CPU. It will cover performance metrics and measurement techniques, performance analysis, benchmarking and micro-benchmarking, performance models (analytical and statistical) and performance prediction. In addition, it will be shown how to apply these techniques for various applications by taking advantage of the algorithmic features of the processor architecture and the problem at hand. The ultimate goal of the course is to provide students with a knowledge that they can use systematically in the process of writing the code that will run fastest on the processor they use. When students successfully complete the course, they will be able to successfully apply performance engineering approaches in any application by combining the techniques taught and furthermore, they will have the ability to develop their own performance engineering tools that they can use in different applications.
SU Credits : 3.000
ECTS Credit : 6.000
Prerequisite :
Undergraduate level CS 300 Minimum Grade of D
Corequisite :
-