Adaptive compressed caching: design and implementation

  • R. S. de Castro USP
  • A. P. D. Lago USP
  • D. da Silva IBM Thomson J. Watson Research Center

Resumo


We reevaluate the use of adaptive compressed caching in order to improve system performance through reduction of accesses to the backing stores. We propose a new and simple adaptability policy that adjusts the compressed cache size on-the-fly, and evaluate a compressed caching system with this policy through an implementation in a widely used operating system, Linux. We also redesign compressed caching in order to provide performance improvements for all tested workloads and address the problems faced in previous works and implementations that led to nonconclusive results. Among these fundamental modifications, our compressed cache is the first one to also compress file cache pages, to adaptively disable compression of clean pages when necessary and to address applications with poor compressibility. We tested a system with our adaptive compressed cache under many applications and benchmarks, each one with different memory pressures. The results showed performance improvements (up to 171.4%) in all of them if under memory pressure, and minimal overhead (up to 0.39%) when there is very light memory pressure. We show that this adaptive compressed cache design is actually considered as an effective mechanism for improvement in system performance.
Palavras-chave: System performance, Operating systems, Linux, Kernel, Computer science, System testing, Adaptive systems, Benchmark testing, Data compression, Hard disks
Publicado
10/11/2003
CASTRO, R. S. de; LAGO, A. P. D.; SILVA, D. da. Adaptive compressed caching: design and implementation. In: INTERNATIONAL SYMPOSIUM ON COMPUTER ARCHITECTURE AND HIGH PERFORMANCE COMPUTING (SBAC-PAD), 15. , 2003, São Paulo/SP. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2003 . p. 10-18.