| A very fast algorithm for RAM compression |
| Full text |
Pdf
(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 |
|
| Bibliometrics |
Downloads (6 Weeks): 5, Downloads (12 Months): 45, Citation Count: 8
|
|
|
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Zhuang Guo , José Nelson Amaral , Duane Szafron , Yang Wang, Utilizing field usage patterns for Java heap space optimization, Proceedings of the 2006 conference of the Center for Advanced Studies on Collaborative research, October 16-19, 2006, Toronto, Ontario, Canada
|
|
|
|
|
|
|
|
|
|
|