skip to main content
10.1145/68210.69227acmconferencesArticle/Chapter ViewAbstractPublication Pagesadhoc-now03Conference Proceedingsconference-collections
Article
Free Access

Supporting reverse execution for parallel programs

Published:01 November 1988Publication History

ABSTRACT

Parallel programs are difficult to debug because they run for a, long time and two executions may yield different results. Reverse execution, is a simple and powerful concept that solves both these problems. We are designing a tool for debugging parallel programs, called Recap, that provides the illusion of reverse execution using checkpoints and event recording and playback. During normal execution, Recap logs the results of system calls and shared memory reads: as well as the times that asynchronous events (signals) occur. Recap periodically checkpoints the state of a process by forking and suspending a new process. To reverse execute to a certain point in time, Recap continues the nearest checkpoint process forward in a self-contained environment, simulating all events using the log. We are implementing Recap as part of a larger environment for parallel program development.

References

  1. 1.A. Agarwal, R. L. Sites, and M. Horowitz, "ATUM: A New Technique for Capturing Address %ra.ces Using Microcode", Proceedings of the 13th Symposium on Computer Architecture, June 1986, pp. 119-127. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. 2.T. A. Cargill and B. N. Locanthi, "Cheap Hardwa.re Support for Softwa.re Debugging and Profiling", Proceedings of th.e Second International Conference o77. Architectural ,5'~lppor~ for Programming Languages and Operating Systems, Palo Alto, California, in SIGPLAN Notices, Vol. 22, No. 10, October 1987, pp. 8:2-83. Google ScholarGoogle ScholarCross RefCross Ref
  3. 3.R. Curt, is and L. Wittie, "Bugnet: A Debugging System for Pa.rallel Programming Environments", Proceedings of the 3rd Interna.tional Conference on Distributed Computing Systems, Miami, Florida, October 1982, pp. 394-399.Google ScholarGoogle Scholar
  4. 4.S. i. Feldma~l and C. B. Brown, "Igor: A Systern for Program Debugging Via R.eversible Execution", Proceedings of the A CM Workshop on. Parallel and Distributed Debugging, Ma.y 1988. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. 5.T. J. LeBla.nc and J. M. M ellor-Crummey, "Debugging Para.tlel Programs with Instant. Replay", IEEE Transactions on Com.puters, Vol. 36, No. 4, April 1987, pp. 471-482. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. 6.M. A. Linton, "Distributed Management of a Software Database", IEEE Software, Vol. 4, No. 6, November 1987, pp 70-76.Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. 7.B. P. Miller and Jong-Deok Choi, "A Mechanism for Efficient Debugging of Parallel Programs", Technical l~eport~ TR754, University of Wisconsin-Madison, 1987.Google ScholarGoogle Scholar
  8. 8.M. Young, A. Tevanian, it. t~ashid, D. Golub, 21. Eppinger, J. Chew, W. Bolosky, D. Black, and it. Baron, "The Duality of Memory a.nd Conununication in the Implementation of a Multoiprocessor Operating System", Proceedlugs of the 11th A CM Symposium on Oper'aing Sys~.ems Principles, Austin, Texe~s, November 1987, pp. 63-76. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Supporting reverse execution for parallel programs

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in
        • Published in

          cover image ACM Conferences
          PADD '88: Proceedings of the 1988 ACM SIGPLAN and SIGOPS workshop on Parallel and distributed debugging
          November 1988
          282 pages
          ISBN:0897912969
          DOI:10.1145/68210
          • cover image ACM SIGPLAN Notices
            ACM SIGPLAN Notices  Volume 24, Issue 1
            Special issue: Proceedings of the 1988 ACM SIGPLAN and SIGOPS workshop on parallel and distributed debugging
            Jan. 1989
            280 pages
            ISSN:0362-1340
            EISSN:1558-1160
            DOI:10.1145/69215
            Issue’s Table of Contents

          Copyright © 1988 ACM

          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 ACM 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]

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 1 November 1988

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • Article

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader