School on HPC architectures and large-scale numerical computation: COS-2umerical computation: COS-2

The School on HPC architectures and large-scale numerical computation is the second out of four training workshops organised by HPC-LEAP for the students enrolled on the programme. Successful completion of any one of the programmes will be worth 5 ECTS accreditation units. The School will offer extra positions for Students and Researchers that are not HPC-LEAP fellows. The assessment and topics covered by the four workshops is described below.

 

Venue: Jülich

Dates: 11th - 29th Jan 2016

Credit: 5 ECTS

Scientists-in-charge: Dirk Pleiter

 

Description:

The second School is part of course CoS-2 and will present students with the essentials of computer architectures and skills for using HPC systems to solve large-scale numerical problems. The computer architecture lectures will focus on understanding how code performance is linked to the design of an HPC system. Next, the students will learn about performance modelling, analysis and engineering. Training will be via lectures on parallel algorithms and programming and will be complemented by exercises. More advanced lectures in this School will cover GPU programming, energy efficient computing, I/O and portable data formats, debugging and visualisation.

 
Topic Lecture hours Laboratory hours
Parallel architectures 6 4
Parallel programming 8 8
Performance analysis, modelling and optimisation 4 -  
GPGPU programming (I) 2 2
Parallel algorithms (I) 3 -
Energy efficient HPC 2 -
Visualisation 1 1
  26 15

 

Components:

• Parallel architectures: The features of modern HPC hardware will be described, focussing on the interactions between software performance and the system and discussing the best algorithms to make use of particular hardware constraints.

• Parallel programming: The techniques required for programming multi-core computers will be presented. The different programming models (Shared memory and MPI) will be described in detail. Issues arising with data I/O from parallel systems will be presented along with a discussion of portable data formats.

• Performance analysis, modelling and optimisation: Methods to analyse the performance of large-scale numerical software on parallel computers will be reviewed. Models describing the scaling features of the software will be reviewed and compared to real performance data from multi-core systems. Best-practise techniques for developing software in C/C++ will be reviewed.

• Parallel algorithms (I): The techniques for implementing commonly used numerical computations on parallel systems will be presented.

• GPGPU programming(I): Modern graphics cards can be harnessed for efficient numerical computations. The programming models needed to exploit these systems effectively will be introduced.

• Energy efficient HPC: As the costs of large-scale numerical simulation become increasingly dominated by the energy usage of these systems, the students will be introduced to new approaches to hardware design that optimise performance against power consumption.

• Visualisation: A short introduction to methods for presenting output from large-scale simulations in visual formats will be given.

 

Assessment:

 Students will be assessed by a method common to all HPC-LEAP workshops. Over the course of each School, students will be required to develop software to solve a small number of substantial numerical problems. At the end of the three weeks, students will be required to submit their software, along with a report detailing the design, algorithm, testing methodology, results and performance of their projects. They will be expected then to give a 15 minute presentation to the examiners and their classmates, summarising their findings.

 

Additional Information:

For more information includng the workshop agenda click here.