Show Exactly Where and Why Code Is Losing Performance

  • No need to change your code or the way you build it
  • Profiling for applications running on more than one server and multiple processes
  • Clear views of bottlenecks in I/O, in compute, in thread or in multi-process activity
  • Deep insight into actual processor instruction types that affect your performance
  • View memory usage over time to discover high watermarks and changes across the complete memory footprint
Get Free TrialBuy
I took one of our standard cases and ran it through MAP and could see all the bottlenecks.  I knew right away where to start chasing things down.
Josh Strodtbeck, Senior Research EngineerConvergent Science

What Is Arm MAP

Arm MAP is a unique scalable low-overhead profiler, available standalone or as part of the Arm Forge debug and profile suite. It helps server and HPC code developers to accelerate their software by revealing the causes of slow performance.

It is used from multicore Linux workstations through to supercomputers. You can profile realistic test cases that you care most about with typically under 5% runtime overhead. The interactive user interface is clear and intuitive, designed for developers and computational scientists. It is architected for the biggest clusters and supercomputers - and the biggest and most complex codes! It profiles C++, C, Fortran and Python with no relinking, instrumentation or code changes required.

MAP exposes a wide set of performance problems and bottlenecks by measuring:

  • Computation - with self and child and call tree representations over time
  • Thread activity - to identify over-subscribed cores and sleeping threads that waste available CPU time for OpenMP and pthreads
  • Instruction types (for x86_64) - to show use of vector-units or other performance extensions
  • Synchronization, communication and workload imbalance for MPI or multi-process usage
  • I/O performance and time spent in I/O - to identify bottlenecks in shared or local file systems
Low-Overhead Profiling to Optimize C, C++, Fortran, F90 and Python Codes

Arm MAP is the profiler for parallel, multithreaded or single threaded C, C++, Fortran and F90 codes. It provides in-depth analysis and bottleneck pinpointing to the source line. Unlike most profilers, it's designed to be able to profile pthreads, OpenMP or MPI for parallel and threaded code.

Case Study

Accelerating Innovation in Manufacturing

Computer aided engineering (CAE) using high performance computing is pervasive in manufacturing today. Simulations of aerodynamics, electromagnetics, noise, vibration, harshness and crash integrity are essential to bring safe and efficient products to market in the aerospace and automotive sectors.

Download Now

Talk with an Expert

Learn how Arm MAP debugging and profiling support for Arm Forge.

Contact Us

Arm MAP Resources

Find resources that describe how to develop, deploy and optimize enterprise and scientific HPC (High Performance Computing) applications, including:

Get Resources