Difference between revisions of "Code Optimisation and Performance Tuning (November 2015)"
(Created page with "{{training event info |description=Advanced Programming techniques for performance improvement of numerical simulation codes |fields=Computational Science |event type=Course |loc...") |
(→Course overview) |
||
Line 9: | Line 9: | ||
== Course overview == | == Course overview == | ||
− | + | ||
+ | Numerical algorithms have to be implemented very efficiently in order to meet their performance requirements. Therefore, knowledge about performance optimisation techniques becomes increasingly important also for application developers who could trust on compilers and other software tools in the past to unleash the computational power of their systems. This training provides background and applicable knowledge for the development of efficient numerical simulation programs that achieve high performance on recent computer systems. | ||
+ | |||
+ | Starting from current computer architectures, methods for the performance tuning of serial programs will be discussed. The efficient usage of memory hierarchies and arithmetic logic units are central content for it: caches, loop optimisations, vectorization and other implementation techniques. | ||
+ | |||
+ | Further topics about optimisation of parallel programs comprise the use of OpenMP on shared memory computers as well as MPI, the Message-Passing Interface, for distributed memory computers. | ||
+ | |||
+ | === Prerequisite knowledge === | ||
+ | |||
+ | * Programming in C, C++ or Fortran | ||
+ | * Knowledge of OpenMP and MPI for part of the training devoted to parallel programs | ||
== Course web page and registration == | == Course web page and registration == |
Revision as of 15:37, 8 June 2015
Name | Code Optimisation and Performance Tuning (November 2015) |
---|---|
Description | Advanced Programming techniques for performance improvement of numerical simulation codes |
Type of event | Course |
Location | Stockholm (PDC) |
Start date | 2015-11-26 |
End date | 2015-11-27 |
Course overview
Numerical algorithms have to be implemented very efficiently in order to meet their performance requirements. Therefore, knowledge about performance optimisation techniques becomes increasingly important also for application developers who could trust on compilers and other software tools in the past to unleash the computational power of their systems. This training provides background and applicable knowledge for the development of efficient numerical simulation programs that achieve high performance on recent computer systems.
Starting from current computer architectures, methods for the performance tuning of serial programs will be discussed. The efficient usage of memory hierarchies and arithmetic logic units are central content for it: caches, loop optimisations, vectorization and other implementation techniques.
Further topics about optimisation of parallel programs comprise the use of OpenMP on shared memory computers as well as MPI, the Message-Passing Interface, for distributed memory computers.
Prerequisite knowledge
- Programming in C, C++ or Fortran
- Knowledge of OpenMP and MPI for part of the training devoted to parallel programs
Course web page and registration
Available in week 24/2015