Hasso-Plattner-Institut25 Jahre HPI
Hasso-Plattner-Institut25 Jahre HPI

Hardware-Conscious Data Processing (Sommersemester 2024)

Lecturer: Prof. Dr. Tilmann Rabl (Data Engineering Systems) , Marcel Weisgut (Data Engineering Systems) , Martin Boissier (Enterprise Platform and Integration Concepts)
Course Website: https://hpi.de/rabl/teaching/summer-term-2024/hardware-conscious-data-processing.html

General Information

  • Weekly Hours: 4
  • Credits: 6
  • Graded: yes
  • Enrolment Deadline: 01.04.2024- 30.04.2024
  • Examination time §9 (4) BAMA-O: Rücktritt bis 17.06.2024 möglich
  • Teaching Form: Lecture
  • Enrolment Type: Compulsory Elective Module
  • Course Language: English

Programs, Module Groups & Modules

IT-Systems Engineering MA
Data Engineering MA
Digital Health MA
Cybersecurity MA
Software Systems Engineering MA
  • HPI-SSE-D Data Foundations
  • SSYS: Software Systems
    • HPI-SSYS-C Concepts and Methods
  • SSYS: Software Systems
    • HPI-SSYS-T Technologies and Tools
  • SSYS: Software Systems
    • HPI-SSYS-S Specialization
  • DSYS: Data-Driven Systems
    • HPI-DSYS-C Concepts and Methods
  • DSYS: Data-Driven Systems
    • HPI-DSYS-T Technologies and Tools
  • DSYS: Data-Driven Systems
    • HPI-DSYS-S Specialization


Hardware development continuously advances, with different technologies improving at different paces. While the number of transistors in a CPU package grows, the single-core performance stagnates due to physical limitations. These trends require changes in data processing to keep database management systems efficient. In this lecture, we will take a look at current computer architectures and accelerator technologies and how they can be used for efficient data processing. We will cover CPU and memory architecture, the storage hierarchy, modern memory and storage technologies, such as NVMe, fast interconnects, such as Infiniband, NVLink, and CXL, and accelerators, such as GPUs and FPGAs. The course has a significant practical part, where the students learn to implement data structures and algorithms tailored to hardware-conscious data processing.


This course is aimed towards students with knowledge in database and/or big data systems. Ideally, students have attended at least one of Big Data Systems, Distributed Data Management, Database Systems II, or similar. The programming tasks are all in C++, so students should be proficient in it. We provide a small example task (see Example Coding Task in Moodle) which students can do before the course to see whether they are comfortable with C++. If you are not able to solve this task, you will probably have a very hard time in the course, as this is the very minimum level needed to complete the other tasks.


  • Structured Computer Organization, Andrew S. Tanenbaum, Todd Austin, 2012, 978-0132916523
  • A Course in In-Memory Data Management: The Inner Mechanics of In-Memory Databases, Hasso Plattner, 2014, 978-3642552694


The course consists of lectures and programming exercises.

The lectures will be recorded and available on tele-TASK.


The programming tasks determine 100% of the grade, there is no final exam. In addition to the graded tasks, each student will present their solution for one task in a short individual meeting with the teaching team. We will randomly select students for each current task throughout the semester. Passing this discussion is mandatory to complete the course. The programming tasks will be 25% each.


The lectures will be held in presence on Tuesdays (L.E-03) and Wednesdays (L.E-03) at 11:00 h. The first session will be on 09.04.2024.

You can withdraw from the course until 17.06.2024 23:59 CEST.