Filters








2,190 Hits in 3.4 sec

Asserting and checking determinism for multithreaded programs

Jacob Burnim, Koushik Sen
2010 Communications of the ACM  
The most widespread method for writing parallel software is to use explicit threads. Writing correct multithreaded programs, however, has proven to be quite challenging in practice.  ...  We describe an implementation of our deterministic assertions as a library for Java, and evaluate the utility of our specifications on a number of parallel Java benchmarks.  ...  DETERMINISM CHECKING LIBRARY In this section, we describe the design and implementation of an assertion library for specifying and checking determinism of Java programs.  ... 
doi:10.1145/1743546.1743572 fatcat:zkottppffveczn665gfchmxtmi

Asserting and checking determinism for multithreaded programs

Jacob Burnim, Koushik Sen
2009 Proceedings of the 7th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering on European software engineering conference and foundations of software engineering symposium - ESEC/FSE '09  
The most widespread method for writing parallel software is to use explicit threads. Writing correct multithreaded programs, however, has proven to be quite challenging in practice.  ...  We describe an implementation of our deterministic assertions as a library for Java, and evaluate the utility of our specifications on a number of parallel Java benchmarks.  ...  DETERMINISM CHECKING LIBRARY In this section, we describe the design and implementation of an assertion library for specifying and checking determinism of Java programs.  ... 
doi:10.1145/1595696.1595700 dblp:conf/sigsoft/BurnimS09 fatcat:nseqbugphvf3hglas4brtopojy

An Empirical Study over Correctness Properties for Multithreaded Programs

Abdul Rahim Mohamed Ariffin, Isma Farah Siddiqui, Scott Uk-Jin Lee
2016 Indian Journal of Science and Technology  
It is nearly impossible to achieve completeness and soundness for multithreaded programs.  ...  However, existing tools are still unable to discover all possible correctness properties for multithreaded programs and most of the tools only verifies deterministic multithreaded programs.  ...  To address this problem, there has been a number of tools that were developed to check for determinism in multithreaded programs.  ... 
doi:10.17485/ijst/2016/v9i17/92730 fatcat:hsovlngggnbepab2d3q4ne4ntm

Abstract Threads [chapter]

Shuvendu K. Lahiri, Alexander Malkis, Shaz Qadeer
2010 Lecture Notes in Computer Science  
Verification of large multithreaded programs is challenging.  ...  Automatic approaches cannot overcome the state explosion in the number of threads; semi-automatic methods require expensive human time for finding global inductive invariants.  ...  The conformance check for each thread is implemented using the Boogie [2] verifier and the abstract multithreaded programs are checked using Boogie and SPIN [15] .  ... 
doi:10.1007/978-3-642-11319-2_18 fatcat:sd46jyjjgzdn5hf4lw7bbhpufq

Thread-Modular Model Checking [chapter]

Cormac Flanagan, Shaz Qadeer
2003 Lecture Notes in Computer Science  
We present thread-modular model checking, a novel technique for verifying correctness properties of loosely-coupled multithreaded software systems.  ...  Separate verification of each thread yields significant space and time savings.  ...  In earlier work, we extended the proof rule of Jones and implemented it in the Calvin checker [FFQ02, FQS02] for multithreaded Java programs.  ... 
doi:10.1007/3-540-44829-2_14 fatcat:ry77kbqxobfbvkrh2jtetrrm4i

Change-aware preemption prioritization

Vilas Jagannath, Qingzhou Luo, Darko Marinov
2011 Proceedings of the 2011 International Symposium on Software Testing and Analysis - ISSTA '11  
While many techniques have been proposed for regression test prioritization, selection, and minimization for sequential tests, there is not much work for multithreaded code.  ...  We evaluated CAPP on the detection of 15 faults in multithreaded Java programs, including large open-source programs.  ...  Acknowledgements We thank Milos Gligoric and Adrian Nistor for extensive discussions about this work, and Nicholas Chen, Ralph Johnson, and anonymous reviewers for comments on previous versions of this  ... 
doi:10.1145/2001420.2001437 dblp:conf/issta/JagannathLM11 fatcat:23xmktnedzh4jpu6gs3imoudle

KISS

Shaz Qadeer, Dinghao Wu
2004 SIGPLAN notices  
We have implemented the technique in KISS, an automated checker for multithreaded C programs, and obtained promising initial results by using KISS to detect race conditions in Windows device drivers.  ...  Traditional automated techniques for finding errors in concurrent programs, such as model checking, explore all possible thread interleavings.  ...  Acknowledgments We gratefully acknowledge the help of our colleagues, Tom Ball, Byron Cook, Jakob Lichtenberg, and Sriram Rajamani, for answering numerous questions about SLAM and for helping with the  ... 
doi:10.1145/996893.996845 fatcat:qxwskrtkifa7bhkzadqvypmzw4

KISS

Shaz Qadeer, Dinghao Wu
2004 Proceedings of the ACM SIGPLAN 2004 conference on Programming language design and implementation - PLDI '04  
We have implemented the technique in KISS, an automated checker for multithreaded C programs, and obtained promising initial results by using KISS to detect race conditions in Windows device drivers.  ...  Traditional automated techniques for finding errors in concurrent programs, such as model checking, explore all possible thread interleavings.  ...  Acknowledgments We gratefully acknowledge the help of our colleagues, Tom Ball, Byron Cook, Jakob Lichtenberg, and Sriram Rajamani, for answering numerous questions about SLAM and for helping with the  ... 
doi:10.1145/996841.996845 dblp:conf/pldi/QadeerW04 fatcat:bvfr2weslfeyvjk3q2khqgg5ky

Trace-Driven Verification of Multithreaded Programs [chapter]

Zijiang Yang, Karem Sakallah
2010 Lecture Notes in Computer Science  
We present a new method that combines the efficiency of testing with the reasoning power of satisfiability modulo theory (SMT) solvers for the verification of multithreaded programs under a user specified  ...  Our method performs dynamic executions to obtain both under-and over-approximations of the program, represented as quantifier-free first order logic formulas.  ...  Besides the basic types, we also allow assert(C) for checking assertions, exit for signaling the termination of a thread, and the synchronization primitives. fork(t) and join(t) allow a thread to dispatch  ... 
doi:10.1007/978-3-642-16901-4_27 fatcat:w5yz7nvhezeqnhhd4rr7yojzt4

Static and Precise Detection of Concurrency Errors in Systems Code Using SMT Solvers [chapter]

Shuvendu K. Lahiri, Shaz Qadeer, Zvonimir Rakamarić
2009 Lecture Notes in Computer Science  
We demonstrate the use of field slicing for improving the scalability and (in some cases) coverage of our checking.  ...  to be employed for verifying concurrent programs.  ...  Figure 3 gives the pseudocode for the algorithm. The algorithm takes a program P and checks if the assertion in the program holds.  ... 
doi:10.1007/978-3-642-02658-4_38 fatcat:gycp3e34anfbnaacb5knvc5uvu

Detecting Fair Non-termination in Multithreaded Programs [chapter]

Mohamed Faouzi Atig, Ahmed Bouajjani, Michael Emmi, Akash Lal
2012 Lecture Notes in Computer Science  
We develop compositional analysis algorithms for detecting nontermination in multithreaded programs.  ...  in multithreaded programs to state-reachability in sequential programs.  ...  [16] propose a compositional LTL model checking technique for multithreaded programs based on context-bounding.  ... 
doi:10.1007/978-3-642-31424-7_19 fatcat:yjqy3biq2rdjpmaaa6rzow3xh4

A Type and Effect System for Determinism in Multithreaded Programs [chapter]

Yi Lu, John Potter, Chenyi Zhang, Jingling Xue
2012 Lecture Notes in Computer Science  
This allows us to present a type and effect system for statically reasoning about determinism in multithreaded programs.  ...  But similar support for multithreaded programming, where threads may be ubiquitously spawned with arbitrary lifetimes, especially to achieve a modular and manageable combination of determinism and nondeterminism  ...  This paper proposes a simple and intuitive approach for type checking determinism in multithreaded imperative programs.  ... 
doi:10.1007/978-3-642-28869-2_26 fatcat:m4qlws5iqbe3tdcznpsrzossjy

Sthread: In-Vivo Model Checking of Multithreaded Programs

Gene Cooperman, Martin Quinson
2020 The Art, Science, and Engineering of Programming  
Sthread operates directly on multithreaded C/C++ programs, without the need for an intermediate formal model.  ...  This work strives to make formal verification of POSIX multithreaded programs easily accessible to general programmers.  ...  The authors are grateful for the detailed comments of the referees and for the careful reading and comments by Gregory Price.  ... 
doi:10.22152/programming-journal.org/2020/4/13 fatcat:caafa2iasjf2hap3lvxecvmdjy

Automatic Discovery of Transition Symmetry in Multithreaded Programs Using Dynamic Analysis [chapter]

Yu Yang, Xiaofang Chen, Ganesh Gopalakrishnan, Chao Wang
2009 Lecture Notes in Computer Science  
We propose an algorithm for automatically discovering and applying transition symmetry in multithreaded programs during dynamic model checking.  ...  Our main idea is using dynamic program analysis to identify a permutation of variables and labels of the program that entails syntactic equivalence among the residual code of threads and to check whether  ...  checking time for realistic multithreaded applications.  ... 
doi:10.1007/978-3-642-02652-2_22 fatcat:ovbhiylazfas3blj5qo6uictqm

Dynamic Verification of Cache Coherence Protocols [chapter]

Jason F. Cantin, Mikko H. Lipasti, James E. Smith
2004 High Performance Memory Systems  
An example implementation is shown, and the overhead is estimated for a small SMP system.  ...  Analogous to the DIVA concept for singleprocessor systems, a simple version of the protocol functions as a checker for the aggressive implementation.  ...  Acknowledgements We thank Timothy Heil, Ashutosh Dhodapkar, Sebastien Nussbaum, and Tejas Karkhanis for comments on drafts of this paper. This work is supported by NSF grant CCR-0083126 and by IBM.  ... 
doi:10.1007/978-1-4419-8987-1_3 fatcat:anrsvvjzrzal5oyxmzl6gmussa
« Previous Showing results 1 — 15 out of 2,190 results