Dynamic tracking of page miss ratio curve for memory management
- 7 October 2004
- journal article
- conference paper
- Published by Association for Computing Machinery (ACM) in ACM SIGARCH Computer Architecture News
- Vol. 32 (5), 177-188
- https://doi.org/10.1145/1037947.1024415
Abstract
Memory can be efficiently utilized if the dynamic memory demands of applications can be determined and analyzed at run-time. The page miss ratio curve(MRC), i.e. page miss rate vs. memory size curve, is a good performance-directed metric to serve this purpose. However, dynamically tracking MRC at run time is challenging in systems with virtual memory because not every memory reference passes through the operating system (OS).This paper proposes two methods to dynamically track MRC of applications at run time. The first method is using a hardware MRC monitor that can track MRC at fine time granularity. Our simulation results show that this monitor has negligible performance and energy overheads. The second method is an OS-only implementation that can track MRC at coarse time granularity. Our implementation results on Linux show that it adds only 7--10% overhead.We have also used the dynamic MRC to guide both memory allocation for multiprogramming systems and memory energy management. Our real system experiments on Linux with applications including Apache Web Server show that the MRC-directed memory allocation can speed up the applications' execution/response time by up to a factor of 5.86 and reduce the number of page faults by up to 63.1%. Our execution-driven simulation results with SPEC2000 benchmarks show that the MRC-directed memory energy management can improve the Energy * Delay metric by 27--58% over previously proposed static and dynamic schemes.Keywords
This publication has 27 references indexed in Scilit:
- Energy management for commercial serversComputer, 2003
- ReVirtACM SIGOPS Operating Systems Review, 2002
- Automatic data migration for reducing energy consumption in multi-bank memory systemsProceedings of the 39th conference on Design automation - DAC '02, 2002
- Hardware and software techniques for controlling DRAM power modesIEEE Transactions on Computers, 2001
- Influence of compiler optimizations on system powerPublished by Association for Computing Machinery (ACM) ,2000
- Informed prefetching and cachingPublished by Association for Computing Machinery (ACM) ,1995
- Improving disk cache hit-ratios through cache partitioningIEEE Transactions on Computers, 1992
- Evaluating associativity in CPU cachesIEEE Transactions on Computers, 1989
- WSCLOCK---a simple and effective algorithm for virtual memory managementPublished by Association for Computing Machinery (ACM) ,1981
- The working set model for program behaviorCommunications of the ACM, 1968