Relative Debugging for Data-Parallel Programs: A ZPL Case Study

  • Authors:
  • Greg Watson;David Abramson

  • Affiliations:
  • -;-

  • Venue:
  • IEEE Concurrency
  • Year:
  • 2000

Quantified Score

Hi-index 0.00

Visualization

Abstract

Relative debugging is a powerful paradigm that makes it possible to locate errors in programs that occur as a result of porting or rewriting the code. Developed initially in 1994, the technique has been used widely in a range of case studies. However, until recently, relative debugging has only been applied to programs that have been written in the same language, or in languages with very similar semantics, such as C and Fortran. In addition, case studies to date have only examined sequential codes, or single process parallel codes. In this article, we describe the architecture of a parallel relative debugger and present the first experiences of using relative debugging to compare a program written in a sequential language with one that has been ported to the data parallel language ZPL. We show how this implementation has been used to find errors that have not previously been located in the program, and more importantly, that the technique can be used by programmers with little knowledge of the language or the underlying application.