Public repository for the HPPS course

Overview

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.

speedracer

Basics

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.

Textbook

The textbooks are as follows:

Textbook videos

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.

Schedule

Tuesday

  • Lecture: 10:00-12:00 (Lille UP-1, DIKU).

Thursday

  • Lecture: 10:00-12:00 (Aud 04, HCØ)

  • Exercises: 13:00-15:00

Exercises are split along four hold, in the following rooms and TAs:

Friday

  • Study café: 13:00-15:00 at A110, A111, C103, all at HCØ. Depending on needs, we may not use all these rooms.

Assignments

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.

A1

  • Handout: 25/11

  • Handin deadline: 3/12

Text, code handout.

A2

  • Handout: 9/12

  • Handin deadline: 17/12

A3

  • Handout: 16/12

  • Handin deadline: 22/12

A4

  • Handout: 21/12

  • Handin deadline: 7/1

A5

  • Handout: 6/1

  • Handin deadline: 16/1

Study café

You can get help for assignments at the study cafés every Friday 13:00-15:00.

Exam qualification

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.

Languages

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.

Software

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.

People

The teachers are

The TAs are

Exam format

The exam will be a take-home exam that will be very similar in form to the mandatory assignments.

Course plan

Each teaching activity has an associated subdirectory here on GitHub that lists expected reading and other material. Direct links below.

Owner
DIKU
Department of Computer Science at the University of Copenhagen
DIKU
This is official repository of the course Industrial Informatics LT, Year 2021/22, at University of Modena and Reggio Emilia, held at Fondazione Universitaria di Mantova

Industrial informatics LT - Mantova - 2021/22 This is official repository of the course Industrial Informatics LT, Year 2020/21, at University of Mode

High-Performance Real-Time Lab 3 Nov 30, 2021
stb single-file public domain libraries for C/C++

stb single-file public domain (or MIT licensed) libraries for C/C++ Noteworthy: image loader: stb_image.h image writer: stb_image_write.h image resize

Sean Barrett 17.3k Dec 1, 2021
Jittey - A public domain text editor written in C and Win32

Jittey (Jacob's Terrific Text Editor) is a single-file basic text editor written in pure C and Win32, there is no real reason to use it, but it

Jakub Šebek 22 Nov 15, 2021
1337.club public open source paste for CSGO

1337.club 1337.club public open source paste for CSGO Discord: https://discord.gg/nmDZ8Rwxvk How-To: Download the git client, found here: https://git-

Codey 8 Nov 14, 2021
All of my code from exploiting Apex Legends released to the public.

apex-cheating I'm releasing all my source and tools to do with Apex Legends today because idk man. UC-Apex-Remastered An Apex Legends cheat based off

null 27 Nov 24, 2021
Displays Lat & Long on the terminal from a public API.

iss-term Displays Latidude & Longitude on the terminal from a public API, by using lib curl Libraries used libcurl to install Before you do anything,

Brad Bettencourt 1 Nov 16, 2021
This repository is for everyone for Hacktoberfest 2021. Anyone can contribute anything for your Swags (T- Shirt), must be relevant that can add some value to this repository.

Hacktober Fest 2021 For Everyone! Upload Projects or Different Types of Programs in any Language Use this project to make your first contribution to a

Mahesh Jain 17 Nov 21, 2021
This Repository is created to help fellow coders learn open source contributions. This Repository is created for Hacktoberfest 2021

Hacktoberfest 2021 Follow the README below to get started! This Repository is created to help fellow coders learn open source contributions This Repos

Somesh Debnath 8 Nov 23, 2021
Doom port for InfOS - the University of Edinburgh Informatics research operating system used in the UG3 OS course

Doom on InfOS InfOS is the Informatics research operating system, designed specifically for the UG3 Operating Systems course. This project aims to por

Cheng Kai 12 Jun 15, 2021
Vaccine Monitor app implemented in C with system Programming techniques.Projects implemented as part of the course Syspro K24

System_Programming_Projects Vaccine Monitor app implemented in C with system Programming techniques.Projects implemented as part of the course Syspro

Aristi_Papastavrou 10 Jul 22, 2021
A C program game that James and I made for a course based off of Oregon Trail

ENGG1340 Course Project 2020/2021 Team members (Alphabetical Order) James & Collin Game description It is the modern era of the 21st Century and Chris

Collin 2 Oct 17, 2021
this is all about the EE222 course project

Embedded_System course project (Folder) 嵌入式 contains all details about EE222 include some code in the project and some homework in this class. (Folder

null 1 Oct 21, 2021
Several Proteus projects using Arduino Boards and sensors, these were parts of IoT course homework #1.

1. Print Print your name on virtual terminal using one of the Arduino family microcontrollers. 2. Highway Based on the position of the car in highway,

Parsa 1 Nov 3, 2021
Practical assignments for the XDU compiler course: The interpreter of function drawing language.

drawing-lang-interpreter Practical assignments for the XDU compiler course: The toy interpreter of function drawing language, written by XDU Zhang Yi(

null 1 Nov 28, 2021
Code for Stepper Motors and Robot Kinematics YouTube course

Code for YouTube course: Stepper Motors and Robot Kinematics: Theory and Practice on STM32 This repo contains the code for my YouTube course Stepper M

null 2 Nov 11, 2021
Undergrad Course CS252 Project Solutions

191CV210_CS252_PROJECT Details/Documentation for individual project constituting of the following problem statements from the 10th edition of Silbersc

Chaitanya Shashwat 1 Nov 21, 2021
Bau Bau is a DIY 4 legged quadruped robot inspired for construction robotics course.

Bau-Bau-Robot Bau Bau is a DIY 4 legged quadruped robot inspired for construction robotics course. In this course, we are looking forward to solve a p

Adithya Chinnakkonda 1 Nov 19, 2021
Homework for Computer Aided Geometric Design Course

Computer Aided Geometric Design Introduction MATH6110P: Computer Aided Geometric Design (Autumn-Winter 2021-2022) Instructors: Renjie Chen Webpage: ht

Wenbo Chen 2 Nov 26, 2021
The final project for the Udacity C++ Nanodegree Concurrency course

CPPND: Program a Concurrent Traffic Simulation This is the project for the fourth course in the Udacity C++ Nanodegree Program: Concurrency. Throughou

Franz 2 Oct 15, 2021