Beomseok Nam, Henrique Andrade, et al.
ACM/IEEE SC 2006
A overview of a set of algorithms and data structures developed for compressed-memory machines is given. These include 1) very fast compression and decompression algorithms, for relatively small fixed-size lines, that are suitable for hardware implementation; 2) methods for storing variable-size compressed lines in main memory that minimize overheads due to directory size and storage fragmentation, but that are simple enough for implementation as part of a system memory controller; 3) a number of operating system modification required to ensure that a compressed-memory machine never runs out of memory as the compression ratio changes dynamically. This research was done to explore the feasibility of computer architectures in which data are decompressed/compressed on cache misses/writebacks. The results led to and were implemented in IBM Memory Expansion Technology (MXT), which for typical systems yields a factor of 2 expansion in effective memory size with generally minimal effect on performance.
Beomseok Nam, Henrique Andrade, et al.
ACM/IEEE SC 2006
Liqun Chen, Matthias Enzmann, et al.
FC 2005
A. Gupta, R. Gross, et al.
SPIE Advances in Semiconductors and Superconductors 1990
Sai Zeng, Angran Xiao, et al.
CAD Computer Aided Design