Dev & Engineering ✓ NVIDIA · Official cpu-offloadingmegatron-bridgedistributed-traininggpu-memoryoptimizer-offloadingactivation-offloading

NeMo MBridge CPU Offload

Configure, validate, and troubleshoot CPU offloading in Megatron Bridge to relieve GPU memory pressure.

FollowSkills review · FSRS-2.0
Not recommended
55/ 100 5-point scale 2.8 / 5
Trust17 / 25 · 3.4/5

The skill contains no malware, credential theft, or covert exfiltration guidance. Its scope is mainly training configuration, but the example command can launch real training and does not require confirmation or disclose data flow, resource cost, or rollback, so points are deducted. NVIDIA provenance and the Apache-2.0 label support attribution, but repository license metadata is NOASSERTION, preventing full marks.

Reliability8 / 20 · 2.0/5

The document provides two mechanisms, constraints, configuration examples, symptoms, and fixes, with mostly coherent code anchors. However, cpu_offloading_num_layers has inconsistent range wording (num_layers-1 versus less than num_layers); dependency, version, and environment prerequisites are incomplete; and the listed tests do not cover the main offloading paths. Static calibration caps this dimension at 10.

Adaptability11 / 15 · 3.7/5

The audience, trigger terms, and boundaries around pipeline parallelism, recomputation, and CUDA graphs are relatively clear, and activation versus optimizer offloading is distinguished. Still, the guidance is centered on Qwen3-30B-A3B, H100 hardware, and a specific parallel configuration, with no Chinese-language guidance or meaningful evidence for non-NVIDIA environments, limiting invocation precision and reach.

Convention9 / 15 · 3.0/5

SKILL.md includes decision tables, parameter references, compatibility notes, a minimal command, verification guidance, diagnosis, and limitations; card.yaml adds structured metadata and benchmark summaries. It lacks standard Instructions/Examples sections, an explicit maintainer and update path, and a changelog. Version/date/SHA information is also inconsistent across the supplied files, so points are deducted.

Effectiveness6 / 15 · 2.0/5

The configuration snippets, command, and troubleshooting guidance can directly support the core decision: large MoE runs requiring PP>1 should generally use optimizer offloading. card.yaml also reports memory and slowdown measurements. Those results are author-reported and not confirmed in this static review; dependencies are underspecified and hardware-specific tuning remains necessary, so the score is limited to 6.

Verifiability4 / 10 · 2.0/5

Megatron-Core and Bridge code anchors, structured validation statuses, job identifiers, and benchmark results provide useful audit trails. However, this review did not execute anything, and the job identifiers and measured claims are not backed here by directly verifiable committed tests, CI coverage, or pinned evidence links, so the static score remains limited.

Evidence confidence:Low Reviewed Jul 20, 2026 Reviewed revision 55f18499943e
The upstream repository has new commits since this review. The score still applies to the reviewed revision shown and may not cover the latest changes.
Before you use it
  • Do not run the minimal command without first confirming environment, dependencies, GPU/CPU memory, parallelism settings, data boundaries, and user approval for training cost.
  • Correct and unify the stated valid range for cpu_offloading_num_layers to avoid configuration-boundary errors.
  • Tie the benchmark job IDs, loss comparisons, and performance figures to revision-pinned logs or reproducible experiment artifacts; they are author claims in this static review.
  • Validate optimizer offloading with CUDA graphs separately; activation offloading is explicitly incompatible with CUDA graphs, recomputation, and PP>1.
See the full review method →

What does this skill do, and when should you use it?

This skill guides NeMo MBridge and Megatron-Core training workflows through a choice between activation offloading and optimizer offloading. It covers layer-level activation offloading and fractional optimizer-state offloading through HybridDeviceOptimizer. It supplies configuration examples, CLI overrides, a runnable training command, unit-test commands, and failure-diagnosis paths. It is most useful when reducing GPU memory use or investigating OOMs and crashes after CPU-offloading configuration changes.

Checks configuration constraints for both CPU-offloading mechanisms and explains how pipeline parallelism, recomputation, CUDA graphs, and model size affect the choice; provides Python configuration and CLI override examples; supplies a minimal Qwen3-30B-A3B training command; provides pytest verification commands, success criteria, and diagnostic guidance based on error messages, memory usage, and iteration time.

  1. A team training a large MoE model with pipeline parallelism above 1 can select optimizer offloading to reduce GPU memory use.
  2. A team training a small or medium model with PP=1 can use layer-level activation offloading when activation memory dominates.
  3. An engineer tuning the memory-versus-speed tradeoff can vary optimizer_offload_fraction.
  4. An engineer investigating OOMs, NCCL errors, or crashes after a CPU-offload configuration change can trace conflicting parameters.
  5. A team validating numerical behavior can compare offloaded training against the non-offloaded baseline using the supplied tests and success criteria.

What are this skill's strengths and limitations?

Pros
  • Covers both activation offloading and optimizer-state offloading with explicit selection guidance.
  • Includes copyable Python settings, CLI overrides, a training command, and pytest commands.
  • Documents important constraints involving PP, recomputation, CUDA graphs, and fine-grained activation offloading.
  • Provides concrete confirmation and remediation paths for OOMs, NCCL errors, and slowdown.
Limitations
  • Activation offloading requires PP=1, limiting its suitability for large models that need higher pipeline parallelism.
  • Offloading adds overhead; the supplied Qwen3-30B-A3B figures show larger throughput penalties at higher optimizer-offload fractions.
  • The skill does not provide a complete environment-installation guide, hardware compatibility matrix, or standalone benchmark dataset.
  • Optimizer offloading requires use_distributed_optimizer=True.

How do you install this skill?

Install the named skill with the default skills CLI: npx skills add nvidia/skills --skill nemo-mbridge-perf-cpu-offloading --agent codex. The --agent codex option can be replaced with another supported Agent Skills client. The source does not document a specific manual-copy destination.

How do you use this skill?

After the skill is loaded, ask an agent for a CPU-offloading task such as “Configure optimizer_cpu_offload for NeMo MBridge training and investigate an OOM.” Then use the supplied runnable example: uv run python scripts/training/run_recipe.py --recipe qwen3_30b_a3b_pretrain_config optimizer.optimizer_cpu_offload=True optimizer.optimizer_offload_fraction=0.5 train.train_iters=20 train.global_batch_size=8 train.micro_batch_size=1. For verification, run the listed pytest command and check configuration validation, training stability, loss delta, and memory reduction.

How does this skill compare with similar options?

The skill directly compares two approaches: activation offloading moves activations and optionally weights per Transformer layer but requires PP=1; optimizer offloading moves Adam momentum and variance states through HybridDeviceOptimizer without PP, recomputation, or CUDA-graph restrictions. fine_grained_activation_offloading is a separate module-level alternative that supports PP but cannot be combined with layer-level cpu_offloading.

FAQ

Is this suitable for large MoE models?
Yes, but optimizer offloading is generally the better fit. Activation offloading's PP=1 restriction can make it impractical when a large MoE model must keep all layers, weights, and optimizer states within GPU memory.
What are the main activation-offloading conflicts?
pipeline_model_parallel_size must be 1, recompute_granularity must be None, CUDA graphs cannot be enabled, and fine_grained_activation_offloading cannot be enabled at the same time.
Does optimizer offloading avoid performance costs?
No. Transfers and CPU Adam computation add overhead. The skill reports substantial slowdown at full optimizer offload; reducing the fraction or enabling transfer overlap can help manage the tradeoff.
How do I decide whether the configuration worked?
Confirm that validation passes, training completes without OOM or NCCL errors, loss differs from the non-offloaded baseline by less than 0.001 at maximum, and memory usage falls in proportion to the offload fraction.

More skills from this repository

All from NVIDIA/skills

Dev & Engineering ✓ NVIDIA · Official

NeMo MBridge GPU Memory Tuning

Diagnose GPU OOMs in Megatron Bridge training and reduce fragmentation, activation, and PEFT memory usage.

Dev & Engineering ✓ NVIDIA · Official

Megatron Bridge Activation Recompute

Trade extra compute for lower GPU activation memory in Megatron Bridge training.

Dev & Engineering ✓ NVIDIA · Official

NeMo MBridge CUDA Graphs

Configure, validate, and benchmark CUDA Graph capture in Megatron Bridge to reduce host-driver overhead.

Dev & Engineering ✓ NVIDIA · Official

NeMo MBridge Recipe Recommender

Recommends adjustable Megatron Bridge recipes for your model, GPU budget, and training goal.

Dev & Engineering ✓ NVIDIA · Official

NeMo MBridge Training Guide

Run Megatron-LM and Megatron Bridge training and verify whether their loss curves match.

Dev & Engineering ✓ NVIDIA · Official

NeMo MBridge Parallelism Strategy Guide

Choose, combine, and validate Megatron Bridge parallelism configurations.

Dev & Engineering ✓ NVIDIA · Official

NeMo MBridge MoE Expert-Parallel Overlap

Configure, validate, and troubleshoot MoE expert-parallel communication overlap in Megatron-Bridge.

Dev & Engineering ✓ NVIDIA · Official

NeMo MBridge Training Resiliency

Configure fault recovery and hang detection for Megatron Bridge distributed training.

Dev & Engineering ✓ NVIDIA · Official

Megatron FSDP Configuration and Performance Guide

Enable, troubleshoot, and verify Megatron FSDP in Megatron-Bridge.

Dev & Engineering ✓ NVIDIA · Official

Megatron-Bridge Communication Overlap Guide

Configure and verify TP, DP, and PP communication overlap in Megatron-Bridge training.

Dev & Engineering ✓ NVIDIA · Official

NeMo MBridge MoE Performance Workflow

Systematically diagnose and improve MoE training throughput in Megatron Bridge.

Dev & Engineering ✓ NVIDIA · Official

NeMo MBridge Hierarchical Context Parallelism

Enable, troubleshoot, and verify hierarchical context parallelism in Megatron-Bridge.

Automation & Ops ✓ NVIDIA · Official

NeMo MBridge Multi-Node Slurm

Convert single-node MBridge scripts into multi-node Slurm jobs and diagnose launch, NCCL, and MoE memory failures.

Dev & Engineering ✓ NVIDIA · Official

NeMo MBridge MoE VLM Training Guide

Guides FSDP and 3D-parallel choices and tuning for MoE vision-language model training.

Automation & Ops ✓ NVIDIA · Official

Megatron-LM on SLURM

Launch, monitor, and troubleshoot multi-node Megatron-LM training on SLURM GPU clusters.

Dev & Engineering ✓ NVIDIA · Official

NeMo MBridge Long-Context MoE Training

Practical Megatron Bridge guidance for sizing parallelism, managing memory, and preserving throughput in long-context MoE training.

Dev & Engineering ✓ NVIDIA · Official

NeMo MBridge Sequence Packing

Configure and validate sequence packing and long-context training in Megatron-Bridge.

Automation & Ops ✓ NVIDIA · Official

TAO Jobs on Kubernetes

Submit and monitor NVIDIA TAO GPU training jobs through Kubernetes.

Dev & Engineering ✓ NVIDIA · Official

NeMo AutoModel Distributed Training

Choose and configure multi-GPU and multi-node training strategies for NeMo AutoModel.

Dev & Engineering ✓ NVIDIA · Official

NeMo MBridge MoE Communication Overlap

Tune expert-parallel communication and computation overlap in Megatron Bridge.

Related skills