NOPE: A Nondeterministic Program Evaluator

  • Authors:
  • Dieter Kranzlmüller;Jens Volkert

  • Affiliations:
  • -;-

  • Venue:
  • ParNum '99 Proceedings of the 4th International ACPC Conference Including Special Tracks on Parallel Numerics and Parallel Computing in Image Processing, Video Processing, and Multimedia: Parallel Computation
  • Year:
  • 1999

Quantified Score

Hi-index 0.00

Visualization

Abstract

Nondeterminism in parallel programs can lead to different results in successive executions even if the same input is supplied. In order to allow debugging of such programs, some kind of replay technique is required. During an initial record phase a program's execution is monitored and information about occurring events is stored in trace files. During subsequent replay steps the traces are used to reproduce an equivalent execution. The problem is that a trace describes one particular execution and therefore limits the user's analysis abilities to this case. Other execution paths can only be analyzed if corresponding program runs can be monitored. This problem is addressed by the nondeterministic program evaluator NOPE, which extends traditional replay to automatically generate other possible execution paths. The idea is to perform combinatorial event manipulation of racing messages on an initial trace to enforce different event orders during replay. If each permutation is tested, different execution paths with previously unknown results and hidden errors may be revealed.