Introduction to High Performance Computing

Europe/Stockholm
KTH Lecture Hall E3

KTH Lecture Hall E3

KTH main campus Valhallavägen 79
Erwin Laure (PDC - Center for High-Performance Computing), Michael Hanke (CSC - KTH School of Computer Science and Communication), Stefano Markidis (PDC - KTH)
Description

The PDC Center for High Performance Computing and the KTH School of Computer Science and Communication (CSC) welcome you to our summer school introductory course on high-performance computing. This course is part of the Swedish e-Science Education.

Interested students and researchers (with academic or industrial backgrounds) from all over the world are invited to apply to attend the course, which will be held at the KTH main campus in Stockholm during late August. (Please note that for KTH Masters students, the summer school is available as course number DD2358.)

This course provides the skills needed to utilize high-performance computing (HPC) resources, and includes an introduction to a range of important topics, such as:

  • HPC programming languages, libraries and tools,
  • modern computer architectures,
  • parallel algorithms, and
  • optimizing serial and parallel programs.
Case studies in various scientific disciplines will be used to help illustrate these topics. The course consists of both lectures and guided hands-on lab sessions. Participants who successfully complete the course (including the associated programming project) will be awarded 7.5 ECTS (European Credit Transfer and Accumulation System) points.

The course is suitable for scientists and graduate students who are interested in high-performance computing. Applicants must be able to communicate in English, and have previous programming experience.

The PDC Summer School receives considerable funding from SeSE, the Swedish e-Science Education. The two leading e-Science centres in Sweden, SeRC (www.e-science.se) and eSSENCE (http://essenceofescience.se) have taken the initiative to establish a graduate school, SeSE, to fund, develop and offer basic training in fields where the use of e-Science is emerging and where education can have an immense impact on the research, but also to provide advanced training for students in fields that are already computer-intensive. The school is open to all graduate students in Sweden, and is built upon the previous successful schools NGSSC and KCSE. SeSE will be a meeting place for graduate students using e-Science tools and techniques.

2016 will be the 21st year that the course has been held – participants will become part of the long tradition of the PDC Summer School, which you can read about in the course pages for all the previous years.

Please note that there are a limited number of places available in the summer school, so be sure to register early! Course registration opens on March 14, and closes on May 31, 2016.

    • 08:30 09:15
      Registration - room E3 at KTH Main campus 45m E3 at KTH Main campus

      E3 at KTH Main campus

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
    • 09:15 10:15
      Welcome to PDC and the Summer School 1h E3

      E3

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      Speaker: Erwin Laure (PDC-HPC)
      Slides
    • 10:15 10:30
      Coffee Break 15m
    • 10:30 12:15
      High-Performance Computer Architecture 1h 45m E3

      E3

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      Speaker: Erik Hagersten
      Slides
    • 12:15 14:00
      Picnic - KTH garden 1h 45m
    • 14:00 15:00
      High-Performance Computer Architecture 1h E3

      E3

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      Speaker: Erik Hagersten
      Slides
    • 15:00 15:15
      Coffee Break 15m
    • 15:15 17:00
      High-Performance Computer Architecture 1h 45m E3

      E3

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      Speaker: Erik Hagersten
      Slides
    • 09:15 10:00
      Concepts and Algorithms for Scientific Computing 45m E3

      E3

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      In this talk we will present of what Scientific Computing is and what the challenges are. In particular, we will discuss the "simulation pipeline". The present and future of Scientific Computing is massively parallel. Consequences for modelling and examples for algorithm contruction for scalable computing are given.
      Speaker: Michael Hanke
      Slides
    • 10:00 10:15
      Coffee Break 15m
    • 10:15 12:15
      Concepts and Algorithms for Scientific Computing 2h E3

      E3

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      Speaker: Michael Hanke
    • 12:15 13:30
      Individual Lunch 1h 15m
    • 13:30 14:30
      Introduction to PDC's Environment 1h E3

      E3

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      Slides
    • 14:30 14:45
      Coffee Break 15m
    • 14:45 16:45
      Lab: Introduction to PDC's Environment 2h Röd and Ora Lab-rooms (Röd and Ora Lab-rooms)

      Röd and Ora Lab-rooms

      Röd and Ora Lab-rooms

    • 14:45 16:45
      PDC Machine Room Tour 2h
    • 09:15 10:00
      Shared memory programming, OpenMP 45m E3

      E3

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      Two common ways of speeding up programs are to use processes or threads executing in parallel. The second week of the Summer School presents process-based parallel computing using MPI. In this lecture parallelization using threads will be discussed. Threads can be managed in different ways, e.g. using a low level library, like the POSIX threads library. The lecture deals with OpenMP, which is a more convenient way to use threads. OpenMP is a specification for a set of compiler directives, library routines, and environment variables that can be used to specify shared memory parallelism in Fortran and C/C++ programs. The threaded program can be executed on a shared memory computer (e.g. a multi- core processor). Typically, the iterations of a time consuming loop are shared among a team of threads, each thread working on part of the iterations. The loop is parallelized by writing a directive in the code and a compiler or a pre- processor will generate parallel code. Using short code examples, the lecture covers the most important OpenMP-constructs, how to use them and how not to use them. A few more realistic examples are presented as well.
      Speaker: Christoph Kessler
      Slides
    • 10:00 10:15
      Coffee Break 15m
    • 10:15 12:00
      Shared memory programming, OpenMP 1h 45m E3

      E3

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      Speaker: Christoph Kessler
    • 12:00 13:00
      Individual Lunch 1h
    • 13:15 14:00
      Shared memory programming, OpenMP 45m E3

      E3

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      Speaker: Christoph Kessler
    • 14:15 15:00
      Lab: Programming Exercises on OpenMP 45m Röd and Ora Lab-rooms (Röd and Ora Lab-rooms)

      Röd and Ora Lab-rooms

      Röd and Ora Lab-rooms

      Speakers: Mr Niclas Jansson (CSC/NA), Stefano Markidis
    • 15:00 15:15
      Coffee Break 15m
    • 15:15 17:00
      Lab: Programming Exercises on OpenMP 1h 45m Röd and Ora Lab-rooms (Röd and Ora Lab-rooms)

      Röd and Ora Lab-rooms

      Röd and Ora Lab-rooms

      Speakers: Mr Niclas Jansson (CSC/NA), Stefano Markidis
    • 09:15 10:00
      Shared memory programming, OpenMP 45m E3

      E3

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      Speaker: Christoph Kessler
    • 10:00 10:15
      Coffee Break 15m
    • 10:15 12:00
      Shared memory programming, OpenMP 1h 45m E3

      E3

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      Speaker: Christoph Kessler
    • 12:00 13:00
      Individual Lunch 1h
    • 13:15 15:00
      Lab: OpenMP Advanced Project 1h 45m Röd and Ora Lab-rooms

      Röd and Ora Lab-rooms

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      Speakers: Mr Niclas Jansson (CSC/NA), Stefano Markidis
    • 15:00 15:15
      Coffee Break 15m
    • 15:15 17:00
      Lab: OpenMP Advanced Project 1h 45m Röd and Ora Lab-rooms

      Röd and Ora Lab-rooms

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      Speakers: Mr Niclas Jansson (CSC/NA), Stefano Markidis
    • 09:15 10:00
      GPU Architectures 45m E3

      E3

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      Speaker: Szilard Pall
      Slides
    • 10:00 10:15
      Coffee Break 15m
    • 10:15 12:00
      Introduction to CUDA 1h 45m E3

      E3

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
    • 12:00 13:00
      Individual Lunch 1h
    • 13:15 15:00
      Lab: CUDA 1h 45m Röd and Ora Lab-rooms

      Röd and Ora Lab-rooms

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      Speaker: Szilard Pall
    • 15:00 15:15
      Coffee Break 15m
    • 15:15 17:00
      Lab: CUDA 1h 45m Röd and Ora Lab-rooms

      Röd and Ora Lab-rooms

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      Speaker: Szilard Pall
    • 09:15 10:00
      Wrap up: GPU Programming 45m E3

      E3

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      Speaker: Szilard Pall
    • 10:00 10:15
      Coffee Break 15m
    • 10:15 12:00
      MPI: Introduction, Basic Concepts, Point-to-Point Communication 1h 45m E3

      E3

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      Speaker: Erwin Laure (PDC-HPC)
    • 12:00 13:00
      Individual Lunch 1h
    • 13:15 14:00
      MPI - Point-to-Point Communication 45m E3

      E3

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      Speaker: Erwin Laure (PDC-HPC)
    • 14:00 15:00
      Lab: MPI Part 1 1h Röd and Ora Lab-rooms

      Röd and Ora Lab-rooms

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
    • 15:00 15:15
      Coffee Break 15m
    • 15:15 17:00
      Lab: MPI Part 1 1h 45m Röd and Ora Lab-rooms

      Röd and Ora Lab-rooms

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
    • 09:15 10:00
      MPI - Collective Communication 45m E3

      E3

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      Speaker: Erwin Laure (PDC-HPC)
      Slides
    • 10:00 10:15
      Coffee Break 15m
    • 10:15 12:00
      MPI - Intermediate MPI 1h 45m E3

      E3

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      Speaker: Erwin Laure (PDC-HPC)
      Slides
    • 12:00 13:00
      Individual Lunch 1h
    • 13:15 15:00
      Lab: MPI Part 2 1h 45m Röd and Ora Lab-rooms

      Röd and Ora Lab-rooms

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
    • 15:00 15:15
      Coffee Break 15m
    • 15:15 17:00
      Lab: MPI Part 2 1h 45m Röd and Ora Lab-rooms

      Röd and Ora Lab-rooms

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
    • 15:15 17:00
      Project Work 1h 45m
    • 09:15 10:00
      Performance Engineering 45m E3

      E3

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      Speaker: Pekka Manninen
      Slides
    • 10:00 10:15
      Coffee Break 15m
    • 10:15 12:00
      Performance Engineering 1h 45m E3

      E3

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      Speaker: Pekka Manninen
    • 12:00 13:00
      Individual Lunch 1h
    • 13:15 15:00
      Lab: Performance Engineering 1h 45m Röd and Ora Lab-rooms

      Röd and Ora Lab-rooms

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
    • 15:00 15:15
      Coffee Break 15m
    • 15:15 17:00
      Lab: Performance Engineering 1h 45m Röd and Ora Lab-rooms

      Röd and Ora Lab-rooms

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
    • 08:30 09:15
      Wrap up: Performance Engineering 45m E3

      E3

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      Speaker: Pekka Manninen
    • 09:15 10:00
      MPI: Advanced Concepts 45m E3

      E3

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      Speaker: Erwin Laure (PDC-HPC)
      Slides
    • 10:00 10:15
      Coffee Break 15m
    • 10:15 11:00
      MPI: Advanced Concepts 45m E3

      E3

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      Speaker: Erwin Laure (PDC-HPC)
    • 11:15 12:00
      Case Study: Energy Efficiency in Scientific Computing 45m E3

      E3

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      Energy consumption is a crucial challenge that the high performance computing community will have to face to efficiently leverage the Exascale systems that will be available at the end of this decade. In this talk we will motivate the roots of the power wall, and introduce a "recipe" of measures that are being implemented in hardware as well as scientific applications in order to reduce energy consumption: 1) Selection of energy efficient hardware 2) Dynamic voltage-frequency scaling 3) Dynamic concurrency throttling 4) Suppression of polling 5) Approximate computing 6) Near threshold voltage computing 7) Use of energy proportional hardware 8) Virtualization of computational resources
      Speaker: Prof. Enrique Quintana Ortí
      Slides
    • 12:00 13:00
      Individual Lunch 1h
    • 13:15 15:00
      Lab: MPI Part 3 1h 45m
    • 15:00 15:15
      Coffee Break 15m
    • 15:15 17:00
      Lab: MPI Part 3 1h 45m Röd and Ora Lab-rooms

      Röd and Ora Lab-rooms

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
    • 15:15 17:00
      Project Work 1h 45m
    • 18:00 21:00
      Social Dinner at Cypern Restaurant 3h Cypern Restaurant (Cypern Restaurant)

      Cypern Restaurant

      Cypern Restaurant

      Valhallavägen 50, 114 22 Stockholm
    • 09:15 10:00
      The Future of Computing - Towards the Post Moore’s Law Era 45m E3

      E3

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      This lecture presents the Moore's law and discusses its future focusing on future emerging technologies in computing.
      Speaker: Stefano Markidis
      Slides
    • 10:00 10:15
      Coffee Break 15m
    • 10:15 11:00
      The Future of Computing - Towards the Post Moore’s Law Era 45m E3

      E3

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      Speaker: Stefano Markidis
    • 11:00 12:00
      Case Study: State of the Art Parallel Computing enables new Science breakthroughs 1h E3

      E3

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      NVIDIAs Alison Lowndes will provide an overview of NVIDIA's latest hardware and software offering and how this enables discovery and insight via parallel scientific visual computing. She will also cover recent progress in algorithms and papers that should be of great interest Alison Lowndes Deep Learning Solutions Architect & Community Manager EMEA| NVIDIA (UK) Recent mature graduate in Artificial Intelligence (University of Leeds), combining technical and theoretical computer science with a physics background. Completed a thorough empirical study of deep learning, specifically with GPU technology, covering the entire history and technical aspects of GPGPU with underlying mathematics. After 25+ years in international project management and entrepreneurship, Alison now manages the Deep Learning and AI developer community across EMEAI and advises on a wide range of applications of deep learning.
      Speaker: Alison Lowndes (Nvidia)
      Slides
    • 12:00 12:10
      Course Evaluation 10m E3

      E3

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79
      In class course evaluation
    • 12:10 13:00
      Individual Lunch 50m
    • 13:00 17:00
      Open Lab and Project Work 4h Röd and Ora Lab-rooms

      Röd and Ora Lab-rooms

      KTH Lecture Hall E3

      KTH main campus Valhallavägen 79