© 1994 by British Computer Society
| ||||||||||||||||||||||||||||||||||||||||||||||||||||
An Approach to the Run-Time Monitoring of Parallel Programs

1 Department of Computing and Information Science, Queen's University at Kingston, Ontario K7L 3N6, Canada, 2 Department of Computer Science, University of Exeter, Exeter EX4 4PT, UK
Monitoring is fundamental to both debugging and performance analysis. It can provide dynamic execution information for displaying execution states and statistical data for evaluating the performance of a program. In monitoring parallel programs, a major difficulty arises from the intrusive nature of monitoring activities. This paper describes a new approach, the logical clock approach, which aims to minimize the amount of intrusion in monitoring parallel programs, thus achieving a high transparency. The basic idea of the logical clock approach is to introduce a logical clock for each process which can reflect the real time execution of that process when running without monitoring, and to control the inter-process communication according to logical time rather than real time. In contrast to other approaches, the logical clock approach does not rely on special hardware for achieving high transparency in monitoring parallel programs and the degree of transparency is not affected by the amount of time spent on monitoring activities. Therefore, it can be used to construct a run-time, interactive, visual debugger or performance analyser.
Received May, 1993. revised March, 1994.
* Department of Computing and Information Science, Queen's University at Kingston, Ontario K7L 3N6, Canada
Department of Computer Science, University of Exeter, Exeter EX4 4PT, UK
¶ Currently with the School of Applied Science, Nanyang Technological University, Singapore 2263, Singapore.