Olaf Spinczyk

Osnabrück University

MxKernel: Rethinking the System Software Architecture for Modern Heterogeneous Manycore Computers

The core concepts of today's commonly used operating systems have been invented multiple decades ago. However, the hardware landscape has changed dramatically. Unlike in the past, modern hardware is inherently parallel, has complex memory hierarchies, and often incorporates heterogeneous processors, such as a mix of CPU and GPGPU cores.

A lot of work has gone into retrofitting system software to leverage the potential of modern hardware, but the core abstractions used by applications have not been touched for compatibility reasons. Yet, these old abstractions, for example the thread-based control-flow model and lock-based synchronization, make efficient resource usage by the OS very difficult. As a consequence, performance-hungry parallel applications often bypass the OS and deal with classic operating system functions, such as synchronization and scheduling, either on their own or with user-level frameworks, such as Intel Threading Building Blocks (TBB) or OpenMP.
The MxKernel project (mxkernel.org) is an academic effort to rethink the design of OS abstractions to better suit modern manycore hardware and to reinstate the OS as the central resource manager that it used to be. It has a two-level architecture for cleanly separating functionality related to fair resource partitioning (lower level) from application services (upper level) that aim at optimal topology-aware exploitation of the assigned manycore hardware resources.

The talk will motivate and present the design of MxKernel. Some of the key features are a task-based execution model, automatic prefetching of application data, and lock-free task synchronization by following a holistic approach for (time/space) scheduling and synchronization. First results obtained with our prototype implementation indicate that we might be on the right track.

MxKernel is a sub-project of DFG Priority Programme 2037 "Scalable Data Management for Future Hardware" (dfg-spp2037.de).

Olaf Spinczyk received the PhD degree from the University of Magdeburg in 2002 for his research on operating system construction by aspect-orientation. He is currently a professor of computer science at Universität Osnabrück where he leads the Embedded Software Systems Group. Before moving to Osnabrück, he was a professor at Technische Universität Dortmund and a post doc at the University of Erlangen-Nuremberg. His current research is focused on the construction of efficient and reliable system software for embedded systems.
Homepage: https://ess.cs.uni-osnabrueck.de/~os/