ACM Home Page
Please provide us with feedback. Feedback
A very fast algorithm for RAM compression
Full text PdfPdf (691 KB)
Source ACM SIGOPS Operating Systems Review archive
Volume 31 ,  Issue 2  (April 1997) table of contents
Pages: 36 - 45  
Year of Publication: 1997
ISSN:0163-5980
Author
Luigi Rizzo  Dipartimento di Ingegneria dell'Informazione, Università di Pisa, via Diotisalvi 2 - 56126 Pisa (Italy)
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 5,   Downloads (12 Months): 45,   Citation Count: 8
Additional Information:

abstract   cited by   index terms   collaborative colleagues  

Tools and Actions: Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/250007.250012
What is a DOI?

ABSTRACT

Compressed virtual memory systems have been suggested, and in some cases implemented, to improve the effectiveness of use of physical RAM. However, most proposals and/or implementations are based on adaptive compression algorithms which achieve good compression ratios, but are slow compared to a local disk. Hence, they can only give some advantage with very slow (e.g. network-mounted) swap devices. In this paper we show that in many cases memory pages contain highly compressible data, with a very large amount of zero-valued elements. This suggests the replacement of slow, adaptive compression algorithms with very fast ones based on static Huffman codes.We present one such algorithm which, paired with a careful layout of the data, is able to compress 4KB pages at 40MB/s even when implemented in software on an inexpensive Pentium 100 system. We also show that the algorithm can achieve interesting compression ratios despite its simplicity.Since the compression/decompression speed of our algorithms exceeds disk bandwidth, its use in a compressed VM system can lead to both memory savings and speed improvements in servicing page faults. In this paper we discuss some possible applications of the algorithm in a compressed VM system.


CITED BY  8