Application Program Interface for Generating
Lightweight Corefiles
Version 1.1
The LCB Working Group proposes the following API for call(s) from within a
parallel program. Each call would cause a lightweight corefile to be
generated with the (approximate) current locations of processes/threads.
It is expected that the file will follow the
standardized format defined by the Working Group.
Fortran API
The suggested API for Fortran programs is:
LCB_GEN_COREFILE (<file_name>, <num_procs>,
<proc_array>, <status_code>)
where:
- <file_name> is the name of the file where the Lightweight Corefile
should be stored; if the file already exists, the new information
should be appended.
- <num_procs> is the number of processes/threads to be included,
where any number .LE. 0 is interpreted as the default (namely.
report on all processes/threads).
- <proc_array> is an array of process/thread IDs (or a dummy value
if the first argument is .LE. 0). If <num-procs> is a
positive integer, lightweight corefile info will be generated
for the first <num-procs> entries in the array.
- <status_code> returns 0 if the operation was successful, or an
integer status code indicating the reason for failure.
C Language API
The suggestion for the C language API is to use a function rather than a
subroutine call:
int lcb_gen_corefile(
char * file_name,
int num_procs,
int * proc_array)
where the parameters have the same description as for Fortran
with the exception that the status code is returned as the functional
value.
Library Name
Executable(s) for the routine(s) should be stored in a library with
the name libptools_ptr.lib-type; for example:
libptools_ptr.a
libptools_ptr.so.0.55
Revised to conform to standard naming
conventions, 7 March 1996.
For further information, contact
ptools-questions@nero.net.