TMA4280 - Introduction to Supercomputing
The objective with this course is to give a brief introduction to modern computer architecture and to discuss numerical algorithms for vector and parallel processing.
Lecturer and student assistant
Eivind Fonn, SINTEF ICT.
- Marcus André Ramberg: marcusar @ stud
- Raymond Toft: raymont @ stud
- Simen Lillehagen: simenlil @ stud
- Lectures: Fridays, 10:15–13:00 at S5 (central building, Gløshaugen campus)
- Exercises: Mondays, 18:15–20:00 (!) at H1 (main building, Gløshaugen campus)
The semester starts on January 11th, which means the first lecture is on January 15th.
An extra Q/A session is scheduled for Friday June 3, 10:15–13:00 at S1 in preparation for the examination.
Lecture notes can be found here (updated May 21). The remaining chapters will be added to this PDF when they are ready.
Problem sets and solutions
The date listed is the date of the corresponding exercise session.
- February 8, 15, 22 (mandatory; updated Feb 11)
- Overview of curriculum (Week 1)
- Trends in supercomputing (Week 1)
- The tool: properties and flaws (Week 1)
- Multiprocessor systems (Week 2)
- MPI (Week 2 + 3)
- Vilje (Week 3)
- OpenMP (Week 4; updated Feb 11)
- Summing (Week 5)
- Poisson (Week 5)
- Direct solvers (Week 6)
- Introduction to C (Week 7)
- Iterative solves (Week 8)
- MPI-IO (Week 9)
- PETSc (Week 10)
- GPU programming (Week 11)
Slides from the lectures will be uploaded here after the corresponding lecture.
User account on Vilje
The much discussed form is here.
- Faculty and institute are the ones you belong to, not (necessarily) IME and IMF.
- Make sure you write your phone number because you will get your password by SMS.
- Reasonable start dates are 2016-01-11 and 2016-06-11 (the official semester dates).
- Your "local user name" is your NTNU username.
- Your personal ID is probably <username>@ntnu.no.
- The project is ntnu603.
- Leave project manager fields blank (I will deal with them).
Examination and grading
There will be:
- Roughly four voluntary exercises
- A small project to familiarize ourselves with various tools (compilers, shells, git, etc.)
- A larger project
- A final written exam (June 7th, 9:00)
The exam covers 60% of your grade, and must be completed to get any grade at all. The projects cover the remaining 40%.
The suggested solutions to the final exam are here.