This course will be delivered as an ONLINE COURSE for remote participation due to the COVID-19 measures enforced by most European governments.
Description
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)
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