Simultaneously generate both a .map
file and Performance Report
Describes how to load Linaro MAP and then profile and application, generating both a
.map
file and one or more type of Performance Report at once.
Before you begin
Make sure that the Linaro MAP component of Linaro Forge installed on your system is loaded:
$ map --version
Linaro MAP
Part of Linaro Forge.
Copyright (c) 2023-2025 Linaro Limited. All rights reserved.
...
Note
Please add the Linaro Forge installation path to the PATH
environment variable to make the Linaro MAP available to the console:
export PATH=<Forge installation path>/bin:$PATH
Procedure
Type the
map --profile --report=<types>
command in front of your existingmpiexec
command-line, where<types>
is a comma separated list of one or more oftxt
,csv
,html
, orsummary
(see--report
) e.g.:map --profile --report=txt,html mpiexec -n 4 examples/wave_c
If your program is submitted through a batch queuing system, modify your submission script to load the Linaro Forge module and add the
map --profile --report=<types>
command in front of thempiexec
command for which you want to generate a report.
Results
The program runs as usual, although startup and shutdown might take a
few minutes longer while Linaro Forge generates and links the appropriate wrapper
libraries before running, collecting the data at the end of the run.
The runtime of your code (between MPI_Init
and MPI_Finalize
is not
expected to be affected by more than a few percent at most.
After the run finishes, a .map
file and whatever Performance Reports were
requested are saved to the current working directory, using a name based on the
application executable:
$ map --profile --report=txt,html,summary mpirun -n 4 ./wave_c
[ ... normal MAP and wave_c output ... ]
MAP analysing program...
MAP gathering samples...
MAP generated wave_c_4p_1n_2022-11-16_18-53.map
MAP generated wave_c_4p_1n_2022-11-16_18-53.html
MAP generated wave_c_4p_1n_2022-11-16_18-53.txt
Linaro MAP profiling summary
============================
Profiling time: 31 seconds (between MPI init and finalize)
Peak process memory: 52002816 B (~49.6 MiB)
Compute: 92.3% (28.6s) |========|
MPI: 7.7% (2.4s) ||
I/O: 0.0% (0.0s) |
(based on time on the main thread)