Search for contacts, projects,
courses and publications

High-Performance Computing


Schenk O.

Course director

Eftekhari A.


Pasadakis D.




Are you interested in using Europe’s faster supercomputers (and getting ECTS credit points for doing so)? Would you like to learn how to write programs for parallel supercomputers, such as a Cray or a cluster of GPUs? The course is designed to teach students how to program parallel computers to efficiently solve challenging problems in science and engineering, where very fast computers are required either to perform complex simulations or to analyze enormous datasets.


The goal of the HPC Lab is that students will learn principles and practices of basic numerical methods and HPC to enable large-scale scientific simulations. This goal will be achieved within six to eight mini-projects with a focus on HPC, CSE, and AI. The content of the course is tailored for 1st year Master students interested in both learning parallel programming models, scientific mathematical libraries, and having hands-on experience using HPC systems.


60% of the grade is determined by mandatory graded project works and 40% is determined by the final written exam during the official examination period.



  • Georg Hager (Author), Gerhard Wellein (Author), Introduction to High Performance Computing for Scientists and Engineers (Chapman & Hall/CRC Computational Science), 2010
  • Victor Eijkhout (Author), Introduction to High Performance Scientific Computing, Hardcover, 17. Juni 2013
  • Thomas Rauber (Author), Gudula Rünger (Author), Parallel Programming: for Multicore and Cluster Systems, Hardcover, June 25, 2013
  • The students might continue to study these HPC techniques within the annual USI-CSCS summer school on "Effective High-Performance Computing & Data Analytics Summer School". The content of the course is tailored for intermediate graduate students interested in both learning parallel programming models, and having hands-on experience using HPC systems. Starting from an introductory explanation of the available systems at CSCS, the course will progress to more applied topics such as parallel programming on accelerators, scientific libraries, and deep learning software frameworks. The following topics will be covered: GPU architectures, GPU programming, Message passing programming model (MPI), Performance optimization and scientific libraries, interactive supercomputing, Python libraries, Introduction to Machine Learning, and GPU optimized framework. The Summer School will be held in July, 2021.