scispace - formally typeset
Patent

Software implemented method for automatically validating the correctness of parallel computer programs

Reads0
Chats0
TLDR
In this paper, a software-implemented method for validating the correctness of parallel computer programs, written in various programming languages, with respect to these programs' corresponding sequential computer programs is presented.
Abstract
A software-implemented method for validating the correctness of parallel computer programs, written in various programming languages, with respect to these programs' corresponding sequential computer programs. Validation detects errors that could cause parallel computer programs to behave incorrectly or to produce incorrect results, and is accomplished by transforming these parallel computer programs under the control of a general purpose computer and sequentially executing the resulting transformed programs. The validation method is system-independent and is portable across various computer architectures and platforms since validation is accomplished via program transformation; thus, the method does not depend on the features of a particular hardware architecture or configuration, operating system, compiler, linker, or thread environment. The input to the validation method is a parallel computer program. The parallel computer program results from annotating its corresponding sequential computer program with a parallelism specification; the annotations describe constraints in the sequential program to be relaxed to allow the exploitation of parallelism. Validation is accomplished by detecting semantic inconsistencies between the parallel computer program and its corresponding sequential computer program. The validation method translates the input parallel computer program into a second, sequential computer program such that the second sequential computer program, when executed, detects and reports the semantic inconsistencies between the parallel computer program and its corresponding sequential computer program.

read more

Citations
More filters
Patent

Network-based software extensions

TL;DR: In this article, the authors describe a system for network-based or Internet-based software delivery, where extensions can be developed by third party developers for incorporation into the program or platform.
Patent

Method and apparatus for efficient and precise datarace detection for multithreaded object-oriented programs

TL;DR: In this article, a method of detecting datarace between first and second memory accesses within a program was proposed, which can detect whether the two accesses are to the same memory location and whether they are executed by different threads.
Journal ArticleDOI

Symbolic predictive analysis for concurrent programs

TL;DR: This paper introduces a precise predictive model based on both the program source code and the observed execution events, and proposes a symbolic algorithm to check whether a safety property holds in all feasible permutations of events of the given trace.
Patent

Race detection for parallel software

TL;DR: In this article, a method for race detection in parallel software, including performing an execution of software under test (SUT), the SUT having an expected outcome, is presented.
Patent

Method and system for testing behavior of procedures

TL;DR: In this paper, a systematic testing method of procedures is described, which is carried out for parallel procedures separately from consecutive procedures which have no parallelism, and behavior of a group of parallel procedures to be tested in a parallel mode is specified.
References
More filters
Book

Compilers: Principles, Techniques, and Tools

TL;DR: This book discusses the design of a Code Generator, the role of the Lexical Analyzer, and other topics related to code generation and optimization.
Patent

Method and apparatus for modifying relocatable object code files and monitoring programs

TL;DR: In this paper, an object code expansion program is used to add instructions to object code files of a second program, to monitor substantially all of the memory accesses of the second program.
Proceedings ArticleDOI

On-the-fly detection of data races for programs with nested fork-join parallelism

TL;DR: In this article, the authors present a protocol for run-time detection of data races in parallel shared-memory programs with nested fork-join parallelism and no other inter-thread synch ronization.
Patent

Program execution tracing system improvements

TL;DR: In this article, the authors propose a tracing program that copies into an area within a trace program each instruction to be executed and traced in a manner which makes each traced instruction subservient to the tracing program.
Patent

Method and system for selecting instrumentation points in a computer program

TL;DR: In this paper, the authors present a method for selecting instrumentation points in a computer program, where the points are locations within the computer program at which instrumentation code is inserted, and the added instrumentation codes record execution information such as how many times an instrumentation point is accessed during execution of the program.