Agent skill · software engineering · nvidia

doca-pcc

Use this skill when the user is doing hands-on host-side DOCA PCC work to load a CUSTOM Programmable Congestion Control algorithm onto a BlueField DPU — creating per-port `doca_pcc` contexts, loading a `dpacc`-compiled `doca_pcc_app` onto the `doca_dev` for the RoCE-bearing port, parameterizing it, walking triple-axis capability discovery (DOCA cap-query + DPA-capable BlueField + firmware custom-PCC slot enabled), or debugging `DOCA_ERROR_*` from `doca_pcc_*`. Trigger even without explicit "DOCA PCC" phrasing — implicit forms include "loading my own congestion control onto a BF port", "DOCA_ERROR_NOT_PERMITTED on algorithm load", "DOCA_ERROR_DRIVER when I attach my custom algorithm", "my custom rate-update isn't affecting RoCE traffic", or "load succeeds but no on-wire change". Refuse and route elsewhere for DPA-side algorithm-body design, the `pcc_counters` CLI, default factory PCC in ConnectX firmware, or setting up the RDMA / RoCE traffic — those belong to other skills.

Why this skill is useful

Adds executable scripts and detailed workflows for loading custom PCC algorithms onto BlueField DPUs, which are not covered in public documentation.

What it needs

Requires doca, dpacc installed locally. About 10k tokens when loaded. Last updated 2026-08-07. 2,816 stars on the source repository.

What this skill does

DOCA PCC Examples "Loading my own congestion control onto a BF port." — this is in scope. Stay on host-side docapcc + a DPACC-built docapccapp; do not rewrite the algorithm body here. "DOCAERRORNOTPERMITTED on algorithm load." — check the firmware custom-PCC slot and DPA exposure before changing the load call. Instructions Follow Loading order below. Open the tasks companion for configure / load / debug. Open the capabilities companion for the triple-axis cap query. Do not open every companion file. Where to start: This skill assumes DOCA is already installed, the user's BlueField has a DPA processor that the host can see through DOCA, the BlueField firmware has the custom-PCC slot enabled, and the user is doing hands-on custom PCC work from the host side — i.e. using doca-pcc to load a DPA-side congestion control algorithm onto the BlueField, attach it to a port handling RDMA / RoCE traffic, and parameterize it from the host. Open the tasks companion if the user wants to do something (configure / build / modify / run / test / debug); open the capabilities companion when the question is what can the host-side PCC API express on this version + this BlueField generation + this firmware. If the user has not installed DOCA yet, route to doca-setup/SKILL.md first; if the user is asking how to write the DPA-side congestion-control algorithm itself (the code that runs on the DPA processor, compiled by dpacc), that is a different scope — route via doca-public-knowledge-map/SKILL.md to the public DOCA PCC programming guide and to doca-dpa/SKILL.md for the host-side DPA lifecycle this skill builds on. If the user only wants to inspect PCC counters at runtime without writing a custom algorithm, that is the pcccounters CLI tool — route via doca-public-knowledge-map ## DOCA tools (doca-public-knowledge-map/SKILL.md#doca-tools); this skill is for custom algorithms only. …

How to use it

Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:

@skills nvidia/doca-pcc

View the source on GitHub

Browse the @skills marketplace