1999 · 138 citations · 10 references
ComputingComputer EngineeringComputer ScienceComputer ArchitectureMemoryStorage SystemsCachingCaching StrategiesData CompressionMemory HierarchyMemory Hierarchy DesignVirtual MemoryCompressionIn-memory CachingLempel-ziv CompressionMemory CachingMemory CompressionMemory Hierarchy AlgorithmsMemory Hierarchy PerformanceVirtual Memory Management
Compressed caching uses part of the available RAM to hold pages in compressed form, effectively adding a new level to the virtual memory hierarchy. This level attempts to bridge the huge performance gap between normal (uncompressed) RAM and disk. Unfortunately, previous studies did not show a consistent benefit from the use of compressed virtual memory. In this study, we show that technology trends favor compressed virtual memory---it is attractive now, offering reduction of paging costs of several tens of percent, and it will be increasingly attractive as CPU speeds increase faster than disk speeds. Two of the elements of our approach are innovative. First, we introduce novel compression algorithms suited to compressing in-memory data representations. These algorithms are competitive with more mature ZivLempel compressors, and complement them. Second, we adaptively determine how much memory (if at all) should be compressed by keeping track of recent program behavior. This solves the p...
10
Virtual memory primitives for user programs
Andrew W. Appel, Kai Li · 1991 · 245 citations · Full text
Jens Ernst, William Evans, Christopher W. Fraser et al. · 1997 · 142 citations · Full text
An extremely fast Ziv-Lempel data compression algorithm
Ross N. Williams · 2002 · 103 citations