ARCHER, the UK's national supercomputing service, offers training in software development and high-performance computing to scientists and researchers across the UK. As part of our training service, in conjunction with DiRAC, we will be running a 2 day ‘Performance Analysis Workshop’ training session.
Current and future supercomputing architectures face a dramatic growth of parallelism and heterogeneity on multiple levels. As a result, it is close to impossible for researchers being code developers to predict which parts of their code perform, which realisation decisions impact the scalability, which choice of data structures are reasonable for a specific architecture, and so forth. Most decisions are based upon experience, upon intuition and upon a limited understanding of the code's performance.
To get a better understanding of the code performance and to guide performance engineering, it is inevitable for computational scientists and engineers to conduct measurements and to study the performance in detail; in the best case prior to rewriting software or manual tuning. Performance analysis tools, a generalisation of the classic profiler, are the right tools to obtain this insight. However, they themselves require a decent level of understanding, experience and expertise to be used economically – which adds to the hardness and complexity of the underlying problem. This workshop is one event in a sequence of meetings where performance analysis tools are introduced, some hands-on training is done and existing mature source code is analysed. It focusses primarily on MPI, as a sibling course on shared memory and manycore architectures is given at EPCC earlier in the year.
The workshop is organised in cooperation with the VI-HPS: The Virtual Institute - High Productivity Supercomputing (VI-HPS) is a consortium of world-leading developers of performance analysis tools. Besides streamlining and improving the research on these tools, the consortium also offers workshops on how to use their tools on a regular basis. Such a two-day course shall be offered at Durham open to DiRAC, PATC and Durham researchers. The target group is computational scientists and researchers that already use high performance computing (HPC) facilities for computationally demanding challenges, that are actively involved in HPC code development, and can directly benefit in their research from a better understanding of why their code performs in a certain way.
Tobias Weinzierl
Brian Wylie, David Henty
Note that registration for this course is now closed. If you are interested in attending, please contact us at training@staffmail.ed.ac.uk, in case a place has become available due to a cancellation.
Places on this course are strictly limited, and will be allocated on a first-come, first served basis, but with some priority given in the hands-on sessions for those working with codes deemed most suitable for the purposes of the workshop.
Agenda:
It is a two-day course, each day split into three parts (A, B and C):
• Day 1/Part A: 09:30-11:00
Welcome & general introduction to performance analysis paradigms: differences of profiling and tracing, machine specifics, success stories, inefficiency pattern identification, and so forth.
Lecture on profiling with Scalasca, Score-P & CUBE.
Broadcasted via webinar to DiRAC members.
• Day 1/Part B: 11:30-13:00
Hands-on session profiling with Scalasca,Score-P & CUBE.
Material is freely available to remote DiRAC members; questions can be asked through webinar interface.
• Day 1/Part C: 14:00-17:30
Apply previously discussed tools to selected research codes with help of presenters.
• Day 2/Part A: 09:30-11:00
Lecture on complementary performance analysis tools (Vampir, TAU, Kcachegrind, …).
Outlook: Recent trends in performance analysis research w.r.t. upcoming exascale computers and applications.
Correctness checking with MUST. Trace analyses with Scalasca & Vampir.
Broadcasted via webinar to DiRAC members.
• Day 2/Part B: 11:30-13:00
Hands-on sessions with MUST and Scalasca.
Material is freely available to remote DiRAC members; questions can be asked through webinar interface.
• Day 2/Part C: 14:00-17:30
Apply previously discussed tools to selected research codes with help of presenters.