MAP
Describes how to use Arm® MAP.
Get started with MAP
Welcome page
Express Launch (MAP)
Run dialog box
Prepare a program for profiling
Debug symbols
Disable function inlining
Disable tail call optimization
Linking
Dynamic linking on Cray X-Series systems
Static linking
Static linking on Cray X-Series systems
Dynamic and static linking on Cray X-Series systems using the modules environment
map-link modules installation on Cray X-Series
Unsupported user applications
Profile a program
Application (MAP)
Duration
Metrics (MAP)
MPI (MAP)
OpenMP (MAP)
Environment variables (MAP)
Profiling
Profiling only part of a program
remote-exec
required by some MPIs (MAP)
Profile a single-process program
Send standard input (MAP)
Start a job in a queue (MAP)
Use custom MPI scripts (MAP)
Start MAP from a job script
Numactl (MAP)
MAP user interface
Program output
View standard output and error (MAP)
Display selected processes
Restrict output
Save output (MAP)
Source code (MAP)
View source code (MAP)
OpenMP programs
GPU programs
NVIDIA CUDA Kernel Analysis
Complex code: code folding
Edit source code (MAP)
Rebuild and restart (MAP)
Commit changes (MAP)
Selected lines view
Use Selected lines view
NVIDIA GPU CUDA profiles
Limitations
Stacks view
Overview
OpenMP Regions view
Overview
Functions view
Overview
Project Files view
Overview
Metrics view
User interface
CPU instructions
CPU instruction metrics available on x86_64 systems
CPU instruction metrics available on Armv8-A systems
CPU instruction metrics available on IBM Power 8 systems
CPU instruction metrics available on IBM Power 9 systems
CPU time
I/O
Memory
MPI calls
Detecting MPI imbalance
Accelerator
NVIDIA
AMD
Energy
Requirements
Lustre
Zooming
View totals across processes and nodes
Custom metrics
Configurable Perf metrics
Specify Perf metrics using the Run window
Main-thread, OpenMP, and Pthread view modes
Main thread only mode
OpenMP mode
Pthread mode
Processes and cores window
Overview
Run MAP from the command line
Command line arguments
Profile MPMD programs
Profile MPMD programs without Express Launch
Export profiler data in JSON format
JSON format
Activities
Description of categories
Categories available in
main_thread
activity
Categories available in
openmp
and
pthreads
activities
Metrics
Example JSON output
NVIDIA GPU profiling
GPU Kernels tab
CUDA Kernel analysis
Memory transfers analysis
Compilation
Performance impact
CUDA kernel analysis
CUDA memory transfer analysis
Overhead mitigation
Customize NVIDIA GPU profiling behavior
Known issues for NVIDIA GPU profiling
AMD GPU profiling
GPU Kernels tab
Compilation
Known issues for AMD GPU profiling
Python profiling
Profile a Python script
About this task
Procedure
Results
Example: Profiling a simple Python script
Next steps
Related information
Known issues for Python profiling
Performance analysis with Caliper instrumentation
Get Caliper
Annotate your program
Annotate in C/C++
Annotate in Fortran
Analyze your program
Procedure
Results
Guidelines
Next steps
Related information
Arm Statistical Profiling Extension (SPE)
SPE Prerequisites
Enable SPE from the command line
Enable SPE from the Run dialog
Analyze your program
Guidelines
Memlock limit exceeded
Solution
Solution
SPE disabled on Amazon Web Services
Solution
Solution
Known issues for SPE