Overview of the Project
The Lightweight Corefile Browser (LCB) is an X Window System based tool that
facilitates parallel debugging.
It offers a simple and convenient way of examining the dynamic call graph of
a parallel program. It offers a global, high-level
view of the program's state when it terminated.
LCB supports two modes of operation
The graphical version, xlcb, allows navigation through the potentially
complex calling hierarchy of the program. It automatically assimilates the
details from tens or hundreds of processes and presents them in a
consolidated summary form representing the dynamic call graph of a parallel
The command line version, lcb, allows the user to
retrieve the most critical
information via a textual interface. Thus, the user can obtain a
minimal amount of
information very quickly, without the start-up time associated with
the graphical version.
This not only saves time, but also supports dial-up connections and
other uses where
graphical facilities are not available.
- xlcb: the full graphical tool
- lcb: a command line version that produces textual output
LCB gets the necessary information from a lightweight corefile (LCF), an
ASCII file generated by parallel runtime systems supporting the LCF format.
LCB can also accept information on-the-fly from the operating system or some
To do this, a minimal amount of data is recorded
for each process at the point of program termination, and formatted
according to the LCF standard.
The command line version offers the ability to:
The graphical version has, in addition, the ability to:
- report key information like identity of the culprit
process, its reason for failure, etc.
- display (in textual form) the calling structure of
the culprit process.
Both command line and graphical versions
have been implemented. The LCB display has been integrated into Meiko's
TotalView debugger, allowing the user to view the calling structure
of a program at any given execution point. The tool can also be invoked
in standalone mode, using input files from Intel's corefile format.
- view the complete calling structure of all
processes that were active when the program terminated.
- detect the relative activity level (i.e., how many
processes were active) of each source routine.
- search for a given routine in the calling structure.
The functionality to be incorporated in the tool, and the appearance
of the interface were
decided by involving users throughout the design process.
Initial feedback was received in
response to a "paper design" presented at a Parallel Tools Consortium
general meeting. A
working committee was then set up, involving both tool developers
and tool users. Ideas and
solutions were discussed electronically by the committee members.
An initial prototype was
tested at the National Center for Atmospheric Research and
user suggestions were
incorporated into the tool. Additional feedback was
obtained when tool was exhibited at
Supercomputing `94, and through user trials of the TotalView implementation.
Last updated February 23, 1996.
For further information, contact