Syllabus and Material for High Performance Programming and Systems (HPPS)
Welcome to the course website for HPPS! While assignment handin is still on Absalon, all material and information will be located here. You are not expected to treat this repository as anything more than a website, but feel free to clone it if you are already comfortable with Git.
HPPS takes place in block 2. There are three kinds of in-person teaching activities: lectures, exercises and the study café. All take place physically on campus.
Lectures are mostly conventional, but may use aspects of the flipped classroom approach.
Exercises are conducted in four smaller classes, each conducted by a teaching assistant (TA). An exercise session involves working on problems that will help you learn the curriculum, and in many cases directly train you in the skills you will need for the mandatory assignments.
Study cafés are places where you can get assistance with the mandatory assignments.
This course website is used for handing out material.
Discord can be used for asking questions. Invite link.
Absalon is used for handing in assignments and for course announcements.
The textbooks are as follows:
BOH: Computer Systems: A Programmer's Perspective, 3rd edition (global edition)
HPPS: HPPS course notes - these will be updated as the course progresses, so make sure to regularly check that you have the newest version
The authors of the CS:APP textbook have made videos available of their lectures. Note that these lectures are from a classic systems programming course, with a different focus (and much longer length) than HPPS. However, they may still be worth watching.
- Lecture: 10:00-12:00 (Lille UP-1, DIKU).
Lecture: 10:00-12:00 (Aud 04, HCØ)
Exercises are split along four hold, in the following rooms and TAs:
Hold 1: 1-0-37 (DIKU), Noah Stonall [email protected]
Hold 2: 1-0-04 (DIKU), Christian Arboe Franck [email protected]
Hold 3: Auditorium Nord, Nørre Allé 51, NEXS, Albert Alonso de la Fuente [email protected]
Hold 4: 3-0-25 (DIKU), Anas Youssef Idiab [email protected]
- Study café: 13:00-15:00 at A110, A111, C103, all at HCØ. Depending on needs, we may not use all these rooms.
There are 5 assignment in total during the course with deadlines roughly every week.
The assignments will be graded with points from 0 to 4 and it is not possible to re-hand-in any of the assignments.
Assignments are made to be solved in groups of preferably three students, but groups of two active students will also do. We strongly encourage you not to work alone. Groups cannot be larger than three students. Each group must make their own solutions and cannot share implementations and report with other. You may however discuss material and ideas.
Handin deadline: 3/12
Handin deadline: 17/12
Handin deadline: 22/12
Handin deadline: 7/1
Handin deadline: 16/1
You can get help for assignments at the study cafés every Friday 13:00-15:00.
To qualify for the exam you are required to achieve at least 50% of the total number of points in the four assignments (that is, 10 points at minimum). You also need to get at least one point pr. assignment.
All written material will be in English.
Most oral teaching will be in Danish or English, depending on the specific teacher or TA.
You will mainly be programming in C and Python.
You will be using a Unix command line and Unix tools for much of the course. See the Unix software guide.
See also this guide on the GDB debugger, which is a very useful tool for debugging C programs.
If you prefer an IDE see the VS Code installation and setup guide.
The teachers are
The TAs are
- Christian Arboe Franck [email protected]
- Anas Youssef Idiab [email protected]
- Albert Alonso de la Fuente [email protected]
- Noah Stonall [email protected]
The exam will be a take-home exam that will be very similar in form to the mandatory assignments.
Each teaching activity has an associated subdirectory here on GitHub that lists expected reading and other material. Direct links below.
Tuesday lecture 21/12 (A4 handout)
No teaching on Thursday due to humbug.
Tuesday lecture 4/1
Thursday lecture 6/1
Thursday exercises 6/1 (A5 handout)
Tuesday lecture 11/1
Thursday lecture 13/1
Thursday exercises 13/1
- Maybe some exam preparation. Probably still study cafés.