Description
This course includes topics on code optimization for x86 platforms and efficient code parallelization on node-level using OpenMP threading. Advanced aspects of threading and optimization, such as selected topics of new features in OpenMP 5.0 standard, will be covered during the course.
Learning outcome
- Awareness of modern features in x86 CPUs
- Ability to vectorize computations
- Ability to use advanced features of OpenMP
- Ability to increase code performance using threading and x86 optimization
Prerequisites
- Good knowledge of C/C++ or Fortran
- Good knowledge of threading using OpenMP
- Basic knowledge of modern CPU architectures
Agenda (preliminary)
Day 1: Wednesday, May 22
- Course introduction and intro to CSC's new systems
- Introduction to the latest Intel(r) Xeon(r) Scalable Processor
- Performance analysis methods and tools
- Vectorization using SIMD
Day 2: Thursday, May 23
- OpenMP SIMD vectorization
- Optimizing memory accesses
Day 3: Friday, May 24
- Advanced OpenMP features
- OpenMP performance considerations
- Future outlook
Lecturers:
Sebastian von Alfthan (CSC), Mikko Byckling (Intel), Fredrick Robertsén (CSC)
Language: English
Price: Free of charge