Exploiting Application-to-Architecture Dependencies for Designing Scalable OS

Fuente: arXiv
Salvato in:
Dettagli Bibliografici
Autori principali: Xiao, Yao, Kanakaris, Nikos, Cheng, Anzhe, Yin, Chenzhong, Ahmed, Nesreen K., Nazarian, Shahin, Irimia, Andrei, Bogdan, Paul
Natura: Preprint
Pubblicazione: 2025
Soggetti:
Accesso online:
Tags: Aggiungi Tag
Nessun Tag, puoi essere il primo ad aggiungerne!!
_version_ 1866913636180557824
author Xiao, Yao
Kanakaris, Nikos
Cheng, Anzhe
Yin, Chenzhong
Ahmed, Nesreen K.
Nazarian, Shahin
Irimia, Andrei
Bogdan, Paul
author_facet Xiao, Yao
Kanakaris, Nikos
Cheng, Anzhe
Yin, Chenzhong
Ahmed, Nesreen K.
Nazarian, Shahin
Irimia, Andrei
Bogdan, Paul
contents With the advent of hundreds of cores on a chip to accelerate applications, the operating system (OS) needs to exploit the existing parallelism provided by the underlying hardware resources to determine the right amount of processes to be mapped on the multi-core systems. However, the existing OS is not scalable and is oblivious to applications. We address these issues by adopting a multi-layer network representation of the dynamic application-to OS-to-architecture dependencies, namely the NetworkedOS. We adopt a compile-time analysis and construct a network representing the dependencies between dynamic instructions translated from the applications and the kernel and services. We propose an overlapping partitioning scheme to detect the clusters or processes that can potentially run in parallel to be mapped onto cores while reducing the number of messages transferred. At run time, processes are mapped onto the multi-core systems, taking into consideration the process affinity. Our experimental results indicate that NetworkedOS achieves performance improvement as high as 7.11x compared to Linux running on a 128-core system and 2.01x to Barrelfish running on a 64-core system.
format Preprint
id arxiv_https___arxiv_org_abs_2501_00994
institution arXiv
publishDate 2025
record_format arxiv
spellingShingle Exploiting Application-to-Architecture Dependencies for Designing Scalable OS
Xiao, Yao
Kanakaris, Nikos
Cheng, Anzhe
Yin, Chenzhong
Ahmed, Nesreen K.
Nazarian, Shahin
Irimia, Andrei
Bogdan, Paul
Operating Systems
With the advent of hundreds of cores on a chip to accelerate applications, the operating system (OS) needs to exploit the existing parallelism provided by the underlying hardware resources to determine the right amount of processes to be mapped on the multi-core systems. However, the existing OS is not scalable and is oblivious to applications. We address these issues by adopting a multi-layer network representation of the dynamic application-to OS-to-architecture dependencies, namely the NetworkedOS. We adopt a compile-time analysis and construct a network representing the dependencies between dynamic instructions translated from the applications and the kernel and services. We propose an overlapping partitioning scheme to detect the clusters or processes that can potentially run in parallel to be mapped onto cores while reducing the number of messages transferred. At run time, processes are mapped onto the multi-core systems, taking into consideration the process affinity. Our experimental results indicate that NetworkedOS achieves performance improvement as high as 7.11x compared to Linux running on a 128-core system and 2.01x to Barrelfish running on a 64-core system.
title Exploiting Application-to-Architecture Dependencies for Designing Scalable OS
topic Operating Systems
url https://arxiv.org/abs/2501.00994