Description du projet :
The goal of this project is to support the Midgard technology in the Gem5 simulator. Midgard proposes to rethink the overall virtual memory technology of current servers by exposing a global but sparse intermediate address space in a coherent cache hierarchy. Midgard eliminates TLBs by offering a direct translation in hardware from existing Operating System (OS) Virtual Memory (VM) software abstractions (called VMAs) and performs page-level translations only when accessing physical memory or I/O. As such, in contrast to state-of-the-art page-based VM, Midgard's overall address translation overhead decreases with an increase in cache hierarchy capacity. By eliminating the need for deep TLB hierarchies, Midgard not only reclaims the TLB silicon provisioning, but also offers orders of magnitude faster address translation, shootdown and access control creation/revocation as compared to conventional page-based VM.
Prof. Zapater is affiliated faculty in the Midgard project, a joint project between EPFL, Yale University and the University of Edinburgh. Within this project she collaborates with EPFL in providing simulation support for Midgard in gem5.
Firstly, because Midgard requires the use of multi-level TLBs, to simulate Midgard on gem5 we need to setup all the simulation environment in the last Gem5 version, namely gem5-22. However, the gem5-X simulator developed at EPFL only provides support for older (2019) gem5 versions, which do not include the adequate support for Midgard. Therefore, within this project we plan to perform the necessary developments required to port the main features of gem5-X to gem5-22, creating a new release named gem5-X-22, where all Midgard support will be released.
Secondly, we will create the necessary models in gem5 to enable simulating Midgard at the hardware and architectural levels. We will also develop the necessary framework to enable the creation of cache-coherent Midgard-compliant accelerators. We will do so by supporting the enhancement of the ALPINE simulation framework, adequately integrating it into gem5.
Finally, to showcase and fully simulate Midgard, we will focus on having a proof-of-concept Midgard-compliant OS implementation is SO3, running in gem5. SO3 is a Linux-based simple operating system user for teaching and research at the REDS institute. It provides all base functionalities of a Linux kernel while being lightweight and easy to modify. The goal will be providing Midgard support in SO3, while maintaining compatibility with Linux-based systems, to allow advances in the proposal of cache-coherent accelerators.
Research team within HES-SO:
Zapater Sancho Marina
Partenaires académiques: EPFL
Durée du projet:
01.10.2022 - 31.12.2024
Url of the project site: