Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/3210377.3210387acmconferencesArticle/Chapter ViewAbstractPublication PagesspaaConference Proceedingsconference-collections
research-article
Public Access

Red-Blue Pebble Game: Complexity of Computing the Trade-Off between Cache Size and Memory Transfers

Published: 11 July 2018 Publication History

Abstract

The red-blue pebble game was formulated in the 1980s~\citeHK81 to model the I/O complexity of algorithms on a two-level memory hierarchy. Given a directed acyclic graph representing computations (vertices) and their dependencies (edges), the red-blue pebble game allows sequentially adding, removing, and recoloring red or blue pebbles according to a few rules, where red pebbles represent data in cache (fast memory) and blue pebbles represent data on disk (slow, external memory). Specifically, a vertex can be newly pebbled red if and only if all of its predecessors currently have a red pebble; pebbles can always be removed; and pebbles can be recolored between red and blue (corresponding to reading or writing data between disk and cache, also called I/Os or memory transfers). Given an upper bound on the number of red pebbles at any time (the cache size), the goal is to compute a game execution with the fewest pebble recolorings (memory transfers) that finish with pebbles on a specified subset of nodes (outputs get computed). In this paper, we investigate the complexity of computing this trade-off between red-pebble limit (cache size) and number of recolorings (memory transfers) in general DAGs. First we prove this problem PSPACE-complete through an extension of the proof PSPACE-hardness of black pebbling complexity~\citeGLT80. Second, we consider a natural restriction on the red-blue pebble game to forbid pebble deletions, or equivalently, forbid discarding data from cache without first writing it to disk. This assumption both simplifies the model and immediately places the trade-off computation problem within NP. Unfortunately, we show that even this restricted version is NP-complete. Finally, we show that the trade-off problem parameterized by the number of transitions is W[1]-hard, meaning that there is likely no algorithm running in a fixed polynomial for constant number of transitions.

References

[1]
Alok Aggarwal and S. Vitter, Jeffrey. 1988. The Input/Output Complexity of Sorting and Related Problems. Commun. ACM 31, 9 (Sept. 1988), 1116--1127.
[2]
Charles H. Bennett. 1989. Time/Space Trade-offs for Reversible Computation. SIAM J. Comput. 18, 4 (Aug. 1989), 766--776.
[3]
Timothy Carpenter, Fabrice Rastello, P. Sadayappan, and Anastasios Sidiropoulos. 2016. Brief Announcement: Approximating the I/O Complexity of One-Shot Red-Blue Pebbling. In Proceedings of the 28th ACM Symposium on Parallelism in Algorithms and Architectures (SPAA '16). ACM, New York, NY, USA, 161--163.
[4]
Siu Man Chan, Massimo Lauria, Jakob Nordström, and Marc Vinyals. 2015. Hardness of Approximation in PSPACE and Separation Results for Pebble Games. In Proceedings of the IEEE 56th Annual Symposium on Foundations of Computer Science (FOCS '15). 466--485.
[5]
Stephen Cook and Ravi Sethi. 1974. Storage Requirements for Deterministic / Polynomial Time Recognizable Languages. In Proceedings of the 6th Annual ACM Symposium on Theory of Computing (STOC '74). 33--39.
[6]
Stephen A. Cook. 1973. An Observation on Time-storage Trade off. In Proceedings of the 5th Annual ACM Symposium on Theory of Computing (STOC '73). 29--33.
[7]
Erik D. Demaine. 2017. Lecture 22: History of memory models. In 6.851: Advanced Data Structures. Massachusetts Institute of Technology. http://courses.csail.mit. edu/6.851/fall17/lectures/L22.html
[8]
Erik D. Demaine and Quanquan C. Liu. 2017. Inapproximability of the Standard Pebble Game and Hard to Pebble Graphs. In Proceedings of the 16th International Symposium on Algorithms and Data Structures, WADS '17 (Lecture Notes in Computer Science), Vol. 10389. Springer, 313--324.
[9]
Rod G. Downey and Michael R. Fellows. 1995. Fixed-Parameter Tractability and Completeness I: Basic Results. SIAM J. Comput. 24, 4 (1995), 873--921. arXiv:https://doi.org/10.1137/S0097539792228228
[10]
Rod G. Downey and Michael R. Fellows. 1995. Fixed-parameter Tractability and Completeness II: On Completeness for W {1}. Theor. Comput. Sci. 141, 1--2 (April 1995), 109--131.
[11]
Venmugil Elango, Fabrice Rastello, Louis-Noël Pouchet, J. Ramanujam, and P. Sadayappan. 2015. On Characterizing the Data Access Complexity of Programs. In Proceedings of the 42nd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL '15). 567--580. https://dl.acm.org/citation.cfm? id=2677010
[12]
Michael R. Garey and David S. Johnson. 1990. Computers and Intractability; A Guide to the Theory of NP-Completeness. W. H. Freeman & Co., New York, NY, USA.
[13]
John R. Gilbert, Thomas Lengauer, and Robert Endre Tarjan. 1980. The Pebbling Problem is Complete in Polynomial Space. SIAM J. Comput. 9, 3 (1980), 513--524. arXiv:https://doi.org/10.1137/0209038.
[14]
Hong Jia-Wei and H. T. Kung. 1981. I/O Complexity: The Red-blue Pebble Game. In Proceedings of the 13th Annual ACM Symposium on Theory of Computing (STOC '81). 326--333.
[15]
Jakob Nordstrom. 2015. New Wine into Old Wineskins: A Survey of Some Pebbling Classics with Supplemental Results. https://www.csc.kth.se/~jakobn/ research/PebblingSurveyTMP.pdf.
[16]
Desh Ranjan, John E. Savage, and Mohammad Zubair. 2012. Upper and lower I/O bounds for pebbling r-pyramids. J. Discrete Algorithms 14 (2012), 2--12.
[17]
Ravi Sethi. 1975. Complete Register Allocation Problems. SIAM J. Comput. 4, 3 (1975), 226--248.

Cited By

View all
  • (2024)Brief Announcement: Red-Blue Pebbling with Multiple Processors: Time, Communication and Memory Trade-offsProceedings of the 36th ACM Symposium on Parallelism in Algorithms and Architectures10.1145/3626183.3660269(285-287)Online publication date: 17-Jun-2024
  • (2022)Reducing communication in the conjugate gradient methodProceedings of the Platform for Advanced Scientific Computing Conference10.1145/3539781.3539785(1-11)Online publication date: 27-Jun-2022
  • (2022)The Red-Blue Pebble Game on Trees and DAGs with Large InputStructural Information and Communication Complexity10.1007/978-3-031-09993-9_8(135-153)Online publication date: 25-Jun-2022
  • Show More Cited By

Index Terms

  1. Red-Blue Pebble Game: Complexity of Computing the Trade-Off between Cache Size and Memory Transfers

    Recommendations

    Comments

    Please enable JavaScript to view thecomments powered by Disqus.

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    SPAA '18: Proceedings of the 30th on Symposium on Parallelism in Algorithms and Architectures
    July 2018
    437 pages
    ISBN:9781450357999
    DOI:10.1145/3210377
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 11 July 2018

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. computational complexity
    2. external memory model
    3. red-blue pebble game

    Qualifiers

    • Research-article

    Funding Sources

    Conference

    SPAA '18
    Sponsor:

    Acceptance Rates

    SPAA '18 Paper Acceptance Rate 36 of 120 submissions, 30%;
    Overall Acceptance Rate 447 of 1,461 submissions, 31%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)136
    • Downloads (Last 6 weeks)25
    Reflects downloads up to 21 Nov 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2024)Brief Announcement: Red-Blue Pebbling with Multiple Processors: Time, Communication and Memory Trade-offsProceedings of the 36th ACM Symposium on Parallelism in Algorithms and Architectures10.1145/3626183.3660269(285-287)Online publication date: 17-Jun-2024
    • (2022)Reducing communication in the conjugate gradient methodProceedings of the Platform for Advanced Scientific Computing Conference10.1145/3539781.3539785(1-11)Online publication date: 27-Jun-2022
    • (2022)The Red-Blue Pebble Game on Trees and DAGs with Large InputStructural Information and Communication Complexity10.1007/978-3-031-09993-9_8(135-153)Online publication date: 25-Jun-2022
    • (2021)Accelerating XOR-based erasure coding using program optimization techniquesProceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis10.1145/3458817.3476204(1-14)Online publication date: 14-Nov-2021
    • (2020)On the Hardness of Red-Blue Pebble GamesProceedings of the 32nd ACM Symposium on Parallelism in Algorithms and Architectures10.1145/3350755.3400278(419-429)Online publication date: 6-Jul-2020

    View Options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Login options

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media