Back to the Past: When Segmentation Is More Efficient Than Paging

  • Lauri P. Laux Jr UFPR
  • Roberto A. Hexsel UFPR

Resumo


Virtual Memory was devised in a time of scarce resources. In the coming decade we expect to see physical memory systems populated with 264 bytes of RAM, a fraction of which may be non-volatile. Demand paging is inefficient in such large memories because space (Page Tables) and time (Page Table walks) overheads are too high. We collected execution traces from six applications and characterized their virtual memory behavior with respect to miss rates in references to Translation Buffers (TLBs) and Segment Buffers (SBs). Our measurements indicate that the miss rates for SBs are 2-3 orders of magnitude smaller than for TLBs. In light of these results, we discuss some of the design implications of segmented systems and of SBs.

Referências

A Bensoussan, C T Clingen, and R C Daley. The Multics virtual memory: Concepts and design. Comm of the ACM, 15(5):308–318, May 1972.

A Basu, J Gandhi, J Chang, M D Hill, and M M Swift. Efficient virtual memory for big memory servers. In ISCA’13: 40th Intl Symp on Computer Arch, pages 237–248, 2013.

Robert C Daley and Jack B Dennis. Virtual memory, processes, and sharing in MULTICS. Comm of the ACM, 11(5):306–312, May 1968.

Peter J Denning. Virtual memory. ACM Computing Surveys, 2(3):153–189, Sep 1970.

P Hornyack, L Ceze, S Gribble, D Ports, and H M Levy. A study of virtual memory usage and implications for large memory. In Proc Workshop on Interactions of NVM/FLASH with Operating Systems and Workloads, 2015.

John L Hennessy and David A Patterson. Computer Architecture: A Quantitative Approach. Morgan Kaufmann, 1st edition, 1990. ISBN 1558600698.

B L Jacob, S W Ng, and D T Wang. Memory Systems: Cache, DRAM, Disk. Morgan Kaufmann, 2008. ISBN 0123797513.

E J Koldinger, J S Chase, and S J Eggers. Architecture support for single address space operating systems. In ASPLOS’92: 5th Intl Conf on Arch Support for Progr Lang and Oper Sys, pages 175–186, 1992.

T Kilburn, D B G Edwards, M J Lanigan, and F H Sumner. One-level storage system. In IRE Trans on Electronic Computers, EC-11, pages 223–235, 1962.

Lauri P Laux Jr and R A Hexsel. Back to the past: Segmentation with infinite and non-volatile memory. In WSCAD-SSC’16: XVII Workshop em Sistemas Computacionais de Alto Desempenho, pages 278–289, 2016.

Nicholas Nethercote and Julian Seward. Valgrind: A framework for heavyweight dynamic binary instrumentation. In PLDI’07: Proc 28th ACM SIGPLAN Conf on Programming Language Design and Implementation, pages 89–100, 2007.

B Pham, A Bhattacharjee, Y Eckert, and G H Loh. Increasing TLB reach by exploiting clustering in page translations. In HPCA’14: 20th Int Symp on High-Performance Comp Arch, pages 558–567, 2014.

Ubuntu. SysBench – a modular, cross-platform and multi-threaded benchmark tool, Aug 2017.
Publicado
22/07/2018
LAUX JR, Lauri P.; HEXSEL, Roberto A.. Back to the Past: When Segmentation Is More Efficient Than Paging. In: WORKSHOP EM DESEMPENHO DE SISTEMAS COMPUTACIONAIS E DE COMUNICAÇÃO (WPERFORMANCE), 17. , 2018, Natal. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2018 . p. 235-247. ISSN 2595-6167. DOI: https://doi.org/10.5753/wperformance.2018.3331.