carm gui

Launch the interactive CARM GUI, a Dash + Plotly dashboard for exploring roofline plots and application performance data.

Run carm gui --help for a full argument listing.

Basic Usage

carm gui [options]

Once launched, open the URL printed in the terminal (default: http://127.0.0.1:8050) in your browser.

What You’ll See

The GUI displays the architecture’s roofline — peak performance bounds for compute and memory at each cache level — with application data points plotted on it (if profiling data was loaded). Each point represents a code region positioned by its performance (GFLOP/s) and arithmetic intensity (FLOP/byte).

  • Memory-bound points fall below the roofline intersection — they benefit from better data locality and reduced memory traffic.
  • Compute-bound points sit on or near the compute roof — they benefit from increasing computational intensity.
  • The distance to the roofline shows how much performance headroom exists.

Arguments by Category

Where to find data (--results-dir)

The GUI scans --results-dir (default: platform user data dir for carm) for roofline CSV files from carm benchmark and profiling data from carm profile. Point it elsewhere if your results live in a non-standard location.

Server configuration (--gui-host, --gui-port, --gui-debug)

The Dash server binds to 127.0.0.1:8050 by default. Change the host to 0.0.0.0 to access the GUI from other machines on your network.

Verbosity (--verbose)

Repeat (Use --verbose [0-4]) for more detail. Useful when diagnosing why the GUI can’t find or parse result files.

Loading Data

The GUI automatically discovers:

  • Roofline JSONL files: generated by carm benchmark, defining the architecture’s roofs
  • Application profiling data: generated by carm profile

GUI Features

Normalization

The plot can normalize performance roofs to the number of threads:

  • Normalized roofs normalize roof and application performance per-thread, recommended roof and app thread counts do not match.
  • Non-normalized roofs show cumulative performance.

Copyright © CHaMP Team. Distributed under an Apache 2.0 license.

This site uses Just the Docs, a documentation theme for Jekyll.