Green Paging and Parallel Paging

We study two fundamental variants of the classic paging problem: green paging and parallel paging. In green paging one can choose the exact memory capacity in use at any given instant, between a maximum of k and a minimum of k/p pages; the goal is to minimize the integral of this number over the time required to complete a computation (note that running at lower capacity is not necessarily better, since might disproportionately increase the total completion time). In parallel paging, a memory of k pages is shared between p processors, each carrying out a separate computation; the goal is to minimize the respective completion times. We show how these two different problems are strictly related: any efficient solution to green paging can be converted into an efficient solution to parallel paging, and any lower bound for green paging can be converted into a lower bound for parallel paging---in both cases in a black-box fashion. Exploiting this relation, we provide tight upper and lower bounds of Θ(log p) on the competitive ratio with O(1) resource augmentation for both problems.

[1]  Eric Torng A Unified Analysis of Paging and Caching , 1998, Algorithmica.

[2]  Robert E. Tarjan,et al.  Amortized efficiency of list update and paging rules , 1985, CACM.

[3]  Harold S. Stone,et al.  Improving Disk Cache Hit-Ratios Through Cache Partitioning , 1992, IEEE Trans. Computers.

[4]  Edward F. Grove,et al.  Application-Controlled Paging for a Shared Cache , 2000, SIAM J. Comput..

[5]  Irving L. Traiger,et al.  Evaluation Techniques for Storage Hierarchies , 1970, IBM Syst. J..

[6]  Enoch Peserico,et al.  Elastic paging , 2013, SIGMETRICS '13.

[7]  G. Edward Suh,et al.  Dynamic Partitioning of Shared Cache Memory , 2004, The Journal of Supercomputing.

[8]  John Turek,et al.  Optimal Partitioning of Cache Memory , 1992, IEEE Trans. Computers.

[9]  Amos Fiat,et al.  Randomized and multipointer paging with locality of reference , 1995, STOC '95.

[10]  Cynthia A. Phillips,et al.  How to Manage High-Bandwidth Memory Automatically , 2020, SPAA.

[11]  Mohit Singh,et al.  Online Caching with Convex Costs: Extended Abstract , 2015, SPAA.

[12]  Alejandro López-Ortiz,et al.  Minimizing Cache Usage in Paging , 2012, WAOA.

[13]  Amit Kumar,et al.  Elastic Caching , 2019, SODA.

[14]  Enoch Peserico,et al.  Paging with dynamic memory capacity , 2013, STACS.

[15]  Allan Borodin,et al.  An optimal on-line algorithm for metrical task system , 1992, JACM.

[16]  Esteban Feuerstein,et al.  On-Line Multi-Threaded Paging , 2001, Algorithmica.

[17]  Edward F. Grove,et al.  Application-controlled paging for a shared cache , 1995, Proceedings of IEEE 36th Annual Foundations of Computer Science.

[18]  Vijaya Ramachandran,et al.  Competitive Cache Replacement Strategies for Shared Cache Environments , 2012, 2012 IEEE 26th International Parallel and Distributed Processing Symposium.

[19]  Alejandro López-Ortiz,et al.  Paging for multi-core shared caches , 2012, ITCS '12.

[20]  Avinatan Hassidim,et al.  Cache Replacement Policies for Multicore Processors , 2010, ICS.

[21]  Marek Chrobak,et al.  SIGACT news online algorithms column 17 , 2010, SIGA.

[22]  Michael A. Bender,et al.  Cache-Adaptive Algorithms , 2014, SODA.

[23]  Manish Purohit,et al.  Interleaved Caching with Access Graphs , 2020, SODA.

[24]  Michele Scquizzato Paging on Complex Architectures , 2013 .

[25]  Laszlo A. Belady,et al.  A Study of Replacement Algorithms for Virtual-Storage Computer , 1966, IBM Syst. J..

[26]  Kai Li,et al.  Application-Controlled File Caching Policies , 1994, USENIX Summer.

[27]  Mohit Singh,et al.  Online Caching with Convex Costs , 2015 .