Close

Advanced School for Computing and Imaging (ASCI)

ASCI office
Delft University of Technology
Building 28, room 04.E120
Van Mourik Broekmanweg 6
2628 XE – DELFT, The Netherlands

E: asci-office@tudelft.nl
P: +31 15 27 88032

Visiting hours office
Monday, Tuesday, Thursday: 10:00 – 15:00

Directions

The ASCI office is located at the Delft University of Technology campus.  It is easily accessible by bicycle, public transport and car. The numbers of buildings can help you find your way around the campus. Make sure you remember the name and building number of your destination.

Contact us at +31 15 278 8032 or send us an email at asci-office@tudelft.nl

A24 A Programmer’s Guide for Modern High-Performance Computing

A24 - A Programmer's Guide for Modern High-Performance Computing

Year Dec 12-16, 2022
ECTS  4
Registration click here
Course content
This course is designed to respond to this need of understanding and being able to program novel HPC architectures. Specifically, the course covers three types of HPC architectures – multi-core processors, GPU accelerators, and FPGA accelerators -, and the programming models and techniques used for them. High-performance computing has seen a lot of interesting advances in the last decade, in both architectures and programming models. In terms of architectures, we have seen massive parallelism and various kinds of accelerators appearing with the promise of TeraFLOPs of performance. More and more application fields are tempted by the promise of many-fold performance gains, and willing to design and implement HPC solutions for their use-cases. Despite the enthusiasm, programming these novel HPC architectures is hard work. In fact, achieving the promised level of performance often requires suitable workloads, algorithm re-writing, multilayered parallelization, multi-grain concurrency, and aggressive optimization and tuning. None of these challenges should be good reasons to give up, but reasons enough to get to know more about programming these novel HPC architectures, while understanding their strong points, their limitation, and ultimately their “down-to-Earth” performance.

 

Course objectives
This course is designed specifically to provide both the theoretical insight and the practical tools needed to understand and use and program these novel HPC systems. Specifically, the course covers three types of HPC systems – multi-core processors, GPU accelerators, and large scale systems, and introduces the programming models and techniques used to program them. Moreover, we also introduce specific techniques for big data analytics and distributed machine learning, which are among the largest consumers of computing cycles in HPC systems worldwide.
Course schedule 2022
Dec 12-16, 2022

Monday: Systems and applications design in HPC – Dr. Ana-Lucia Varbanescu, UTwente
11:00 – 12:30 – Introduction to architectures and systems
12:30 – 13:30 – Lunch break
13:30 – 15:00 – Introduction to parallel programming and application design
15:30 – 17:00 – Tools, practical exercises, technical setup for coming days
18:30 – 20:00 – Dinner

Tuesday: Shared-memory programming – Dr. Clemens Grelck, UvA
9:00 – 10:30 – Lecture
11:00 – 12:30 – Hands-on
12:30 – 13:30 – Lunch break
13:30 – 15:00 – Lecture
15:30 – 17:00 – hands-on continued
18:30 – 20:00 – Dinner
20:00 – 22:00 – Social get-together

Wednesday: GPGPU programming – Dr. Ben van Werkhoven, Dr. Alessio Sclocco, NLeSC
9:00 – 10:30 – Introduction to GPU programming
11:00 – 12:30 – First hands-on
12:30 – 13:30 – Lunch break
13:30 – 15:00 – CUDA programming and optimizations including more hands-ons
15:30 – 17:00 – Advanced topics, performance (auto-)tuning
18:30 – 20:00 – Dinner

Thursday: Distributed computing: cloud and big data by prof.dr. Alexandru Iosup and Matthijs
Jansen, MSc, VU Amsterdam
9:00 – 10:30 – Distributed computing & cloud computing
11:00 – 12:30 – Examples/demos/hands-on and discussion
12:30 – 13:30 – Lunch break
13:30 – 15:00 – Edge-to-cloud digital continuum with hands-on & open research questions
15:30 – 17:00 – More hands-on
18:30 – 20:00 – Dinner

Friday: FPGA programming for HPC, by Dr. Nikos Alachiotis, UTwente
9:00 – 10:30 – Introduction to FPGAs (architecture basics and design flow), and example (Zynq)
11:00 – 12:30 – Introduction to HLS and Vitis, with examples/demo/hands-on
12:30 – 13:30 – Lunch break
13:30 – 14:30 – An in-depth case-study: population genetics

Assessment
Yes: a short essay on the implications of these technologies on own research.

Responsible Lecturer

Ana Lucia Varbanescu

Education Period:

December 12-16, 2022

Time schedule: start Monday December 12, 2022 at 11:00 hours. The course will end on Friday December 16 at 14.00 hours.

Location: Conferentiecentrum & Hotel Bovendonk. https://www.bovendonk.nl/en/