2019-02-25 Parallel Programming of High Performance Systems @ LRZ (HPPB1W18)

Date:Monday, February 25 - Friday, March 1 2019, 9:00-18:00
Location:LRZ Building, University campus Garching, near Munich, Kursraum 2
Contents:

This course, a collaboration of Erlangen Regional Computing Centre (RRZE) and LRZ, is targeted at students and scientists with interest in programming modern HPC hardware, specifically the large scale parallel computing systems available in Jülich, Stuttgart and Munich.

Each day is comprised of approximately 4 hours of lectures and 3 hours of hands-on sessions.

Tentative schedule:

Day 1

  • Introduction to High Performance Computing (Weinberg)
  • Programming Environment at LRZ, Secure shell (Weinberg)
  • Handling console and GUI based interfaces (Weinberg)
  • Building programs with GNU MAKE (Ohlerich)
  • Basics of software engineering (Guillen)

Day 2

  • Basic parallel programming models: elements of MPI and OpenMP (Weinberg)
  • Guided Tour (Weinberg)
  • Processor architectures (Hager)

Day 3

  • Principles of code optimization: unrolling, blocking, dependencies, C++ issues, bandwidth issues, performance projections (Hager)
  • Advanced MPI programming (Afzal)

Day 4

  • Parallel architectures: multi-core, multi-socket, ccNUMA, cache coherence and affinity, tools for handling memory affinity (Hager)
  • Parallel algorithms: data parallelism, domain decomposition, task parallelism, master-worker, granularity, load balancing, scalability models (Hager)
  • Advanced OpenMP programming (Weinberg)
  • Intel tools: OpenMP performance, correctness and examples (Martone)
  • Social Event: Pizza and Talk "Fooling the masses" by G. Hager

Day 5

  • Performance analysis tools: Intel APS and ITAC (Iapichino)
  • Performance analysis tools: Intel VTune Amplifier amd Advisor (Iapichino)
  • Performance analysis with Score-P and Scalasca (Navarrete)
  • Source code versioning with SVN and git (Martone)
PrerequisitesGood working knowledge of at least one of the standard HPC languages: Fortran 95, C or C++.
Language:English
Teachers:G. Hager, A. Afzal (RRZE), C. Guillen, L. Iapichino, M. Martone, C. Navarrete, M. Ohlerich, V. Weinberg (LRZ)
Registration:

Via the LRZ registration form. Please choose course HPPB1W18.

Hands-on:

The exercises will be done on the IvyMUC system at LRZ.

Contact:Dr. Volker Weinberg (LRZ)