Hasso-Plattner-InstitutSDG am HPI
Hasso-Plattner-InstitutDSG am HPI

Hardware-Conscious Data Processing (Sommersemester 2022)

Dozent: Prof. Dr. Tilmann Rabl (Data Engineering Systems) , Lawrence Benson (Data Engineering Systems)
Website zum Kurs: https://hpi.de/rabl/teaching/summer-term-2022/hardware-concious-data-processing.html

Allgemeine Information

  • Semesterwochenstunden: 4
  • ECTS: 6
  • Benotet: Ja
  • Einschreibefrist: 01.04.2022 - 30.04.2022
  • Prüfungszeitpunkt §9 (4) BAMA-O: 20.06.2022
  • Lehrform: Vorlesung
  • Belegungsart: Wahlpflichtmodul
  • Lehrsprache: Englisch

Studiengänge, Modulgruppen & Module

Data Engineering MA
IT-Systems Engineering MA
  • OSIS: Operating Systems & Information Systems Technology
    • HPI-OSIS-K Konzepte und Methoden
  • OSIS: Operating Systems & Information Systems Technology
    • HPI-OSIS-T Techniken und Werkzeuge
  • OSIS: Operating Systems & Information Systems Technology
    • HPI-OSIS-S Spezialisierung
  • SAMT: Software Architecture & Modeling Technology
    • HPI-SAMT-K Konzepte und Methoden
  • SAMT: Software Architecture & Modeling Technology
    • HPI-SAMT-T Techniken und Werkzeuge
  • SAMT: Software Architecture & Modeling Technology
    • HPI-SAMT-S Spezialisierung
Cybersecurity MA
Digital Health MA


Hardware development continuously advances, with different technologies improving at different pace. While the amount of transistors in a CPU package are growing, the single core performance is stagnating 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 technolgoies, such as NVM and NVMe; fast interconnects, such as Infiniband, RDMA, and NVLink; 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 concious 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.


Will be announced in the course and Moodle.


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. This discussion will make up 20% of the final grade. The programming tasks will be 20% each.


The lectures will be held in presence on Tuesdays (L.E-02) and Thursdays (L.E-02) at 11:00 h. The first session will be on 19.04.2022.