USENIX 2005 Annual Technical Conference, General Track Abstract
Pp. 237250 of the Proceedings
Adaptive Main Memory Compression
Irina Chihaia Tuduce and Thomas Gross, ETH Zürich
Applications that use large data sets frequently exhibit poor
performance because the size of their working set exceeds the real
memory, causing excess page faults, and ultimately exhibit thrashing
This paper describes a memory compression solution to this problem
that adapts the allocation of real memory between uncompressed and
compressed pages and also manages fragmentation without user
involvement. The system manages its resources dynamically on the basis
of the varying demands of each application and also on the situational
requirements that are data dependent. The technique used to localize
page fragments in the compressed area allows the system to reclaim or
add space easily if it is advisable to shrink or grow the size of the
The design is implemented in Linux, runs on both 32-bit and 64-bit
architectures, and has been demonstrated to work in practice under
complex workload conditions and memory pressure. The benefits from our
approach depend on the relationship between the size of the compressed
area, the application's compression ratio, and the access pattern of
the application. For a range of benchmarks and applications, the
system shows an increase in performance by a factor of 1.3 to 55.
- View the full text of this paper in HTML and PDF.
Until April 2006, you will need your USENIX membership identification in order to access the full papers. The Proceedings are published as a collective work, © 2005 by the USENIX Association. All Rights Reserved. Rights to individual papers remain with the author or the author's employer. Permission is granted for the noncommercial reproduction of the complete work for educational or research purposes. USENIX acknowledges all trademarks within this paper.
- If you need the latest Adobe Acrobat Reader, you can download it from Adobe's site.