Skip to content

[Feature]: Add latency benchmarks #48

Open

Description

@mawad-amd

Suggestion Description

We would like to add some latency benchmarks for loads/stores.

Operating System

No response

GPU

No response

ROCm Component

No response

Activity

  1. arcusbuilds commented on Oct 12, 2026

    @arcusbuilds

    Hi, I'd like to work on this. Before I start, some scope questions:

    1. Should this be a new example (e.g. examples/NN_latency/) or live under benchmark/?
    2. Ops: just load/store, or also get/put/atomics?
    3. Measure both local and remote (peer) latency, sweeping small message sizes (e.g. 4 B to 64 KB)?

    I'll add a test like tests/examples/test_jacobi.py too.

  2. mawad-amd commented on Oct 12, 2026

    @mawad-amd
    CollaboratorAuthor

    Thanks @arcusbuilds!

    Benchmark rather than an example please — a new benchmark/latency/. No test needed, benchmarks only.

    Use iris.bench for the sweep: @bench.register with @bench.axis(...) gives you the grid, arg parsing and CSV for free. benchmark/ccl/bench_all_gather.py is a short example.

    I'd make everything an axis — message size, source rank, destination rank, and the op. Loads and stores are enough to start. Sizes 4 B to ~4 MB log-spaced.

    For the timing, use read_realtime() from iris/mem/utils.py (wraps s_memrealtime, 100 MHz constant clock) and read it either side of the op inside the kernel. iris/mem/triton/tracing.py shows the pattern.

    ib_write_lat is a good model worth copying — a ping-pong where half the round trip is the one-way latency, reporting min/median/99% rather than a mean. See run_iter_lat_write in src/perftest_resources.c.

    Let me know if you have questions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions