Skip to content
Development
Skill

/doca-compress

Hardware compression offload with DOCA Compress on a BlueField DPU, ConnectX NIC, or host: DEFLATE compress and decompress, plus LZ4 decompress (stream and block; LZ4 encode is NOT supported), instead of CPU zlib / zstd. Trigger on "offload this gzip", "decompress incoming

From plugin
skills
3.8k200 skills

Claude Code

$ npx -y skills add NVIDIA/skills --skill doca-compress --agent claude-code

SKILL.md

doca-compress.SKILL.md
license: Apache-2.0
name: doca-compress
description: >
  Hardware compression offload with DOCA Compress on a BlueField DPU,
  ConnectX NIC, or host: DEFLATE compress and decompress, plus LZ4
  decompress (stream and block; LZ4 encode is NOT supported), instead of
  CPU zlib / zstd. Trigger on "offload this gzip", "decompress incoming
  network data on the NIC", "compress task returns INVALID_VALUE on
  alloc_init", "submitted a task but no completion arrives", or
  "decompress LZ4 on the BlueField", even without naming DOCA Compress.
  Covers enabling compress-deflate, decompress-deflate,
  decompress-lz4-stream and decompress-lz4-block tasks on a doca_compress
  context, sizing source / destination doca_buf against the per-task cap
  query, mmap permissions, offload vs CPU decisions, a round-trip smoke,
  and DOCA_ERROR_* from Compress calls. Refuse and route elsewhere for
  zstd / Snappy / brotli, LZ4 encode (a CPU LZ4 library), pure
  mmap-to-mmap copies (doca-dma), or DOCA Core lifecycle internals.
metadata:
  author: NVIDIA <doca-feedback@nvidia.com>
  kind: library
  doca_version: "3.5"
  tags:
    - doca
    - compress
    - deflate
compatibility: >
  Requires DOCA SDK installed at /opt/mellanox/doca on Linux
  (Ubuntu 22.04/24.04 or RHEL/SLES) with a BlueField DPU or
  ConnectX NIC attached. Reads the user's local install via
  `pkg-config doca-compress` and inspects
  /opt/mellanox/doca/{lib,include,samples,applications}.
  The validation steps require a live DOCA install.

DOCA Compress

Examples

  • **"Offload this gzip on the BlueField."** — this is in scope if

the codec is DEFLATE (or LZ4 decompress). Do not invent LZ4 encode or zstd offload.

  • **"Compress task returns INVALID_VALUE on alloc_init."** — size

the `doca_buf` against the per-task cap query before changing the algorithm.

Instructions

Follow Loading order below. Open the tasks companion for configure / test / debug. Open the capabilities companion for codec support and buffer-size policy. Do not open every companion file.

**Where to start:** This skill assumes DOCA is already installed and the user is doing **hands-on Compress work** (bulk DEFLATE compression or decompression) on a BlueField / ConnectX / host with DOCA. 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 DOCA Compress express* on this version. If the user has not installed DOCA yet, route to `doca-setup/SKILL.md` first. If the user is asking *"should I even offload this compression to the accelerator?"*, the size-threshold path-selection rule in

Capabilities and modes

is the first stop — bulk compress is the canonical fit, tiny one-shot is not.

Example questions this skill answers well

The CLASSES of DOCA Compress questions this skill is built to answer, each with one worked example. The agent should treat the *class* as the load-bearing piece — the worked example is a single instance.

  • **"Should I offload this compression to DOCA Compress, or just

zlib/zstd on the CPU?"** — worked example: *"I am compressing a 4 MiB log buffer before writing it to storage; is doca-compress worth the setup vs zlib on the CPU?"*. Answered by the size-threshold path-selection rule in

Capabilities and modes

  • the *"when NOT to use doca-compress"* bullets in

Safety policy.

  • **"Does my device support the compress (or decompress) task I

want, and how big a buffer can it move per submission?"** — worked example: *"is `doca_compress_task_compress_deflate` on this BlueField, and what is the max source size per task?"*. Answered by the per-task capability-query rule (`doca_compress_cap_task_compress_deflate_is_supported`, `_decompress_deflate_is_supported`, the matching `_get_max_buf_size` queries) in

Capabilities and modes

  • the discovery step in

configure.

  • **"I just need to decompress incoming network data — is that a

valid standalone use of doca-compress?"** — worked example: *"my client receives DEFLATE-compressed payloads and never produces any compressed output of its own"*. Answered by the *"decompression-only"* note in

Capabilities and modes

task-type table + the per-task configuration matrix in

configure step 5.

  • **"What permissions does the source / destination mmap need?"** —

worked example: *"my `doca_compress_task_compress_deflate` returns `DOCA_ERROR_NOT_PERMITTED`"*. Answered by the permission matrix in

Safety policy

  • the mmap-set-permissions checklist in

test.

  • **"Is this DOCA Compress API available on my installed DOCA

version?"** — worked example: *"is `doca_compress_task_decompress_deflate` in the DOCA I have installed?"*. Answered by the version-compatibility overlay in

Version compatibility,

which cross-links the canonical detection chain in `doca-version/SKILL.md` and adds the Compress-specific *"discover per-task support, do not assume"* bullets.

  • **"What does this `DOCA_ERROR_*` from a Compress call mean and

which layer caused it?"** — worked example: *"`DOCA_ERROR_INVALID_VALUE` on `doca_compress_task_compress_deflate_alloc_init`"*. Answered by the Compress overlay on the cross-library taxonomy in

Error taxonomy

  • the layered ladder in

debug that escalates to

`doca-debug/SKILL.md`.

Audience

This skill serves **external developers building applications that consume the DOCA Compress library** — i.e., users whose code calls `doca_compress_*` (directly in C/C++, or through FFI/bindings from another language) to offload bulk DEFLATE compression or decompression onto a BlueField DPU or ConnectX accelerator. It is *not* for NVIDIA developers contributing to DOCA Compress itself.

**Language scope.** DOCA Compress ships as a C library with `pkg-config` module name `doca-compress`. The shipped samples are written in C. C and C++ consumers are the canonical case and th

Read more
@nvidia
Ships withskills

Official, NVIDIA-verified Agent Skills for Claude Code, Codex, and other coding agents.

3.8k200 skills
Get the whole plugin

Stars on GitHub

Momentum

stars in total
3.8k
Star history of NVIDIA/skills on GitHub, a chart by star-history.com

Other skills on skills.

nvidia-skill-finder

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…

@nvidia@nvidiaInstall Skill
accelerated-computing-cudf

accelerated-computing-…

Official NVIDIA-authored guidance for NVIDIA cuDF GPU DataFrames, pandas acceleration, dask-cuDF, ETL, joins, groupby,…

@nvidia@nvidiaInstall Skill
amc-run-rtsp-calibration

amc-run-rtsp-calibrati…

Calibrate a new dataset from live RTSP camera streams via the AutoMagicCalib REST API. Use when the user provides RTSP URLs or…

@nvidia@nvidiaInstall Skill
amc-run-sample-calibration

amc-run-sample-calibra…

Run end-to-end calibration on the shipped sample dataset (sdg_08_2_sample_data_010926.zip) against a running AMC microservice.…

@nvidia@nvidiaInstall Skill
amc-run-video-calibration

amc-run-video-calibrat…

Calibrates pre-recorded `cam_*.mp4` datasets through the AutoMagicCalib REST API. Use for user-supplied local MP4s; route live…

@nvidia@nvidiaInstall Skill

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills11d309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc13d293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react2d252k
@facebook@facebookInstall Skill

Questions about doca-compress.

Which coding agents can use doca-compress?
doca-compress installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.