skip to main content
research-article

Vector-clock based partial order reduction for JPF

Published:11 February 2014Publication History
Skip Abstract Section

Abstract

Java Pathfinder (JPF) employs a dynamic partial order reduction based on sharing and state hashing to reduce the schedules in concurrent systems. That partial order reduction is believed to be complete in the new version of JPF using search global IDs (SGOIDs) but does miss behaviors when SGOIDs are not employed. More importantly, it is not clear how such a dynamic partial order reduction, with or without SGOIDs, compares to other dynamic partial order reductions based on persistent sets, sleep sets, or clock vectors. In order to understand JPF's native dynamic partial order reduction better, this paper discusses an implementation of Flanagan and Goidefroid's clock vector partial order reduction in JPF. Then, the performance of JPF's native dynamic partial order reduction and the clock vector partial order reduction in JPF using SGOIDs will be compared in an effort to understand JPF's dynamic partial order reduction more fully. It was discovered that a clock vector POR always performs better in terms of runtime on the benchmarks chosen, and sometimes even better in terms of memory.

References

  1. J. Esparza and K. Heljanko. Implementing LTL Model Checking with Net Unfoldings. In M. B. Dwyer, editor, SPIN, volume 2057 of Lecture Notes in Computer Science, pages 37--56. Springer, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. C. Flanagan and P. Godefroid. Dynamic Partial-order Reduction for Model Checking Software. In POPL '05: Proceedings of the 32nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages, pages 110--121, New York, NY, USA, 2005. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. P. Godefroid. Partial-Order Methods for the Verification of Concurrent Systems - An Approach to the State-Explosion Problem, volume 1032 of Lecture Notes in Computer Science. Springer, 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. R. P. Kurshan, V. Levin, M. Minea, D. Peled, and H. Yenigün. Static Partial Order Reduction. In B. Steffen, editor, TACAS, volume 1384 of Lecture Notes in Computer Science, pages 345--357. Springer, 1998. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. N. Rungta and E. G. Mercer. Hardness for Explicit State Software Model Checking Benchmarks. In SEFM, pages 247--256. IEEE Computer Society, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Vector-clock based partial order reduction for JPF

                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

                Full Access

                • Published in

                  cover image ACM SIGSOFT Software Engineering Notes
                  ACM SIGSOFT Software Engineering Notes  Volume 39, Issue 1
                  January 2014
                  193 pages
                  ISSN:0163-5948
                  DOI:10.1145/2557833
                  • Editor:
                  • Will Tracz
                  Issue’s Table of Contents

                  Copyright © 2014 Authors

                  Publisher

                  Association for Computing Machinery

                  New York, NY, United States

                  Publication History

                  • Published: 11 February 2014

                  Check for updates

                  Qualifiers

                  • research-article

                PDF Format

                View or Download as a PDF file.

                PDF

                eReader

                View online with eReader.

                eReader