High Performance Computing 2023

Slides, exercises and resources for the 2023-2024 course "High Performance Computing" under the "Scientific and Data-Intensive Computing" Naster Program at University of Trieste

High Performance Computing 2023

Lecture slides, codes and materials for the 6-credit course on High Performance Computing.

NEWS NEWS

Summer Session Exams for the 2023 HPC course

EXAMs will be on 9th and 10th of July building A room 102 Padriciano Campus

Students should send us the exercise one week before : on the 4th of July by 23:59

NEWS NEWS

Teachers

Stefano Cozzini, Area Science Park, Trieste

Luca Tornatore, INAF - National Institute for Astrophysics, Astronomical Observatory of Trieste

Tutor:

Marco Celoria Area Science Park

Lab session are helped as well by Orfeo team at Area Science Park

Link to the teams channel

Computational resource to be used: ORFEO cluster see https://orfeo-doc.areasciencepark.it/

Google Drive for the recordings

The recordings of the lectures will be transferred here

Prerequisites

  • decent knowledge of linux command line interface
  • decent knwoledge of a programming language ( C and/or C++ but even Fortran is fine)
  • decent knowledge of scripting language ( python is fine but bash awk perl are also welcome}

Providing public keys :

google spreesheet where to insert your data

CALENDAR

We plan to provide 30 hours frontal lecture, 16 hours of lab/tutorials and a few more hours as seminars.
Here below the schedule for lectures and tutorials.
Seminar will be announced during lecture and they will be generally on wednesday from 1 to 2mp

Lecture rooms:

The course should be completed by end of november.
First weeek of January is spare time if something has beeen left behind.

DATE LECTURE TUTORIALS
Wed, Sep 27 [0] [Introduction to the course] (S.C. + L.T. + G.T)
Thu, Sep 28 [1] Introduction to HPC (S.C.)
Fri, Sep 29 [1] Tutorial 1: using the linux command line/ connecting to ORFEO
Tue, Oct 03 [2] [HPC Hardware] (S.C.)
Thu, Oct 05 [3] [HPC Software] (S.C.)
Fri, Oct 06 [2] Tutorial 2: exploring ORFEO
Mon, Oct 06 [3] [Parallel Programming concepts] (S.C.)
Tue, Oct 10 [4] [Introduction to MPI / 1] (S.C.)
Thu, Oct 12 [5] [Introduction to MPI / 2] (S.C.)
Fri, Oct 13 [Introduction to Network] (S.C.) [3] [Tutorial 3: MPI ]
Tue, Oct 17 [6] [Introduction to OpenMP / 1] (L.T.)
Thu, Oct 19 [7] [Introduction to OpenMP / 2] (L.T.)
Fri, Oct 20 [4] [Tutorial 4: OpenMP]
Tue, Oct 24 [8] [ More on MPI] (S.C.)
Thu, Oct 26 [9] [ More on OpenMP] (L.T.)
Fri, Oct 27 [5] [Tutorial 5: MPI and OpenMP, hybrid
Tue, Oct 31 [10] [Debugging and Profiling ] (L.T.)
Tue, Nov 07 [6] [Tutorial 6: Debugging & profiling]
Thu, Nov 09 [11] [Basic on Serial code Optimization 1] (L.T.)
Fri, Nov 10 [12] [Basic on Serial code Optimization 2] (L.T.)
Fri, Nov 10 [7] [Tutorial 7: Serial Code Optimization
Tue, Nov 14 [13] [Storage for HPC] (S.C.)
Tue, Nov 21 [14] [HPC libraries] (S.C.)
Thu, Nov 23 [15] [Basic on benchmarking] (S.C.)
Tue, Nov 28 [8] [Tutorial 8: HPC libs and benchmarking

REFERENCES & BOOKS

Ref 1: Introduction to High Performance Computing for Scientists and Engineers

by Georg Hager and Gerhard Wellein Paperback: 356 pages Publication date July 2, 2010 Editors (Chapman & Hall/CRC Computational Science)

A lot of material is taken from this book. A very nice and complete reference. A little bit old however…

Ref 2: High Performance Computing Modern Systems and Practices

Thomas Sterling Matthew Anderson Maciej Brodowicz eBook ISBN: 9780124202153 Paperback ISBN: 9780124201583

Some of the materials of this book are presented during some lectures.

Ref 3: Introduction to High-Performance Scientific Computing,by Victor Eijkhout

The source and pdf of the book (as well as lecture slides) can be found at this link: https:// https://theartofhpc.com//istc/istc.html, DOI: 10.5281/zenodo.49897

Some of the materials presented in classes are taken from this book.

Ref 4: Computer Organization and Design

by D. A. Patterson and J. L. Hennessy The Morgan Kaufmann Series in Computer Architecture and Design easily available as pdf on the net.

Ref 5: Optimizing HPC Applications with Intel Cluster Tools

Paperback – October 15, 2014 by Alexander Supalov (Author), Andrey Semin (Author), Michael Klemm (Author), & 1 more ISBN-13: 978-1430264965 ISBN-10: 1430264969 Edition: 1st

Nice book but a little bit outdated