A popular approach for producing parallel software is to de-velop a sequential version of an application and then incre-mentally introduce parallel constructs to parallelize differ-ent parts of the application. During the parallelization pro-cess, programming errors may be introduced, causing con-currency bugs. In this paper we develop a technique for run-time detection of data dependence faults (i.e., data races and atomicity violations) introduced during parallelization. By leveraging the availability of two versions of the program, the sequential one and the parallelized one, we comparison check dynamic data dependences exercised during execu-tions of the two versions to identify faults. To reduce the cost of comparison checking we devel...
Concurrency faults are one of the most damaging types of faults that can affect the dependability of...
We have studied two related issues in the design, execution and debugging of shared memory parallel ...
Parallel computing is pervasive. The variety and number of parallel hardware architectures increase...
Multicore machines have become pervasive and, as a result, parallel programming has received renewed...
Multicore machines have become pervasive and, as a result, parallel programming has received renewe...
Abstract. Writing multithreaded software for multicore computers con-fronts many developers with the...
Multicore machines have become pervasive and, as a result, parallel programming has received renewe...
A data race or access anomaly is a bug in parallel programs, occurring when two parallel processes a...
Concurrency poses a major challenge for program verification, but it can also offer an opportunity t...
Parallel computers can provide impressive speedups, but unfortunately such speedups are difficult to...
Taking advantage of parallel processors often entails using concurrent software, where multiple thre...
As computing hardware moves to multi-core systems, future software needs to be parallelized in order...
Taking advantage of parallel processors often entails using concurrent software, where multiple thre...
The scaling of Silicon devices has exacerbated the unreliability of modern computer systems, and pow...
Several methods currently exist for detecting data races in an execution of a shared-memory parallel...
Concurrency faults are one of the most damaging types of faults that can affect the dependability of...
We have studied two related issues in the design, execution and debugging of shared memory parallel ...
Parallel computing is pervasive. The variety and number of parallel hardware architectures increase...
Multicore machines have become pervasive and, as a result, parallel programming has received renewed...
Multicore machines have become pervasive and, as a result, parallel programming has received renewe...
Abstract. Writing multithreaded software for multicore computers con-fronts many developers with the...
Multicore machines have become pervasive and, as a result, parallel programming has received renewe...
A data race or access anomaly is a bug in parallel programs, occurring when two parallel processes a...
Concurrency poses a major challenge for program verification, but it can also offer an opportunity t...
Parallel computers can provide impressive speedups, but unfortunately such speedups are difficult to...
Taking advantage of parallel processors often entails using concurrent software, where multiple thre...
As computing hardware moves to multi-core systems, future software needs to be parallelized in order...
Taking advantage of parallel processors often entails using concurrent software, where multiple thre...
The scaling of Silicon devices has exacerbated the unreliability of modern computer systems, and pow...
Several methods currently exist for detecting data races in an execution of a shared-memory parallel...
Concurrency faults are one of the most damaging types of faults that can affect the dependability of...
We have studied two related issues in the design, execution and debugging of shared memory parallel ...
Parallel computing is pervasive. The variety and number of parallel hardware architectures increase...