Proceedings Article10.1145/376656.376848
Multithreaded Java program test generation
Orit Edelstein,Eitan Farchi,Yarden Nir,Gil Ratsaby,Shmuel Ur +4 more
- 01 Jun 2001
- pp 181
TL;DR: ConTest, a tool for detecting synchronization faults in multithreaded Java programs that makes random or coveragebased decisions as to whether the seeded primitive is to be executed, increases the probability of finding concurrent faults.
read more
Abstract: We describe ConTest, a tool for detecting synchronization faults in multithreaded Java™ programs. The program under test is seeded with a sleep(), yield(), or priority() primitive at shared memory accesses and synchronization events. At run time, ConTest makes random or coverage-based decisions as to whether the seeded primitive is to be executed. Thus, the probability of finding concurrent faults is increased. A replay algorithm facilitates debugging by saving the order of shared memory accesses and synchronization events.
read more
Chat with Paper
AI Agents for this Paper
Find similar papers on Google Scholar, PubMed and Arxiv
Write a critical review of this paper
Analyze citations of this paper to find unaddressed research gaps
Citations
Performance comparison of java based parallel programming models
TL;DR: The aim is to explore the performance comparison between threads, message passing and hybrid model in Java, specifically using Java multithreading and MPJ Express using word count occurrence which is significant in Natural Language Processing.
Detecting, Exposing, and Classifying Sequential Consistency Violations
Mohammad Majharul Islam,Abdullah Muzahid +1 more
- 01 Oct 2016
TL;DR: Orion is proposed, the first active testing technique that can detect, expose, and classify any arbitrary SC violations in any program, and has a much better SC violation detection ability.
5
Using combinatorial benchmark construction to improve the assessment of concurrency bug detection tools
Jeremy S. Bradbury,Itai Segall,Eitan Farchi,Kevin Jalbert,David Kelk +4 more
- 16 Jul 2012
TL;DR: A combinatorial model for creating a benchmark for concurrency bug detection methods is presented, a new concurrency benchmark is proposed and the relationship between these new benchmarks and existing benchmarks is discuses.
4
Understanding the interleaving-space overlap across inputs and software versions
Dongdong Deng,Wei Zhang,Borui Wang,Peisen Zhao,Shan Lu +4 more
- 07 Jun 2012
TL;DR: This position paper uses open-source software to study how interleavings, data races and atomicity violations particularly, overlap across test inputs and software versions, and conducts preliminary explorations to improve the testing efficiency of multi-threaded software by avoiding redundant analysis across inputs andSoftware versions.
Isolating bugs in multithreaded programs using execution suppression
TL;DR: This work proposes a general framework that can isolate the root cause of any failure in a multithreaded program that involves memory corruption and reveals at least a subset of this memory corruption.
References
Time, clocks, and the ordering of events in a distributed system
TL;DR: In this article, the concept of one event happening before another in a distributed system is examined, and a distributed algorithm is given for synchronizing a system of logical clocks which can be used to totally order the events.
Time, clocks, and the ordering of events in a distributed system
TL;DR: In this paper, the concept of one event happening before another in a distributed system is examined, and a distributed algorithm is given for synchronizing a system of logical clocks which can be used to totally order the events.
•Book
Design and validation of computer protocols
Gerard J. Holzmann
- 01 Jan 1991
TL;DR: Part 1 Basic: introduction protocol structure error control flow control and design tools: a protocol simulator a protocol validator using the validator.
Eraser: a dynamic data race detector for multithreaded programs
TL;DR: A new tool, called Eraser, is described, for dynamically detecting data races in lock-based multithreaded programs, which uses binary rewriting techniques to monitor every shared-monory reference and verify that consistent locking behavior is observed.
A general-purpose algorithm for analyzing concurrent programs
TL;DR: A static analysis algorithm is presented here that addresses the following problems: how processes are synchronized, what determines when programs are run in parallel, and how errors are detected in the synchronization structure.
322