TMA881 / MMA620 High performance computing Autumn 21

TMA881 / MMA620 High performance computing Autumn 21

Course PM

This page contains the program of the course: lectures, exercise sessions and computer labs. Other information, such as learning outcomes, teachers, literature and examination, are in a separate course PM.

Corvid Precautions

Following the hybridmodel decided in early summer at Chalmers, we are pressed to offer at least half of the teaching onsite. Independent of this, we want to make it possible for those who desire to complete this course completely online, via Zoom-based teaching. This includes the oral exam for which I want to offer online variants depending on demand. Details on this will be available at a later point.

Online activities: Online activities are conducted via Zoom. You can access the meeting via the Zoom section on this Canvas course page. The lecture slots will be taught online, and two of the computer lab sessions, too. If you desire to follow to course online, participate in these two sessions (see the course website for an explanation that you should join two sessions per week).

On-site activities: Three of the lab-sessions are offered onsite. If you are eager for on-site teaching, join these, and if you are indifferent, please give priority during the online labs to those depending on them to satisfy their need for safty. We have three rooms during each event, but one of them is MVF22; a room with notoriously bad ventilation. We suggest that only double-vaccinated people use it.

To control the number of students joining, and to adhere to the regulations by health authorities, please sign up on Canvas to one of the lab appointments. Ideally, sit in the vicinity of students that you anway spend time with, and practice social distancing to others. This year, we suspend the suggestion to form mixed groups.

Respect others' need for safty: Each of us has different feelings about the extend to which we wish to follow scientificly warrented precautions. Be mindful of this in all interactions, and recall that guest students likely come from countries with more strict policies in place and have experienced some of their loved ones dying to the pandemic.

Website

See the separate course website for more course content.

Program

The schedule of the course is in TimeEdit.

The events formerly known at the lectures

Lectures scheduled in TimeEdit will completement the course videos. See also the course website.

The lecture slots, Tuesday after lunch and Wednesday morning, will be conducted online.

Recommended exercises

In general, after watching the videos replicate what is demonstrated on the gantenbein. See the course website for more specific tasks and the assignments.

Computer labs

See TimeEdit for dates. Some of the labs will be online, some will be on-site. During online labs you can use the booked rooms listed in TimeEdit. Please be mindful of the Corvid safty precautions at any time.

On-site labs: Monday afternoon and Friday morning and afternoon.

Online labs: Tuesday afternoon and Wednesday afternoon.

See the course website for the content.

Reference literature:

See the course website for the course content. For formal reasons, we reproduce the text there verbatim.

Our main resource are the slides and videos provided at this website. If you take this course as a student at Chalmers/GU, you can also access the code on gantenbein in the folder /home/hpc2021/code.

We do not have a formal course book, but the following could be of help:

  • T. Sterling, M. Anderson, M. Brodowicz. High Performance Computing.

A good, and free, but slightly technical summary of the language C can be found in:

However, a web search gives access to many examples and tutorials.

  • Stackoverflow hosts answers to many questions, basic and advanced.

  • Performance is discussed at C++ conferences: e.g. CppCon, code::dive. They publish video recordings on YouTube.

One essential part of your training is that you learn how to solve specific problems in groups using web resources, because this is how problems are commonly solved in real programmer’s life. In fact, it is a common job interview question where you find solutions to unprecedented problems.

Course Summary:

Date Details Due
CC Attribution Non-Commercial Share Alike This course content is offered under a CC Attribution Non-Commercial Share Alike license. Content in this course can be considered under this license unless otherwise noted.