Virtuoso: An Open-Source, Comprehensive and Modular Simulation Framework for Virtual Memory Research
Konstantinos Kanellopoulos,Konstantinos Sgouras,Onur Mutlu
DOI: https://doi.org/10.48550/arXiv.2403.04635
2024-03-08
Abstract:Virtual memory is a cornerstone of modern computing <a class="link-external link-http" href="http://systems.Introduced" rel="external noopener nofollow">this http URL</a> as one of the earliest instances of hardware-software co-design, VM facilitates programmer-transparent memory man agement, data sharing, process isolation and memory protection. Evaluating the efficiency of various virtual memory (VM) designs is crucial (i) given their significant impact on the system, including the CPU caches, the main memory, and the storage device and (ii) given that different system architectures might benefit from various VM techniques. Such an evaluation is not straightforward, as it heavily hinges on modeling the interplay between different VM techniques and the interactions of VM with the system architecture. Modern simulators, however, struggle to keep up with the rapid VM research developments, lacking the capability to model a wide range of contemporary VM techniques and their interactions. To this end, we present Virtuoso, an open-source, comprehensive and modular simulation framework that models various VM designs to establish a common ground for virtual memory research. We demonstrate the versatility and the potential of Virtuoso with four new case studies. Virtuoso is freely open-source and can be found at <a class="link-external link-https" href="https://github.com/CMU-SAFARI/Virtuoso" rel="external noopener nofollow">this https URL</a>.
Hardware Architecture,Operating Systems