Typical duration: 1 day
Course code: PR02
This course provides a deep dive into the operation of compilers, their options and their construction. The wide range of available switches is discussed in depth, with partiular focus on options relevant to numerical processing and result safety. A refresher of compiler construction is also provided, and in that context scripting options are presented.
Training topicsAdvanced compiler features
Exploiting modern hardware to its limits
Our hands-on lab demonstrates the concepts discussed in practice. We focus primarily GCC/G++ and the Intel C/C++ Compiler, and using LLVM as a supporting tool.
After the course, the students will:
- Use advanced options of compilers to speed up programs
- Deeply understand the wide range of available compiler switches, optimize floating point
- Take control of the compiler from within the source and write compiler independent code
- Understand how to extend compilers
Controlling features such as inlining, floating point switches, results from advanced optimization
Result safety and reproduction
Tapping into compilers and scripting them