SkillAtlasSkill 详情

nemo-mbridge-perf-memory-tuning

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

审核状态:已审核Quality 72Security 70

复制安装命令

用 Codex 或 Claude 安装复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它先审查 Skill 页面再帮你安装。

复制前请先查看来源、License 和安全提示。

项目 README

来源文件:README.md

抓取于 2026年8月10日

NVIDIA Agent Skills

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

NVIDIA Agent Skills Spec License

📖 Docs: docs.nvidia.com/skills  ·  📺 Livestream: From Vulnerable to Verified  ·  📝 Blog: NVIDIA Verified Agent Skills: Capability Governance for AI Agents


Skills are portable instruction sets that teach AI agents how to use NVIDIA software optimally: Physical AI and robotics workflows, simulation, CUDA-X libraries, RAG and AI Blueprints, and platform tools. This repository is a catalog: skills are maintained in their respective product repos, and mirrored here daily via an automated sync pipeline. Skills are being added continuously, so check back for updates. We are building this infrastructure in the open, and contributions are welcome. See the Roadmap for what is planned next.


Quickstart

Install NVIDIA skills with the default skills CLI flow:

npx skills add nvidia/skills

The CLI runs through npx and prompts you to choose a skill and install destination. You do not need to clone this repo or copy skill folders by hand.

Requires a current skills CLI (v1.5.16 or newer). Installing via npx skills@latest add nvidia/skills always uses the latest. On older CLIs (v1.5.15 and earlier), skills may install but not appear in Claude Code — see Troubleshooting.

The skill is available the next time your agent loads skills and encounters a relevant task. For example, ask your agent to "solve a linear programming problem with cuOpt" and the skill guides it through the cuOpt Python API. In Claude Code, run /reload-skills to load newly installed skills in your current session.

Install One Skill Without Prompts

Use this when you already know the skill name and want to skip prompts.

npx skills add nvidia/skills --skill cuopt-numerical-optimization-api --yes

Replace cuopt-numerical-optimization-api with any skill name from the Skill Catalog.

Install for a Specific Agent

Use --agent to target a specific AI coding agent. Initially, we'll support common client targets, expanding the list over time. For the full list of clients supported by the spec, see the skills CLI Supported Agents table.

Claude Code

npx skills add nvidia/skills --skill cuopt-numerical-optimization-api --agent claude-code

Codex

npx skills add nvidia/skills --skill cuopt-numerical-optimization-api --agent codex

Snowflake CoCo

npx skills add nvidia/skills --skill cuopt-numerical-optimization-api --agent cortex

Cursor

npx skills add nvidia/skills --skill cuopt-numerical-optimization-api --agent cursor

Kiro

npx skills add nvidia/skills --skill cuopt-numerical-optimization-api --agent kiro-cli

Use --agent more than once to install the same skill into multiple agents.

npx skills add nvidia/skills \
  --skill cuopt-numerical-optimization-api \
  --agent claude-code \
  --agent codex \
  --agent cursor \
  --agent kiro-cli

Keep Skills Up to Date

New skills land continuously, and existing ones are revised, renamed, or consolidated as the catalog evolves. Refresh what you have installed with:

npx skills update

Run it interactively and the CLI also flags skills that were removed or merged upstream (for example, when several skills are consolidated into one) and offers to remove the stale local copies. Use npx skills list to see what is installed and npx skills check to preview what is out of date first.

Browse the Catalog

Use this when you want to see available NVIDIA skills before installing anything.

npx skills add nvidia/skills --list

For non-interactive installs, global installs, agent-specific installs, updates, removals, and fallback manual copying, see Advanced installation.


Skill Catalog

ProductDescriptionSkills
AIQNVIDIA AI-Q Blueprint - deploy local AI-Q services and run shallow or deep research workflows as agent skills.aiq-research, aiq-deploy
CUDA-QCUDA Quantum — onboarding guide for installation, test programs, GPU simulation, QPU hardware, and quantum applications.cudaq-guide
cuDFOfficial 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.accelerated-computing-cudf
cuOptGPU-accelerated optimization — vehicle routing, linear programming, quadratic programming, installation, server deployment, and developer tools.cuopt-install, cuopt-multi-objective-exploration, cuopt-numerical-optimization-api, cuopt-numerical-optimization-formulation, cuopt-routing-api-python, cuopt-server-api-python
cuPyNumericNumPy and SciPy on multi-node multi-GPU systems — skills to help with installing cuPyNumeric, migrating existing NumPy code, and doing parallel I/Ocupynumeric-hdf5, cupynumeric-install, cupynumeric-migration-readiness, cupynumeric-parallel-data-load
DALIGPU-accelerated data loading and processing with NVIDIA DALI.dali-dynamic-mode
Data DesignerBuild declarative synthetic dataset generation pipelines with NeMo Data Designer.data-designer
DeepStreamAgentic skills for guided DeepStream development.amc-run-sample-calibration, amc-run-video-calibration, amc-setup-calibration-stack, deepstream-dev, deepstream-generate-pipeline, deepstream-import-vision-model, deepstream-profile-pipeline, deepstream-sop
Digital HealthAgent skills for the clinical ASR evaluation flywheel — term curation, synthetic clinical-speech benchmark generation, KER (Keyword Error Rate) scoring, and fine-tune guidance.digital-health-clinical-asr-setup, digital-health-clinical-asr-build, digital-health-clinical-asr-eval, digital-health-clinical-asr-finetune
DOCATeach AI agents to use the NVIDIA DOCA SDK on BlueField DPUs and ConnectX NICs — setup, libraries, services, tools, deployment, and debugging.doca-bare-metal-deployment, doca-bf3-deployment, doca-bf4-deployment, doca-collectx-deployment, doca-container-deployment, doca-debug, doca-hardware-safety, doca-programming-guide, doca-public-knowledge-map, doca-setup, doca-structured-tools-contract, doca-upgrade, doca-version, doca-aes-gcm, doca-argp, doca-comch, doca-common, doca-compress, doca-devemu, doca-dma, doca-dpa, doca-dpdk-bridge, doca-erasure-coding, doca-eth, doca-flow, doca-flow-dpa-provider, doca-gpi, doca-gpunetio, doca-mgmt, doca-pcc, doca-pcc-ztr-rttcc-algo, doca-rdma, doca-rdmi, doca-rmax, doca-sha, doca-sta, doca-telemetry, doca-telemetry-exporter, doca-urom, doca-verbs, doca-argus, doca-dms, doca-firefly, doca-urom-svc, doca-bench, doca-bench-extension, doca-caps, doca-comm-channel-admin, doca-dpa-hl-tracer, doca-flow-dpa-perf, doca-flow-grpc-server, doca-flow-perf, doca-flow-tune, doca-gpunetio-ib-write-bw, doca-gpunetio-ib-write-lat, doca-pcc-counters, doca-sha-offload-engine, doca-socket-relay, doca-spcx-cc, doca-telemetry-utils
DynamoNVIDIA Dynamo deployment bring-up on Kubernetes — pick and deploy recipes, start router modes, validate disagg NIXL/UCX/NCCL interconnect, and triage day-2 failures.dynamo-interconnect-check, dynamo-recipe-runner, dynamo-router-starter, dynamo-troubleshoot
Earth2StudioOpen-source deep-learning framework for exploring, building and deploying AI weather/climate workflows.earth2studio-create-datasource, earth2studio-create-diagnostic, earth2studio-create-prognostic, earth2studio-data-fetch, earth2studio-deterministic-forecast, earth2studio-discover, earth2studio-install
HoloHubBuild, run, debug, benchmark, and develop HoloHub applications and Holoscan Modules with validated lifecycle workflows.holohub-app-lifecycle, holohub-debug-build-run, holohub-module-lifecycle
Holoscan SDKInstall and set up the Holoscan SDK on any platform (container, Debian, Python, Conda, or source).holoscan-install-debian, holoscan-install-source, holoscan-install-wheel, holoscan-install-conda, holoscan-install-container, holoscan-setup
Holoscan Sensor BridgeAgent-ready skills for Holoscan Sensor Bridge devkit workflows, including demo environment bring-up, FPGA flashing for Lattice and VB1940 hardware, example application execution, QA test-plan automation, and support for configuring and using the Holoscan Sensor Bridge FPGA intellectual property (IP) core.hsb-setup, hsb-flash, hsb-app, hsb-test, hsb-ip-def, hsb-ip-packetizer, hsb-ip-create-top
Isaac for Healthcare WorkflowsAgent-ready skills for Isaac for Healthcare agentic and catheter-navigation workflows, covering task authoring, data pipelines, policy training and validation, CT-derived digital twins, DRR rendering, and interactive catheter simulation.i4h-workflow, i4h-workflow-setup, i4h-workflow-create, i4h-workflow-scene-edit, i4h-workflow-dataset-teleop, i4h-workflow-dataset-replay, i4h-workflow-dataset-mimic, i4h-workflow-dataset-annotate, i4h-workflow-dataset-convert, i4h-workflow-finetune, i4h-workflow-validate, i4h-workflow-e2e, i4h-lerobot-viz, i4h-catheter-navigation, i4h-catheter-navigation-setup, i4h-catheter-navigation-digital-twin, i4h-catheter-navigation-render-drr, i4h-catheter-navigation-viewport, i4h-catheter-navigation-smoke, i4h-catheter-navigation-e2e
Jetson BSPAgentic skills for setting up and customizing an NVIDIA Jetson Linux Board Support Package (BSP) — pick a target, prepare image and sources, customize IO (camera, PCIe, USB, pinmux, clocks, and more), then promote, flash, and validate.jetson-build-source, jetson-customize-camera, jetson-customize-clocks, jetson-customize-fan, jetson-customize-mgbe, jetson-customize-nvpmodel, jetson-customize-pcie, jetson-customize-pinmux, jetson-customize-uphy, jetson-customize-usb, jetson-derive-carrier, jetson-download-bsp, jetson-flash-image, jetson-generate-kb, jetson-init-image, jetson-init-source, jetson-init-target, jetson-link-docs, jetson-optimize-memory, jetson-print-bsp-info, jetson-promote-image, jetson-quick-start, jetson-set-target, jetson-validate-image
Jetson DeviceDevice-side agent skills for working with a live NVIDIA Jetson after boot — diagnostics, memory auditing, headless setup, inference memory tuning, LLM serving and benchmarking, packaging guidance, and speculative decoding.jetson-diagnostic, jetson-headless-mode, jetson-inference-mem-tune, jetson-llm-benchmark, jetson-llm-serve, jetson-memory-audit, jetson-package, jetson-print-device-info, jetson-speculative-decoding
Medical AI SkillsAgent-ready medical AI skills built on MONAI for DICOM handling, NVIDIA-hosted medical imaging model workflows, segmentation, synthesis, and evidence-oriented evaluation.dicom-metadata-extract, dicom-series-preflight, dicom-series-to-volume, nv-generate-ct-rflow, nv-generate-mr, nv-generate-mr-brain, nv-generate-mr-brain-finetune, nv-generate-vae-finetune, nv-reason-cxr, nv-segment-ct, nv-segment-ct-finetune, nv-segment-ctmr
Megatron-CoreLarge-scale distributed training — model parallelism, pipeline parallelism, and mixed precision.mcore-create-issue, mcore-linting-and-formatting, mcore-run-on-slurm, mcore-split-pr, mcore-testing
NeMo AutoModelNeMo AutoModel - PyTorch-native distributed training for LLMs/VLMs with Hugging Face support, recipes, launchers, and validation workflows.nemo-automodel-distributed-training, nemo-automodel-launcher-config, nemo-automodel-model-onboarding, nemo-automodel-recipe-development
NeMo MBridgeNeMo MBridge - PyTorch-native bridge between Hugging Face and Megatron-Core for checkpoint conversion, training recipes, and NVIDIA GPU performance workflows.nemo-mbridge-mlm-bridge-training, nemo-mbridge-multi-node-slurm, nemo-mbridge-perf-activation-recompute, nemo-mbridge-perf-cpu-offloading, nemo-mbridge-perf-cuda-graphs, nemo-mbridge-perf-expert-parallel-overlap, nemo-mbridge-perf-hierarchical-context-parallel, nemo-mbridge-perf-megatron-fsdp, nemo-mbridge-perf-memory-tuning, nemo-mbridge-perf-moe-comm-overlap, nemo-mbridge-perf-moe-dispatcher-selection, nemo-mbridge-perf-moe-hardware-configs, nemo-mbridge-perf-moe-long-context, nemo-mbridge-perf-moe-optimization-workflow, nemo-mbridge-perf-moe-vlm-training, nemo-mbridge-perf-parallelism-strategies, nemo-mbridge-perf-sequence-packing, nemo-mbridge-perf-tp-dp-comm-overlap, nemo-mbridge-recipe-recommender, nemo-mbridge-resiliency
NeMo PlatformNeMo Platform brings NVIDIA NeMo libraries together under one CLI, Python SDK, and web UInemo-evaluator-plugin, nemo-data-designer-plugin
NeMo RelaySkills to help get started and use NeMo Relay - a runtime for instrumenting and controlling AI agents across harnesses, applications, and frameworks.nemo-relay-install, nemo-relay-get-started, nemo-relay-instrument-calls, nemo-relay-instrument-context-isolation, nemo-relay-instrument-typed-wrappers, nemo-relay-plugin-adaptive-tuning, nemo-relay-plugin-build, nemo-relay-plugin-observability, nemo-relay-migrate-from-flow, nemo-relay-debug-runtime-integration
NeMo RetrieverNeMo Retriever - deploy NeMo Retriever Library locally, extract information from corpus of data, and answer questions against the corpus.nemo-retriever
NeMo-RLRLHF training on Ray — GRPO, DPO, and SFT for LLMs and VLMs with FSDP2 and Megatron-Core.launch-nemo-rl, nemo-rl-auto-research, nemo-rl-brev-etiquette, nemo-rl-docs, nemo-rl-session-memory
NemoClawSecure agent sandboxing — run OpenClaw inside NVIDIA OpenShell with managed inference, policy management, remote deployment, sandbox monitoring.nemoclaw-user-guide
NemotronAuthor end-to-end model development, customization, evaluation, and deployment pipelines using the NVIDIA AI stack.nemotron-customize, nemotron-retrieval-recipes, nemotron-policy-generator
Nemotron SpeechDeploy and operate NVIDIA Nemotron Speech (Riva) NIMs — ASR, TTS, and NMT, cloud-hosted via build.nvidia.com or self-hosted on your own GPU.nemotron-speech, nemotron-asr-finetune
Physical AIPhysical AI skills for simulation, synthetic data generation, training, validation and deployment and more.omniverse-cad-to-simready, omniverse-realtime-viewer, omniverse-usd-performance-tuning, physical-ai-infrastructure-setup-and-resilient-scaling, physical-ai-neural-reconstruction, physical-ai-defect-image-generation, physical-ai-video-data-augmentation, physical-ai-people-attribute-search
PhysicsNeMoNVIDIA PhysicsNeMo - Open-source deep-learning framework for building, training, and fine-tuning deep learning models using state-of-the-art Physics-ML methods.physicsnemo-discover, physicsnemo-shard-tensor
Portfolio OptimizationGPU-accelerated Mean-CVaR portfolio optimization with NVIDIA cuOpt — CVaR optimization, efficient frontier, scenario generation, backtesting, and rebalancing.portfolio-optimization
RAG BlueprintRAG pipeline — deploy, configure, troubleshoot, and manage retrieval augmented generation with Docker Compose or Helm.rag-blueprint, rag-eval, rag-perf
Skill Card GeneratorReads an agent skill's source files and produces a skill card plus a review table. Use when a skill directory exists and a governance card needs to be generated or updated.skill-card-generator
TAO ToolkitNVIDIA TAO Toolkit - fine-tune and optimize 100+ pretrained vision AI models with your own data using low-code microservices, then export production-ready models for edge or cloud deployment.tao-analyze-changenet-rca, tao-finetune-huggingface-model, tao-port-huggingface-model, tao-run-automl, tao-run-automl-deft-pipeline, tao-run-deft-aoi, tao-run-inference-service, tao-train-single-step, paidf-anomalygen, tao-analyze-gaps-visual-changenet, tao-analyze-gaps-vlm-bcq, tao-convert-dataset-format, tao-generate-image-grounding, tao-generate-referring-expressions, tao-generate-video-reasoning-annotations, tao-mine-aoi-images, tao-route-visual-changenet-samples, tao-validate-dataset-format, tao-finetune-clip, tao-finetune-cosmos-embed, tao-finetune-cosmos-reason, tao-train-action-recognition, tao-train-bevfusion, tao-train-centerpose, tao-train-deformable-detr, tao-train-depth-anything-v2, tao-train-dino, tao-train-fast-foundation-stereo, tao-train-foundation-stereo, tao-train-grounding-dino, tao-train-image-classification, tao-train-mask-auto-encoder, tao-train-mask-auto-label, tao-train-mask-grounding-dino, tao-train-mask2former, tao-train-metric-learning-recognition, tao-train-nvdinov2, tao-train-nvpanoptix3d, tao-train-ocdnet, tao-train-ocrnet, tao-train-oneformer, tao-train-optical-inspection, tao-train-pointpillars, tao-train-pose-classification, tao-train-reid, tao-train-rtdetr, tao-train-segformer, tao-train-sparse4d, tao-train-visual-changenet, tao-run-on-brev, tao-run-on-docker, tao-run-on-kubernetes, tao-run-on-local-docker, tao-run-on-slurm, tao-run-platform, tao-setup-nvidia-gpu-host, tao-launch-workflow, tao-list-capabilities
TileGymTile-based GPU programming — adding new kernels, cross-framework conversion, and performance optimization.tilegym-adding-cutile-kernel, tilegym-converting-cutile-to-julia, tilegym-converting-cutile-to-triton, tilegym-cutile-autotuning, tilegym-cutile-python, tilegym-improve-cutile-kernel-perf, tilegym-monkey-patch-kernels-to-transformers
Video Search and SummarizationVSS Blueprint — deploy profiles, search and summarize video, generate analysis reports, manage alerts and incidents, query VIOS sensors, and use the RTVI VLM microservice.vss-ask-video, vss-deploy-dense-captioning, vss-deploy-detection-tracking-2d, vss-deploy-detection-tracking-3d, vss-deploy-profile, vss-deploy-video-embedding, vss-generate-video-calibration, vss-generate-video-report, vss-manage-alerts, vss-manage-video-io-storage, vss-query-analytics, vss-search-archive, vss-setup-behavior-analytics, vss-setup-video-analytics-api, vss-summarize-video

Getting Help & Contributing

Where to file an issue depends on what's broken:

  • Skill content issues (a specific skill has a bug, missing functionality, or incorrect content) — file in the source repo for that product, using the per-product table below.
  • Catalog issues (catalog README errors, sync workflow problems, distribution channels, signing/verification flow, docs in this repo) — file here using the catalog issue templates: Bug Report, Feature Request, or Documentation Request or Correction.
  • Questions or general discussion — use Discussions. The issue tracker is reserved for bug reports, feature proposals with a design, and documentation issues.
  • Security vulnerabilities — follow the disclosure process in SECURITY.md; do not open a public issue.

Per-product source repo links:

ProductIssuesDiscussionsContributingSecurity
AIQIssuesDiscussionsContributingSecurity
CUDA-QIssuesDiscussionsContributingSecurity
cuDFIssuesDiscussionsContributingSecurity
cuOptIssuesDiscussionsContributingSecurity
cuPyNumericIssues—Contributing—
DALIIssues—Contributing—
Data DesignerIssuesDiscussionsContributingSecurity
DeepStreamIssues—ContributingSecurity
Digital HealthIssues—ContributingSecurity
DOCAIssues—ContributingSecurity
DynamoIssuesDiscussionsContributingSecurity
Earth2StudioIssuesDiscussionsContributing—
HoloHubIssues—ContributingSecurity
Holoscan SDKIssues—ContributingSecurity
Holoscan Sensor BridgeIssues—Contributing—
Isaac for Healthcare WorkflowsIssues—ContributingSecurity
Jetson BSPIssues—ContributingSecurity
Jetson DeviceIssues—ContributingSecurity
Medical AI SkillsIssues—ContributingSecurity
Megatron-CoreIssuesDiscussionsContributing—
NeMo AutoModelIssuesDiscussionsContributingSecurity
NeMo MBridgeIssuesDiscussionsContributingSecurity
NeMo PlatformIssuesDiscussionsContributingSecurity
NeMo RelayIssuesDiscussionsContributingSecurity
NeMo RetrieverIssuesDiscussionsContributingSecurity
NeMo-RLIssuesDiscussionsContributingSecurity
NemoClawIssuesDiscussionsContributingSecurity
NemotronIssuesDiscussionsContributingSecurity
Nemotron SpeechIssues—ContributingSecurity
Physical AIIssues—ContributingSecurity
PhysicsNeMoIssuesDiscussionsContributingSecurity
Portfolio OptimizationIssuesDiscussionsContributingSecurity
RAG BlueprintIssuesDiscussionsContributingSecurity
Skill Card GeneratorIssues—ContributingSecurity
TAO ToolkitIssuesDiscussionsContributingSecurity
TileGymIssues—ContributingSecurity
Video Search and SummarizationIssuesDiscussionsContributingSecurity

For issues with this catalog repo itself (README, structure, listing a new product): open an issue here.


Verifying Skills

Every published skill ships with a detached OMS signature (skill.oms.sig). The sync pipeline drops any skill missing the required artifacts before publishing, so every skill in the catalog carries:

  • SKILL.md — the skill instructions consumed by the agent
  • skill-card.md — skill identity and governance card
  • skill.oms.sig — detached OMS signature (verifiable against nv-agent-root-cert.pem)
  • A Tier-3 evaluation dataset — accepted at evals/evals.json, evals/*.json, eval/*.json, or benchmark/evals.json
  • BENCHMARK.md — generated benchmark report capturing verifiable uplift data

Verify a skill against the NVIDIA trust anchor nv-agent-root-cert.pem:

pip install model-signing
model_signing verify certificate SKILL_DIR \
  --signature SKILL_DIR/skill.oms.sig \
  --certificate_chain nv-agent-root-cert.pem \
  --ignore_unsigned_files

A successful verification confirms that the skill contents have not been modified since signing by NVIDIA.

See Verify Signed Agent Skills for signature layout, the trust pipeline, and policy options.


Roadmap

  • ✅ Public skills catalog with NVIDIA-verified skills across multiple products
  • ✅ Automated sync pipeline with skills mirrored from product repos daily
  • ✅ Security scanning for all published skills covering instruction safety and supply-chain integrity
  • ✅ Skills signing so every published skill carries a verifiable NVIDIA signature
  • ✅ Skills universal evaluation criteria and task-specific criteria
  • ✅ Skill Card with machine-readable metadata for identity, provenance, quality, and behavioral boundaries
  • ✅ Sync-time compliance gates — signature drift detection and missing-artifact enforcement
  • ✅ Syndication to external marketplaces — Skills.sh, Codex plugin, Claude Code plugin, ClawHub, Hermes Hub
  • 🔲 Syndication to additional MCP hubs and partner channels

Repository Structure

NVIDIA/skills/
├── skills/                      # NVIDIA-verified skills (count grows continuously),
│   │                              synced from upstream product repos
│   ├── README.md                 # Browser-facing install guidance
│   ├── <product-prefix>-*/       # Flat layout — one dir per skill, product-prefixed
│   │                               # e.g. aiq-*, cuopt-*, cupynumeric-*,
│   │                               # dali-*, deepstream-*, dicom-*, digital-health-*,
│   │                               # dynamo-*, earth2studio-*, holoscan-*, hsb-*,
│   │                               # jetson-*, launch-nemo-rl, mcore-*,
│   │                               # nemo-automodel-*, nemo-data-designer-plugin,
│   │                               # nemo-evaluator-plugin, nemo-mbridge-* (20 skills),
│   │                               # nemo-retriever, nemo-rl-* (4 skills),
│   │                               # nemoclaw-user-guide, nemotron-*, nemotron-speech,
│   │                               # nv-* (medical AI), physicsnemo-*, rag-*,
│   │                               # skill-card-generator, tao-*, tilegym-*,
│   │                               # vss-* (15 skills), accelerated-computing-cudf,
│   │                               # cudaq-guide, portfolio-optimization
│   ├── omniverse-*/              # Physical AI — manually staged (see manual-components.yml)
│   └── physical-ai-*/            # Physical AI — manually staged
├── components.d/                # Product registry — one file per component, teams onboard here
│   ├── README.md                 # Schema and onboarding instructions
│   └── <product>.yml             # one file per registered product
├── plugins/                     # Packaged plugin distributions
│   └── nvidia-skills/            # Curated NVIDIA skills bundle (Claude Code, Codex)
├── plugins.d/                   # Plugin build registry — config for `build-plugins.py`
│   ├── README.md
│   ├── _defaults.yml
│   └── nvidia-skills.yml
├── .claude-plugin/              # Claude Code marketplace metadata
│   └── marketplace.json
├── .agents/plugins/             # Agent marketplace metadata (other clients)
│   └── marketplace.json
├── docs/                        # Long-form documentation (published via Fern)
│   ├── README.md                 # How to build the docs locally
│   ├── index.mdx
│   ├── advanced-install.mdx
│   ├── agent-skill-trust-pipeline.mdx
│   ├── release-checklist.mdx
│   ├── scanning-agent-skills.mdx
│   ├── signing-agent-skills.mdx
│   └── skill-cards.mdx
├── fern/                        # Fern docs site configuration
├── .github/
│   ├── workflows/                # Sync pipeline, plugin validation, DCO check, author verify
│   └── scripts/                  # regenerate-readme.sh, build-plugins.py,
│                                 # manual-components.yml (temp Physical AI catalog
│                                 # exception, removed after Computex 2026),
│                                 # marketplace/metadata.json (skill metadata sidecar)
├── nv-agent-root-cert.pem       # Trust anchor for OMS signature verification
├── skills.sh.json               # Skills.sh marketplace grouping config
├── CHANGELOG.md
├── CONTRIBUTING.md              # Contribution guidelines
├── SECURITY.md                  # Security reporting policy
├── CODE_OF_CONDUCT.md           # Community code of conduct
├── LICENSE-APACHE               # Apache 2.0 (source code)
└── LICENSE-CC-BY-4.0            # CC BY 4.0 (documentation/skills)

Skills are maintained in their respective product repos (see the Source column in the Skill Catalog) and synced to this repo daily. Products only appear under skills/ after the sync pipeline confirms each skill carries:

  • skill.oms.sig — detached OMS-format signature (verifiable against nv-agent-root-cert.pem)
  • skill-card.md — skill identity and governance card
  • A Tier-3 evaluation dataset — accepted at evals/evals.json, evals/*.json, eval/*.json, or benchmark/evals.json

When evaluation runs produce a BENCHMARK.md, it ships alongside the skill so consumers can see verifiable benchmark uplift data.


Standards & Compatibility

This repository adheres to the Agent Skills specification:

  • Skills are portable directories with a SKILL.md file at their root.
  • Metadata uses YAML frontmatter with required name and description fields.
  • Skills follow a progressive disclosure model — lightweight metadata loads at startup, full instructions load on activation.
  • Validate your skill using the skills-ref reference library.

License

Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.

This code is dual-licensed with documentation/skills under the CC-BY-4.0 AND source code under Apache-2.0 license terms. The full license texts can be found in LICENSE-APACHE and LICENSE-CC-BY-4.0 respectively.

其他

中风险

  • 来源需自行核对维护者身份。
  • 包含脚本或命令调用,安装前请复核。
  • 可能需要外部 token、网络权限或第三方服务。
  • 未检测到高风险命令。
  • 扫描发现:2 条。

Codex — Git Clone 安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 克隆仓库:git clone https://github.com/NVIDIA/skills.git
  3. 将 "skills/nemo-mbridge-perf-memory-tuning" 文件夹复制到 Codex 的 skills 目录中。
  4. 重启 Codex 让新的 skill 生效。

Codex — 手动复制安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 从源仓库下载 SKILL.md 及相关文件。
  3. 在 Codex 的 skills 目录中创建新文件夹。
  4. 将所有 skill 文件复制到新文件夹中。
  5. 重启 Codex 让新的 skill 生效。

Claude Code — Git Clone 安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 克隆仓库:git clone https://github.com/NVIDIA/skills.git
  3. 将 "skills/nemo-mbridge-perf-memory-tuning" 文件夹复制到 Claude Code 的 skills 目录中。
  4. 重启 Claude Code 让新的 skill 生效。

Claude Code — 手动复制安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 从源仓库下载 SKILL.md 及相关文件。
  3. 在 Claude Code 的 skills 目录中创建新文件夹。
  4. 将所有 skill 文件复制到新文件夹中。
  5. 重启 Claude Code 让新的 skill 生效。

Cursor — Git Clone 安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 克隆仓库:git clone https://github.com/NVIDIA/skills.git
  3. 将 "skills/nemo-mbridge-perf-memory-tuning" 文件夹复制到 Cursor 的 skills 目录中。
  4. 重启 Cursor 让新的 skill 生效。

Cursor — 手动复制安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 从源仓库下载 SKILL.md 及相关文件。
  3. 在 Cursor 的 skills 目录中创建新文件夹。
  4. 将所有 skill 文件复制到新文件夹中。
  5. 重启 Cursor 让新的 skill 生效。

GitHub Copilot — Git Clone 安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 克隆仓库:git clone https://github.com/NVIDIA/skills.git
  3. 将 "skills/nemo-mbridge-perf-memory-tuning" 文件夹复制到 GitHub Copilot 的 skills 目录中。
  4. 重启 GitHub Copilot 让新的 skill 生效。

GitHub Copilot — 手动复制安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 从源仓库下载 SKILL.md 及相关文件。
  3. 在 GitHub Copilot 的 skills 目录中创建新文件夹。
  4. 将所有 skill 文件复制到新文件夹中。
  5. 重启 GitHub Copilot 让新的 skill 生效。

Windsurf — Git Clone 安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 克隆仓库:git clone https://github.com/NVIDIA/skills.git
  3. 将 "skills/nemo-mbridge-perf-memory-tuning" 文件夹复制到 Windsurf 的 skills 目录中。
  4. 重启 Windsurf 让新的 skill 生效。

Windsurf — 手动复制安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 从源仓库下载 SKILL.md 及相关文件。
  3. 在 Windsurf 的 skills 目录中创建新文件夹。
  4. 将所有 skill 文件复制到新文件夹中。
  5. 重启 Windsurf 让新的 skill 生效。
查看 SKILL.md 原文
name: nemo-mbridge-perf-memory-tuning
description: Techniques for reducing peak GPU memory in Megatron Bridge — expandable segments, PEFT + SP input re-gather, parallelism resizing, activation recompute, CPU offloading constraints, and common OOM fixes.
license: Apache-2.0
when_to_use: GPU OOM errors, reducing peak memory, reducing LoRA or PEFT activation memory with sequence parallelism, or tracing an OOM regression to a specific commit or config change; 'out of memory', 'OOM', 'memory fragmentation', 'expandable_segments', 'reduce GPU memory', 'LoRA memory', 'PEFT memory', 'sequence_parallel_input_regather', 'PYTORCH_CUDA_ALLOC_CONF'.

Memory Tuning

Stable docs: @docs/parallelisms.md Card: @skills/nemo-mbridge-perf-memory-tuning/card.yaml

What It Is

GPU OOM failures during training often stem from memory fragmentation rather than raw capacity. PyTorch's default CUDA allocator can leave unusable gaps between allocations. The single most effective fix is:

export PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True

This tells PyTorch to use expandable (non-fixed-size) memory segments, which dramatically reduces fragmentation and often eliminates borderline OOM without any model or parallelism changes.

Beyond fragmentation, actual peak memory is determined by:

  • Parameter + optimizer state memory — controlled by TP, PP, DP sharding (distributed optimizer, FSDP)
  • Activation memory — controlled by activation recompute, sequence length, micro-batch size, and PEFT-specific retention of gathered inputs
  • Temporary / workspace memory — CUDA kernels, NCCL buffers, CUDA graphs

For configuration planning, use the Bridge theoretical estimator before launching large jobs:

from megatron.bridge.training.utils.theoretical_memory_utils import estimate_training_memory

estimate = estimate_training_memory(cfg, num_microbatches=num_microbatches)

The estimator reports the most-loaded GPU shard and separates dense/embedding, routed MoE expert, and activation components. It does not include allocator fragmentation, CUDA/NCCL workspace, CUDA graph buffers, token imbalance, or dispatcher workspace, so validate final configs with runtime memory metrics.

Quick Decision

When a training run OOMs or is close to the memory limit:

  1. Set PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True first. This fixes fragmentation-induced OOM with zero performance cost. Most Slurm launch templates already include it.
  2. For LoRA with sequence parallelism, enable input re-gather (LoRA(sequence_parallel_input_regather=True)). This avoids retaining the full gathered LoRA-A input in every eligible layer; it has no effect when SP is disabled.
  3. Add selective activation recompute (recompute_modules=[core_attn]) if not already enabled. See @skills/nemo-mbridge-perf-activation-recompute/SKILL.md.
  4. Avoid increasing TP as a memory fix — doubling TP dramatically increases NVLink all-reduce volume and often kills throughput (-28% on Llama3 70B).
  5. Avoid increasing PP at the cost of DP — halving DP doubles gradient accumulation steps and hurts throughput (~6%).
  6. Consider mlp recompute if still OOM. Saves ~3 GB but costs ~16% GPU utilization on large dense models (Llama3 70B).
  7. CPU offloading is blocked when PP > 1.

Enablement

Expandable segments (recommended first step)

Set in the job's environment before launching:

export PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True

In Slurm scripts this is typically placed alongside other env vars:

export CUDA_DEVICE_MAX_CONNECTIONS=1
export NVTE_ALLOW_NONDETERMINISTIC_ALGO=1
export PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True

No model config changes needed. Zero throughput cost.

Parallelism resizing

If the model genuinely does not fit (not fragmentation), adjust parallelism:

StrategyMemory effectThroughput costNotes
Increase PP (keeping DP)Fewer layers per stageModerate (~6% if DP halved)Only if GPU count allows
Increase TPFewer params per GPUSevere (-28% on 70B)Last resort
Distributed optimizerShards optimizer state across DP ranks~1-2%Recommended for large models
FSDPShards params + grads + optimizerVariesSee @skills/nemo-mbridge-perf-megatron-fsdp/SKILL.md

Activation recompute

See @skills/nemo-mbridge-perf-activation-recompute/SKILL.md for full details.

PEFT + sequence-parallel input re-gather

For LoRA training with sequence parallelism, eligible column-parallel linear_qkv and linear_fc1 adapters consume a gathered LayerNorm output. Because LoRA-A is trainable, the default path retains that full gathered input until backward for the LoRA-A weight gradient.

Enable input re-gather when constructing the PEFT config:

from megatron.bridge.peft.lora import LoRA

cfg.peft = LoRA(
    # Keep the recipe's existing LoRA settings here.
    sequence_parallel_input_regather=True,
)

With this option, forward still materializes the full input temporarily for the LoRA-A GEMM, but MCore autograd retains only its sequence-local shard. Backward asynchronously gathers the full input again, overlaps the collective with dgrad when possible, computes the LoRA-A weight gradient, and then reuses the temporary communication buffer.

This is a memory-for-communication tradeoff, not conventional activation checkpointing: no LayerNorm, attention, MLP, or LoRA GEMM is rerun. Some throughput degradation is expected, and the benefit grows with the amount of eligible LoRA-A activation retained. The option has no effect when sequence parallelism is disabled.

CPU offloading

cfg.model.cpu_offloading = True

Incompatible with PP > 1. Only usable when pipeline_model_parallel_size = 1.

A Note on VPP

Virtual pipeline parallelism (VPP) is primarily a throughput optimization that reduces pipeline bubble overhead by interleaving smaller model chunks. Its effect on peak memory is minimal — changing VPP does not meaningfully change the total activation, parameter, or optimizer memory on a GPU.

In earlier experiments we incorrectly attributed an OOM fix to VPP tuning (VPP 5→10). The actual fix was PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True which eliminated memory fragmentation. The VPP=10 run actually used slightly more peak memory (60.2 GB vs 58.8 GB) but did not OOM because expandable segments prevented fragmentation.

VPP should be tuned for pipeline bubble reduction (see @docs/parallelisms.md), not as a memory fix.

Compatibility and Constraints

  • expandable_segments:True is incompatible with --use-nccl-ub (NCCL user-buffer registration). See Megatron-FSDP docs.
  • When using CUDA graphs with expandable_segments:True, set NCCL_GRAPH_REGISTER=0 (required on pre-Blackwell GPUs, enforced by MCore CudaGraphManager).
  • CPU offloading requires pipeline_model_parallel_size = 1.
  • Distributed optimizer requires use_distributed_optimizer = True in the optimizer config.
  • sequence_parallel_input_regather applies only to eligible non-expert column-parallel LoRA-A projections. Row-parallel adapters, expert adapters, TP=1, CUDA graphs, CPU activation offload, and overlapping full-layer or selective MLP activation recompute fall back to the existing path.

Measured Results

Llama3 70B SFT on 32x H100 80GB, FP8 (Current Scaling):

  • Baseline: TP=4, PP=4, VPP=5, DP=2, MBS=1, GBS=32, seq_len=4096
  • Golden GPU utilization: 709.93 TFLOP/s/GPU
  • Regression threshold: 5%

Strategy comparison: parallelism changes for memory reduction

ExperimentTPPPVPPDPTFLOP/s/GPUvs GoldenPeak Mem (GB)Result
Baseline4452~704-0.8%58.8OOM (fragmentation)
More PP4851668.0-5.9%53.2Borderline perf
More TP8451508.7-28.4%50.2Severe regression
Baseline + expandable_segments4452~704-0.8%~59Passed

Key takeaways:

  • expandable_segments:True is the winner. The baseline OOM was caused by memory fragmentation, not insufficient capacity. Setting this env var eliminated the OOM with zero throughput cost and no parallelism changes.
  • PP=8 works for memory but loses DP (2→1), meaning 32 gradient accumulation steps per batch, which hurts throughput by ~6%.
  • TP=8 is catastrophic (-28%) because doubling TP increases all-reduce communication volume proportionally across NVLink, and DP=1 means no micro-batch overlap.

CPU offloading: blocked

Experimentoffload_layersResult
Exp 42Incompatible (PP > 1)
Exp 54Incompatible (PP > 1)
Exp 66Incompatible (PP > 1)

ValueError: Currently there is no support for Pipeline parallelism with CPU offloading. This approach is blocked for any model using PP > 1.

Activation recompute: expensive alternative

Selective activation recompute with mlp saved ~3 GB peak memory but cost ~16% GPU utilization on this workload. See @skills/nemo-mbridge-perf-activation-recompute/SKILL.md for full results.

LoRA + SP input re-gather

Real-checkpoint H100 training with SQuAD showed lower peak memory in all tested configurations, with workload-dependent throughput cost:

Model/configBaseline peakInput re-gather peakMemory savedThroughput change
Qwen3-8B, TP2, seq 819247.545 GB42.814 GB4.731 GB (10.0%)-6.74%
Qwen3-30B-A3B, TP4/EP429.890 GB28.321 GB1.569 GB (5.2%)-2.89%
GPT-OSS-120B, TP2/EP852.185 GB51.371 GB0.814 GB (1.6%)-0.34%

All runs had finite losses with zero skipped or NaN iterations. Two-rank BF16 and FP32 checks matched the baseline for outputs, input gradients, LoRA-A and LoRA-B gradients, and two-microbatch fused main_grad accumulation.

Code Anchors

LoRA sequence-parallel input re-gather

src/megatron/bridge/peft/lora.py
    LoRA.sequence_parallel_input_regather

src/megatron/bridge/peft/utils.py
    ParallelLinearAdapter._sequence_parallel_input_regather_eligibility()
    ParallelLinearAdapter.forward()

CPU offloading PP incompatibility (MCore)

        if self.cpu_offloading and self.pipeline_model_parallel_size > 1:
            raise ValueError(
                "Currently there is no support for Pipeline parallelism with CPU offloading"
            )

VPP config and layer divisibility validation (MCore)

            if pipeline_parallel_size and self.virtual_pipeline_model_parallel_size is not None:
                num_layers_per_middle_pipeline_rank = num_layers // pipeline_parallel_size
                if (
                    not num_layers_per_middle_pipeline_rank
                    % self.virtual_pipeline_model_parallel_size
                    == 0
                ):
                    raise ValueError(
                        f"number of layers on each middle pipeline rank:"
                        f"{num_layers_per_middle_pipeline_rank} must be divisible by virtual"
                        f"pipeline parallel degree {self.virtual_pipeline_model_parallel_size}"
                    )

Parallelism docs on interleaved pipeline schedule

To minimize the pipeline bubble, the computation on each GPU can be divided into multiple subsets of layers (referred to as model chunks), rather than a single contiguous block. Enable this by setting `virtual_pipeline_model_parallel_size`:

model_config = GPTModelProvider(
    pipeline_model_parallel_size=4,
    virtual_pipeline_model_parallel_size=2,  # 2 model chunks per pipeline stage
    # ... other model parameters
)

Failure Diagnosis

SymptomCauseConfirmFix
OOM on a single rank despite headroom on othersMemory fragmentationcheck if expandable_segments:True is setset PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True
OOM with expandable_segments already setGenuine capacity limitcheck nvidia-smi for param/optimizer memoryincrease PP, use distributed optimizer, or add recompute
Estimated memory exceeds GPU capacity before launchmodel state or activations genuinely too largerun estimate_training_memory and inspect the largest componentadjust PP/TP/CP/EP, distributed optimizer, or recompute before launching
LoRA + SP retains unexpectedly high activation memoryfull gathered LoRA-A inputs are retained until backwardcheck whether cfg.peft.sequence_parallel_input_regather is enabled and the target is eligibleset LoRA(sequence_parallel_input_regather=True); verify fallback constraints
ValueError: PP + CPU offloadingusing cpu_offloading with PP > 1check PP configdisable CPU offloading or set PP=1
RuntimeError with --use-nccl-ub + expandable segmentsNCCL UB incompatible with expandable allocatorcheck env varsremove expandable_segments:True or disable --use-nccl-ub

Known Limitations

  • CPU offloading is blocked when PP > 1
  • Parallelism resizing (TP/PP) often has significant throughput costs
  • The theoretical estimator is formula-based and does not replace runtime profiling or CUDA memory reports
  • LoRA input re-gather does not cover row-parallel or expert adapters and may have negligible benefit when few eligible LoRA-A activations dominate memory

Verification

Quick check that expandable_segments:True is active:

import os
assert "expandable_segments:True" in os.environ.get("PYTORCH_CUDA_ALLOC_CONF", "")

For Slurm jobs, verify the env var is exported before the training command in the launch script.

For LoRA + SP input re-gather, run the focused configuration tests and the real two-rank MCore backward-parity test:

uv run python -m pytest \
  tests/unit_tests/peft/test_utils.py -k "sequence_parallel_input_regather" \
  tests/unit_tests/peft/test_lora.py -k "sequence_parallel_input_regather"

uv run python -m torch.distributed.run --nproc_per_node=2 -m pytest \
  tests/unit_tests/peft/test_lora_sp_input_regather_distributed.py

发现问题?提交给管理员复核

评分:

评论 (0)

暂无评论,成为第一个评论者吧!