The Command Line Interface to Intel Trace Analyzer allows you to process tracefiles without an GUI. It can be used for automated computation of profiling data or to generate a pre-computed trace caches for trace files.
As an example, to create the cache for trace.stf with default resolution you can use the CLI as follows:
traceanalyzer --cli trace.stf -c0 -w
A batch file to pre-compute caches might look like this:
traceanalyzer --cli poisson_icomm.single.stf -c0 -w traceanalyzer --cli poisson_sendrecv.single.stf -c0 -w traceanalyzer --cli vtcounterscopec.single.stf -c0 -w
To use the CLI it is mandatory to give --cli as the first argument to switch off the graphical user interface followed by a trace file name and any other CLI options. Please note that the CLI is considered for expert use and subject to change with any version without notice.
The command line interface provides the following options:
--messageprofile perform message profile analysis --collopprofile perform collective operation profile analysis --functionprofile perform function profile analysis --starttime=TICKS or -sTICKS starting time of the analysis --endtime=TICKS or -eTICKS ending time of the analysis --tgroup=ID or -tID use this thread aggregation --fgroup=ID or -fID use this function aggregation --dump=FILE or -oFILE the file where to store the analysis results --readstats or -S request statistics, if available, instead of trace data --readcache[=FILE] or -r[FILE] read the trace cache from the specified (if provided) or default file --writecache[=FILE] or -w[FILE] if a trace cache has been built, write it to the specified (if provided) or default file --buildcache=RESOLUTION or -cRESOLUTION build a trace cache with the specified resolution, the resolution is given in clock ticks, higher values result in smaller (coarser) cache files, 0 (zero) will use the default resolution --filter=FILTER or -FFILTER the filter to use for the analysis, specified as a filter grammar string --messagefirst=GROUPING the first grouping in the message profile analysis result (first dimension of matrix) --messagesecond=GROUPING the second grouping in the message profile analysis result (second dimension of matrix) --collopfirst=GROUPING the first grouping in the collective operation profile analysis result (first dimension of matrix) --collopsecond=GROUPING the second grouping in the collective operation profile analysis result (second dimension of matrix) --summary generate the application summary sheet with the format that is described below
The application summary sheet consists of a three-line header:
<# processes>:<# processes per node> <application time>:<MPI time>:<IIS time> <first message size of middle bucket (2)>:<first message size of highest bucket (3)>
followed by these sets of lines, for each of the top ten functions, sorted by descending total time:
<Name of MPI_group>:<# involved processes> <total time in above func for bucket 1>:<same for bucket 2>:<same for bucket 3> <total IIS time in above func for bucket 1>:<same for bucket 2>:<same for bucket 3> <count in above func for bucket 1>:<same for bucket 2>:<same for bucket 3> <total # bytes in above func for bucket 1>:<same for bucket 2>:<same for bucket 3>
(where 'IIS' stands for Ideal Interconnect Simulator, which predicts MPI behavior on an ideal interconnect).
The application summary sheet can be imported into spreadsheet applications. Every row is separated into several fields by colons. Unknown values are indicated by 'N/A'.