We present a new extension of the generalized caching/paging problem that allows the adversary to arbitrarily change the cost or weight of the currently requested page. We present modifications of previous algorithms for generalized caching to handle varying page weights and page costs. In particular, a deterministic algorithm based on [5, 9] for an (h, k)-competitive algorithm with competitive ratio k/(k − h + 1) is presented. In addition, a randomized algorithm based on [1, 2] with competitive ratio O(log k) is presented. We present three applications that can be supported via reductions to generalized caching with varying page weights and page costs. These applications are: (1) support of subsets of pages that must be simultaneously present in the cache before entry to a critical section (i.e., working sets), (2) change of page size due to compression and decompression, (3) variable cache size (i.e., elastic caches).
|Title of host publication||SPAA 2018 - Proceedings of the 30th ACM Symposium on Parallelism in Algorithms and Architectures|
|Publisher||Association for Computing Machinery|
|Number of pages||8|
|State||Published - 11 Jul 2018|
|Event||30th ACM Symposium on Parallelism in Algorithms and Architectures, SPAA 2018 - Vienna, Austria|
Duration: 16 Jul 2018 → 18 Jul 2018
|Name||Annual ACM Symposium on Parallelism in Algorithms and Architectures|
|Conference||30th ACM Symposium on Parallelism in Algorithms and Architectures, SPAA 2018|
|Period||16/07/18 → 18/07/18|
Bibliographical noteFunding Information:
∗This research was supported by a grant from the United States-Israel Binational Science Foundation (BSF), Jerusalem, Israel, and the United States Science Foundation (NSF). †Supported in part by the Israel Science Foundation (grant no. 497/14). The authors would like to thank Marcin Bienkowski and Gil Einziger for useful discussions. Part of this work was done while the authors were visiting the Max Planck Institute for Informatics.
© 2018 Association for Computing Machinery.
- Competitive analysis
- Online algorithms