Introduction to Parallel Computing
(Course no. 60/2012 in the training programme of Forschungszentrum Jülich)
Dr. Bernd Mohr, JSC
The presentation material is in English. The presentation will be given in English or German language depending on the course final audience.
Wednesday, 12 December 2012, 13:00-17:00
Jülich Supercomputing Centre, Hörsaal, building 16.3, room 006
Registration is not necessary.
Slides as pdf:
|Introduction to Parallel Computing
This course will present the most fundamental concepts, methods, and technologies of high-performance computing systems and the necessary
parallel programming associated with it. After introducing the basic terminology and vocabulary, an overview about parallel computer architectures is given introducing shared memory, distributed memory, and hybrid computer systems including latest trends like many-core CPUs and hardware acceleration via GPUs. Next, the basics of parallel programming are explained including an introduction to message-passing and multi-threaded programming with the industry standards MPI and OpenMP. Finally, it describes the very basics of debugging, performance analysis, and optimization of parallel programs. The presentation closes with a summary of issues and open research topics of high-performance computing for the next decade namely heterogeneity, reliability, power consumption, and extreme concurrency.
This tutorial addresses managers, system administrators, and application programmers new to the field of high-performance computing (HPC) and interested in an introduction HPC systems and parallel programming. Basic knowledge in a sequential programming language like C, C++ or Fortran is helpful to better understand the examples presented in the 2nd half of the talk ("Introduction to parallel programming").