Large-Scale and Supercomputing
Five day intensive course (20h lectures, 10h exercises), June 1 - 5, 2015.
Objectives
Course gives an introduction to basic computational tools for large-scale and supercomputing in any application area. That includes basic knowledge on programming tools in Unix environment and Fortran 95 programming language; parallel programming with both the message passing interface (MPI) and OpenMP paradigms; an efficient use of CSC's metacomputer environment (e.g. data storage, batch job systems and the Scientist's Interface); the usage of Techila grid for high-performance computing; and code optimization for achieving high performance in numerical scientific computing on modern supercomputers. The course consists of lectures and hands-on exercises (3 etc), moreover a practical work may be included (+2 etc). At the end of the course the attendees will be able to use grid computing and write simple parallel programs as well as parallelize and optimize existing programs.
Prerequisites
The participants are assumed to have (at least low level) knowledge in some programming language. The first lectures in Fortran 95 will begin more or less from scratch. The examples are given both in Fortran 95 and C/C++.
Content
- Supercomputers and supercomputing.
- Cluster and grid computing.
- Unix environment and Fortran 95 programming language for high performance computing.
- Parallel computing with the message-passing interface (MPI).
- Shared memory parallelization techniques with OpenMP.
- Performance tuning and code optimization.
Preliminary Program
Mon, June 1: Unix Environment and Fortran 95
- 9:00 - 10:00 Introduction to the Course
- 10:00 - 12:00 Introduction to Fortran95 and the Unix Environment.
- 13:00 - 14:00 Introduction to Fortran 95 (cont.)
- 14:00 - 16:00 Hands-on work
- Lecture material: Introduction to Fortran95 and the Unix Environment.
- Exercises and answers: Fortran exercises and Makefile exercise.
- Other material for hands-on session: pbdc, distance.f95 and squaresum.f95 .
Tue, June 2: Techila Grid
- 9:00 - 10:00 Introduction to Techila HPC middleware (Marko Koskinen)
- 10:00 - 12:00 Distributed computing with Techila (Marko Koskinen)
- 13:00 - 14:00 Distributed computing with Techila (cont.) (Marko Koskinen)
- 14:00 - 16:00 Demos & hands-on work
- Lecture material: Techila End-User Training and Techila with Python.
Wed, June 3: CSC Resources and Parallel Programming
- 9:00 - 11:00 CSC Supercomputing Environment (Jussi Enkovaara)
- 11:00 - 12:00 Introduction to Parallel Programming with MPI (Jussi Enkovaara)
- 13:00 - 14:00 Introduction to Parallel Programming with MPI (cont.) (Jussi Enkovaara)
- 14:00 - 16:00 Hands-on work
- Lecture material: CSC Supercomputing Environment, Parallel Programming with MPI, MPI Reference.
- Exercises: Exercises.
- Other material: Exercises material (includes exercises and answers).
Thu, June 4: Parallel Programming
- 9:00 - 12:00 Parallel Programming with MPI (Jussi Enkovaara)
- 13:00 - 16:00 Hands-on work.
Fri, June 5: Parallel Programming and Code Optimization
- 9:00 - 10:00 Introduction to Parallelization Techniques with OpenMP (Napsu Karmitsa)
- 10:00 - 12:00 Code Optimization and Performance Tuning (Napsu Karmitsa)
- 13:00 - 14:00 Code Optimization and Performance Tuning (cont.) (Napsu Karmitsa)
- 14:00 - 16:00 Hands-on work. You are encouraged to bring your own piece of software for the hands-on session.
- Lecture material: Introduction to OpenMP, Code Optimization.
- Exercises and answers: OpenMP exercises and answers, Code optimization exercises and answers.
Practical work
- The practical work includes usage of the newly learned issues in practice. You are encouraged to bring your own piece of software. Nevertheless, some ready-to-work softwares will be available. Details of the work should be agreed with Napsu Karmitsa.
- The deadline for finishing the work is September 30th.
Information
- Date: June 1 - 5, 2015.
- Form: Five day intensive course (20h lectures, 10h exercises).
- Location: University of Turku, Department of Mathematics, Lecture hall XI.
- Language: English.
- Level: Advanced/Postgraduate studies.
- ECTS: 3 or 5 (5 with practical work). There is no final exam in the course but attendance at lectures and hands on exercises is compulsory.
- Lecturers: Napsu Karmitsa (University of Turku), Jussi Enkovaara (CSC - IT Center for Science) and Marko Koskinen (Techila Technologies Ltd.).
- Additional information: Napsu Karmitsa ( ).
Registration and fees
- The registration period is over!