This course includes topics on code optimization for x86 platforms (Intel and AMD CPUs) 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 and content level
-
Good knowledge of C/C++ or Fortran;
-
Good knowledge of threading using OpenMP;
-
Basic knowledge of modern CPU architectures.
The content level of the course is broken down as: beginner's - 0%, intermediate - 20%, advanced - 80%, community-targeted content - 0%.
Agenda
Day 1, Tuesday 18 May 2021
09:00 - 12:30
- Introduction to performance engineering
- Overview of modern multicore CPUs
12:30 - 13:30 Lunch break
13:30 - 16:30
- Intel performance analysis tools
- AMD performance analysis tools
Day 2, Wednesday 19 May 2021
09:00 - 12:00
- Vectorization
12:00 - 13:00 Lunch break
13:00 - 16:30
- Optimizing memory access
- Other single core optimization topics
Day 3, Thursday 20 May 2021
09:00 - 12:00
- OpenMP tasks
12:00 - 13:00 Lunch break
13:00 - 16:30
- Threading optimization
- Future outlook on OpenMP
Lecturers:
Jussi Enkovaara (CSC), Mikko Byckling (Intel), Michael Klemm (AMD)
Language: English
Price: Free of charge (3 training days)
For further detailed information and registration please visit:
https://events.prace-ri.eu/e/NodeLevelPerformanceOptimization_2021
REGISTRATION CLOSED
If you have registered to this course and you are not able to attend, please CANCEL your registration in advance by sending an email to patc@csc.fi