• DocumentCode
    2602098
  • Title

    Identifying future field accesses in exhaustive state space traversal

  • Author

    Parizek, P. ; Lhotak, Ondrej

  • Author_Institution
    David R. Cheriton Sch. of Comput. Sci., Univ. of Waterloo, Waterloo, ON, Canada
  • fYear
    2011
  • fDate
    6-10 Nov. 2011
  • Firstpage
    93
  • Lastpage
    102
  • Abstract
    One popular approach to detect errors in multi-threaded programs is to systematically explore all possible interleavings. A common algorithmic strategy is to construct the program state space on-the-fly and perform thread scheduling choices at any instruction that could have effects visible to other threads. Existing tools do not look ahead in the code to be executed, and thus their decisions are too conservative. They create unnecessary thread scheduling choices at instructions that do not actually influence other threads, which implies exploring exponentially greater numbers of interleavings. In this paper we describe how information about field accesses that may occur in the future can be used to identify and eliminate unnecessary thread choices. This reduces the number of states that must be processed to explore all possible behaviors and therefore improves the performance of exhaustive state space traversal. We have applied this technique to Java PathFinder, using the WALA library for static analysis. Experiments on several Java programs show big performance gains. In particular, it is now possible to check with Java PathFinder more complex programs than before in reasonable time.
  • Keywords
    Java; multi-threading; program diagnostics; scheduling; software libraries; state-space methods; Java PathFinder; Java program; WALA library; exhaustive state space traversal; future field access identification; multithreaded program; program state space on-the-fly; static analysis; thread scheduling choice; Companies; Context; Instruction sets; Java; Performance analysis; Remuneration; Transfer functions; Java PathFinder; WALA; concurrency; exhaustive state space traversal; field accesses; state explosion;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Automated Software Engineering (ASE), 2011 26th IEEE/ACM International Conference on
  • Conference_Location
    Lawrence, KS
  • ISSN
    1938-4300
  • Print_ISBN
    978-1-4577-1638-6
  • Type

    conf

  • DOI
    10.1109/ASE.2011.6100154
  • Filename
    6100154