Introducing Intel® Trace Collector

Intel® Trace Collector for MPI applications produces tracefiles that can be analyzed with Intel® Trace Analyzer performance analysis tool. Some Intel® Trace Collector versions are also able to trace non-MPI applications, like socket communication in distributed applications or plain serial programs. It was formerly known as Vampirtrace*.

In MPI, it records all calls to the MPI library and all transmitted messages, and allows arbitrary user defined events to be recorded. Instrumentation can be switched on or off at runtime, and a powerful filtering mechanism helps to limit the amount of the generated trace data.

Intel® Trace Collector is an add-on for existing MPI implementations; using it merely requires re-linking the application with the Intel® Trace Collector profiling library. This will enable the tracing of all calls to MPI routines, as well as all explicit message-passing. On some platforms, calls to user-level subroutines and functions will also be recorded.

Shared libraries allow the attachment of the Intel® Trace Collector without any explicit linking step.

To define and trace user-defined events, or to use the profiling control functions, calls to the Intel® Trace Collector API have to be inserted into the source code of the application. This implies a recompilation of all affected source modules.

A special dummy version of the profiling libraries containing empty definitions for all Intel® Trace Collector API routines can be used to switch off tracing just by re-linking.

See Also

Compiling MPI Programs with Intel® Trace Collector
Using the Shared Libraries
The Intel® Trace Collector API
Using the Dummy Libraries