/doca-gpunetio-ib-write-lat
Use this skill when the user is measuring GPU-kernel-initiated RDMA WRITE latency through doca-gpunetio — building and running the `gpunetio_ib_write_lat` client + server pair under `doca/tools/gpunetio_ib_write_lat/`, checking GPU-NIC pairing, reading the half-iter / full-iter
$ npx -y skills add NVIDIA/skills --skill doca-gpunetio-ib-write-lat --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/doca-gpunetio-ib-write-lat
Context preview
The summary Claude sees to decide when to auto-load this skill.
Use this skill when the user is measuring GPU-kernel-initiated RDMA WRITE latency through doca-gpunetio — building and running the `gpunetio_ib_write_lat` client + server pair under `doca/tools/gpunetio_ib_write_lat/`, checking GPU-NIC pairing, reading the half-iter / full-iter
SKILL.md
doca-gpunetio-ib-write-lat.SKILL.mdlicense: Apache-2.0
name: doca-gpunetio-ib-write-lat
description: >
Use this skill when the user is measuring GPU-kernel-initiated RDMA
WRITE latency through doca-gpunetio — building and running the
`gpunetio_ib_write_lat` client + server pair under
`doca/tools/gpunetio_ib_write_lat/`, checking GPU-NIC pairing,
reading the half-iter / full-iter / CUDA-side usec columns,
characterizing median / p99 / jitter for a real-time control loop,
picking GPUNetIO vs GPI vs CPU-initiated `perftest`, or weighing the
latency-vs-batching trade-off. Trigger even without 'GPUNetIO' or
'ib_write_lat': 'GPU kernel RDMA latency benchmark', 'how fast can a
CUDA kernel post a WRITE', 'p99 RDMA latency on H100 + ConnectX',
'kernel-launched WR tail latency', or 'compare GPU-init vs CPU-init
perftest'. Route elsewhere for bandwidth runs
(doca-gpunetio-ib-write-bw), the GPI surface (doca-gpi), library
debugging (doca-gpunetio), or DOCA install.
metadata:
kind: tool
compatibility: >
Requires DOCA SDK installed at /opt/mellanox/doca on Linux
(Ubuntu 22.04/24.04 or RHEL/SLES) with an InfiniBand-capable
ConnectX or BlueField RNIC. Requires NVIDIA GPU with CUDA
Toolkit and `nvidia_peermem` loaded; client and server hosts
each need a GPU-NIC pair on a common PCIe / NVLink fabric.
Reads pkg-config doca-gpunetio / doca-rdma / doca-common and
builds from the source tree at
/opt/mellanox/doca/tools/gpunetio_ib_write_lat against the installed DOCA.
DOCA GPUNetIO ib_write_lat
**Where to start:** This is a tool skill for the GPUNetIO- flavored `ib_write_lat` benchmark shipped under `doca/tools/gpunetio_ib_write_lat/` (a client + server pair, built from source against the installed DOCA via `meson`). It measures the latency of an RDMA WRITE work request when the WR is posted **from a CUDA kernel through the doca-gpunetio device-side surface**, in a ping-pong cadence. Open [`TASKS.md`](TASKS.md) and start at [`## configure`](TASKS.md#configure) for the GPU-NIC pairing precondition and the build pattern; jump to [`## run`](TASKS.md#run) for the single-iteration smoke flow. Open [`CAPABILITIES.md`](CAPABILITIES.md) when the question is *what this tool actually measures*, *how it differs from the GPI sister tool on the same physical operation*, or *how to interpret the half-iter / full-iter / CUDA-side usec output and the median / p99 / jitter characterization*. If DOCA is not installed yet, route to [`doca-setup`](../../doca-setup/SKILL.md) first; if the user is still deciding between GPUNetIO and GPI as a programming surface, the picture in [`../../libs/doca-gpunetio/CAPABILITIES.md#capabilities-and-modes`](../../libs/doca-gpunetio/CAPABILITIES.md#capabilities-and-modes) and [`../../libs/doca-gpi/CAPABILITIES.md#capabilities-and-modes`](../../libs/doca-gpi/CAPABILITIES.md#capabilities-and-modes) is the first stop.
Example questions this skill answers well
The CLASSES of `doca-gpunetio-ib-write-lat` questions this skill is built to answer, each with one worked example. The class is the load-bearing piece; the worked example is one instance.
- **"What GPU-init RDMA-WRITE latency / jitter can the
GPUNetIO path deliver for a real-time / control-loop workload?"** — worked example: *"measure per-iteration WRITE latency between two hosts with an H100 + ConnectX-7 on each side, target the median and the p99 separately"*. Answered by the GPU-NIC pairing precondition in [`CAPABILITIES.md ## Capabilities and modes`](CAPABILITIES.md#capabilities-and-modes)
- the bring-up flow in
[`TASKS.md ## configure`](TASKS.md#configure) + [`TASKS.md ## run`](TASKS.md#run).
- **"This is the GPUNetIO tool — how does the latency
number differ from the GPI programming surface?"** — worked example: *"the team is using GPI; should I expect GPUNetIO to beat / tie / lose vs GPI?"*. Answered by the *"same physical operation, different runtime framework"* rule in [`CAPABILITIES.md ## Capabilities and modes`](CAPABILITIES.md#capabilities-and-modes)
- the cross-link to the GPI library skill
[`../../libs/doca-gpi/CAPABILITIES.md`](../../libs/doca-gpi/CAPABILITIES.md) (note: `doca/tools/` ships no GPI `ib_write_lat` benchmark binary — GPI is a programming surface, not a shipped benchmark tool).
- **"Median vs p99 vs jitter — which one is the actual
answer for a real-time control loop?"** — worked example: *"my control loop has a deadline; the median is well under the budget but p99 spikes; do I quote the median or the p99?"*. Answered by the median-vs-p99-vs-jitter rule in [`CAPABILITIES.md ## Observability`](CAPABILITIES.md#observability)
- the eval-loop overlay in
[`TASKS.md ## test`](TASKS.md#test).
- **"What is the latency-vs-batching trade-off specific
to GPU-init RDMA?"** — worked example: *"my CUDA kernel could batch multiple WRs to amortize the GPU-side overhead; what does that buy me on latency vs what does it cost me?"*. Answered by the latency-vs-batching trade-off in [`CAPABILITIES.md ## Capabilities and modes`](CAPABILITIES.md#capabilities-and-modes).
- **"What version of DOCA + CUDA Toolkit do I need for
this binary to build and run?"** — worked example: *"my install has DOCA at one semver and CUDA at another; will the ToT-shipped `gpunetio_ib_write_lat` even link?"*. Answered by the version overlay in [`CAPABILITIES.md ## Version compatibility`](CAPABILITIES.md#version-compatibility).
- **"How do I read the half-iter / full-iter / CUDA-side
usec columns?"** — worked example: *"the binary printed half-iter, full-iter, and a CUDA-side number — what is the right column to quote for one-way latency vs round-trip vs cross-check?"*. Answered by the column- semantics rule in [`CAPABILITIES.md ## Observability`](CAPABILITIES.md#observability).
Audience
This skill serves **external developers and performance engineers who need a reproducible measurement of the latency of an RDMA WRITE WR when the WR is
Read more
license: Apache-2.0 name: doca-gpunetio-ib-write-lat description: > Use this skill when the user is measuring GPU-kernel-initiated RDMA WRITE latency through doca-gpunetio — building and running the `gpunetio_ib_write_lat` client + server pair under `doca/tools/gpunetio_ib_write_lat/`, checking GPU-NIC pairing, reading the half-iter / full-iter / CUDA-side usec columns, characterizing median / p99 / jitter for a real-time control loop, picking GPUNetIO vs GPI vs CPU-initiated `perftest`, or weighing the latency-vs-batching trade-off. Trigger even without 'GPUNetIO' or 'ib_write_lat': 'GPU kernel RDMA latency benchmark', 'how fast can a CUDA kernel post a WRITE', 'p99 RDMA latency on H100 + ConnectX', 'kernel-launched WR tail latency', or 'compare GPU-init vs CPU-init perftest'. Route elsewhere for bandwidth runs (doca-gpunetio-ib-write-bw), the GPI surface (doca-gpi), library debugging (doca-gpunetio), or DOCA install. metadata: kind: tool compatibility: > Requires DOCA SDK installed at /opt/mellanox/doca on Linux (Ubuntu 22.04/24.04 or RHEL/SLES) with an InfiniBand-capable ConnectX or BlueField RNIC. Requires NVIDIA GPU with CUDA Toolkit and `nvidia_peermem` loaded; client and server hosts each need a GPU-NIC pair on a common PCIe / NVLink fabric. Reads pkg-config doca-gpunetio / doca-rdma / doca-common and builds from the source tree at /opt/mellanox/doca/tools/gpunetio_ib_write_lat against the installed DOCA.
DOCA GPUNetIO ib_write_lat
**Where to start:** This is a tool skill for the GPUNetIO- flavored `ib_write_lat` benchmark shipped under `doca/tools/gpunetio_ib_write_lat/` (a client + server pair, built from source against the installed DOCA via `meson`). It measures the latency of an RDMA WRITE work request when the WR is posted **from a CUDA kernel through the doca-gpunetio device-side surface**, in a ping-pong cadence. Open [`TASKS.md`](TASKS.md) and start at [`## configure`](TASKS.md#configure) for the GPU-NIC pairing precondition and the build pattern; jump to [`## run`](TASKS.md#run) for the single-iteration smoke flow. Open [`CAPABILITIES.md`](CAPABILITIES.md) when the question is *what this tool actually measures*, *how it differs from the GPI sister tool on the same physical operation*, or *how to interpret the half-iter / full-iter / CUDA-side usec output and the median / p99 / jitter characterization*. If DOCA is not installed yet, route to [`doca-setup`](../../doca-setup/SKILL.md) first; if the user is still deciding between GPUNetIO and GPI as a programming surface, the picture in [`../../libs/doca-gpunetio/CAPABILITIES.md#capabilities-and-modes`](../../libs/doca-gpunetio/CAPABILITIES.md#capabilities-and-modes) and [`../../libs/doca-gpi/CAPABILITIES.md#capabilities-and-modes`](../../libs/doca-gpi/CAPABILITIES.md#capabilities-and-modes) is the first stop.
Example questions this skill answers well
The CLASSES of `doca-gpunetio-ib-write-lat` questions this skill is built to answer, each with one worked example. The class is the load-bearing piece; the worked example is one instance.
- **"What GPU-init RDMA-WRITE latency / jitter can the
GPUNetIO path deliver for a real-time / control-loop workload?"** — worked example: *"measure per-iteration WRITE latency between two hosts with an H100 + ConnectX-7 on each side, target the median and the p99 separately"*. Answered by the GPU-NIC pairing precondition in [`CAPABILITIES.md ## Capabilities and modes`](CAPABILITIES.md#capabilities-and-modes)
- the bring-up flow in
[`TASKS.md ## configure`](TASKS.md#configure) + [`TASKS.md ## run`](TASKS.md#run).
- **"This is the GPUNetIO tool — how does the latency
number differ from the GPI programming surface?"** — worked example: *"the team is using GPI; should I expect GPUNetIO to beat / tie / lose vs GPI?"*. Answered by the *"same physical operation, different runtime framework"* rule in [`CAPABILITIES.md ## Capabilities and modes`](CAPABILITIES.md#capabilities-and-modes)
- the cross-link to the GPI library skill
[`../../libs/doca-gpi/CAPABILITIES.md`](../../libs/doca-gpi/CAPABILITIES.md) (note: `doca/tools/` ships no GPI `ib_write_lat` benchmark binary — GPI is a programming surface, not a shipped benchmark tool).
- **"Median vs p99 vs jitter — which one is the actual
answer for a real-time control loop?"** — worked example: *"my control loop has a deadline; the median is well under the budget but p99 spikes; do I quote the median or the p99?"*. Answered by the median-vs-p99-vs-jitter rule in [`CAPABILITIES.md ## Observability`](CAPABILITIES.md#observability)
- the eval-loop overlay in
[`TASKS.md ## test`](TASKS.md#test).
- **"What is the latency-vs-batching trade-off specific
to GPU-init RDMA?"** — worked example: *"my CUDA kernel could batch multiple WRs to amortize the GPU-side overhead; what does that buy me on latency vs what does it cost me?"*. Answered by the latency-vs-batching trade-off in [`CAPABILITIES.md ## Capabilities and modes`](CAPABILITIES.md#capabilities-and-modes).
- **"What version of DOCA + CUDA Toolkit do I need for
this binary to build and run?"** — worked example: *"my install has DOCA at one semver and CUDA at another; will the ToT-shipped `gpunetio_ib_write_lat` even link?"*. Answered by the version overlay in [`CAPABILITIES.md ## Version compatibility`](CAPABILITIES.md#version-compatibility).
- **"How do I read the half-iter / full-iter / CUDA-side
usec columns?"** — worked example: *"the binary printed half-iter, full-iter, and a CUDA-side number — what is the right column to quote for one-way latency vs round-trip vs cross-check?"*. Answered by the column- semantics rule in [`CAPABILITIES.md ## Observability`](CAPABILITIES.md#observability).
Audience
This skill serves **external developers and performance engineers who need a reproducible measurement of the latency of an RDMA WRITE WR when the WR is
Official, NVIDIA-verified Agent Skills for Claude Code, Codex, and other coding agents.
Other skills on nvidia-skills.
- /nvidia-skill-finder
Use for NVIDIA-related requests where an NVIDIA skill might help, even if the user did not ask for a skill. Trigger on NVIDIA products, hardware, software, SDKs, GPUs, Jetson/JetPack/L4T/BSP/SDK Manager/driver/flashing/setup, CUDA, NIM, NeMo, Omniverse/OpenUSD/SimReady,
Open skill - /accelerated-computing-cudf
Official NVIDIA-authored guidance for NVIDIA cuDF GPU DataFrames, pandas acceleration, dask-cuDF, ETL, joins, groupby, CSV/Parquet I/O, nullable semantics, and multi-GPU DataFrame workloads.
Open skill - /aiq-deploy
Use when asked to install, deploy, run, validate, troubleshoot, or stop NVIDIA AI-Q Blueprint infrastructure.
Open skill - /aiq-research
Use when asked to run deep research or AI-Q research through a reachable NVIDIA AI-Q Blueprint backend.
Open skill - /amc-run-sample-calibration
Run end-to-end calibration on the shipped sample dataset (sdg_08_2_sample_data_010926.zip) against a running AMC microservice. Use when user says 'test sample dataset', 'run sample calibration', 'verify AMC install', or 'launch and test'.
Open skill - /amc-run-video-calibration
Calibrate a new dataset from pre-recorded video files via the AutoMagicCalib REST API. Use when user has local MP4s and says 'calibrate my videos', 'run AMC on these videos', or similar. For RTSP/live streams, use amc-run-rtsp-calibration instead.
Open skill

