Why can I only resolve MPI calls, but not my own subroutine calls?

Automatic subroutine tracing is supported in the LATEST releases of tracing tools and compiler . Use the -tcollect compiler switch in addition to -vtrace after loading the appropriate modules. To reduce overhead, you can also use the VT API to manually insert instrumentation into your source.

My program runs, but crashes when trying to write the trace file

A typical error message might look like

    [0] Intel Trace Collector INFO: Writing tracefile a.out.stf in
    /home/cluster/a2832ba
    PSIlogger: Child with rank 1 exited on signal 15.
    PSIlogger: Child with rank 0 exited on signal 11.

The trace data are mostly corrupt. The reason for this behaviour may be that you have a global symbol which clashes with a system call used by the tracing library e.g., a static variable

    double *time;

Please rename your symbol so as to not clash, or convert it to local scope.

  • No labels