This is an online reading course to train computational scientists and software engineers in mixed-precision programming.
Course Objectives:
- Understand floating-point numbers and how different precisions are stored on digital computers;
- Learn how precision of floating-point number can affect
- computational speed;
- energy consumption;
- accuracy of computation;
- Develop an understanding of the mathematical considerations required when developing mixed-precision code;
- Develop an understanding of how code structure can affect the suitability of whether a code will perform well when using mixed-precision.
Course Material:
- Unit 1: Introduction (PDF)
- Unit 2: Introduction to floating-point numbers (PDF)
- Unit 3: Single vs double precision: computational speed and energy consumption (PDF)
- Unit 4: Single vs double precision: accuracy of floating-point arithmetic (PDF)
- Unit 5: Mathematical considerations for mixed-precision codes (PDF)
- Unit 6: Code structure considerations for mixed-precision codes (PDF)
- Unit 7: Conclusions (PDF)