Option
HeimHeim Skill Datenwissenschaft und ML nemo-mbridge-perf-moe-vlm-training

nemo-mbridge-perf-moe-vlm-training

NVIDIA/skills NVIDIA/skills

Bietet praktische Anleitungen zum Training von „Mixture-of-Experts“-Modellen für Bild-Sprache in Megatron Bridge und vergleicht dabei FSDP- und 3D-Parallel-Ansätze anhand der Erkenntnisse aus aktuellen multimodalen Experimenten.

...Alle erweitern
1
Zeit aktualisiert 28. September 2026

MoE-VLM-Training

Stabile Dokumentation: @docs/training/moe-optimization.md Karte: @skills/nemo-mbridge-perf-moe-vlm-training/card.yaml

FSDP vs. 3D-Parallel

Ansatz Stärke Am besten geeignet
FSDP Einfachster Weg zu einem funktionierenden multimodalen Lauf Erstinbetriebnahme, „Memory-First“-Optimierung, ungünstige PP-Grenzen
3D-parallel Höheres Potenzial nach der Optimierung Stabile Modelle mit einem übersichtlichen PP-Layout und Zeit für tiefergehende Sweeps

Bei MoE-VLMs sieht der praktische Arbeitsablauf in der Regel so aus:

  1. Erste zuverlässige Simulation mit FSDP
  2. Eingabe der realen Daten stabilisieren, neu berechnen und Speicherverhalten prüfen
  3. Erst dann auf 3D-Parallelbetrieb umsteigen, wenn sich der Durchsatzgewinn durch den Mehraufwand lohnt

Zusammenfassende Erkenntnisse aus aktuellen VLM-Läufen

Modelle der Qwen3-VL-Klasse

Die Hauptmuster waren über den gesamten Tracker hinweg konsistent:

  • FSDP auf Systemen der GB200-Klasse kann bereits eine solide Auslastung im hohen Zehnerbereich erreichen bei einer vergleichsweise einfachen Konfiguration
  • B200-FSDP-Läufe sind realisierbar, reagieren jedoch empfindlicher auf die Wahl der Neuberechnung und festgelegte Vision-Einstellungen
  • 3D-Parallel kann einen ähnlichen oder besseren Betriebspunkt erreichen, jedoch erst nach gemeinsamer Feinabstimmung von MBS, Neuberechnung und dem tatsächlichen Vision-Pfad

Echte Daten vs. Scheindaten

VLM-Läufe mit Scheindaten sind keine verlässlichen Leistungsindikatoren. In den Experimenten schienen bildfreie Scheindaten-Läufe im Vergleich zu echten multimodalen Eingaben eher „etwa doppelt so schnell“ als „leicht optimistisch“ zu sein.

Verwenden Sie echte oder realistische Bilddaten, bevor Sie Schlussfolgerungen zum VLM- Durchsatz ziehen.

Kleinere multimodale MoE-Läufe

Die kleineren multimodalen Experimente im Stil von Qwen3.5 bestätigen dieselben Erkenntnisse:

  • HybridEP ist eine solide Standardeinstellung auf GB200
  • TE-optimierte CUDA-Graphen helfen, sobald die Trainingsschleife stabil ist
  • Größere MBS können sich auszahlen, jedoch nur, wenn der Vision-Encoder nicht zum nächsten Engpass wird

Entscheidungshilfe

Wählen Sie FSDP, wenn

  • Sie zum ersten Mal ein neues VLM in Betrieb nehmen
  • das Modell ungünstige Phasengrenzen zwischen Einbettung, Bildverarbeitung und Decoder aufweist
  • die Speicherauslastung wichtiger ist als der absolute Durchsatz
  • Sie den Vision-Stack während der auf den Decoder ausgerichteten Optimierung möglicherweise einfrieren

Wählen Sie „3D-Parallel“, wenn

  • das Modell unter FSDP bereits stabil läuft
  • das PP-Layout klar und wiederholbar ist
  • Sie MBS-Werte durchlaufen, neu berechnen und den CUDA-Graph-Scope gemeinsam betrachten können
  • das Ziel der beste Durchsatz im stationären Zustand ist, nicht die einfachste Inbetriebnahme

Wichtige Einstellmöglichkeiten

  1. Frieren Sie den Vision-Stack bei Bedarf ein: Wenn der Schwerpunkt auf dem Decoder liegt, führt das Einfrieren der Vision-Seite oft zu einem kleinen, aber realen Durchsatzgewinn und verringert den Speicherbedarf.

  2. Führen Sie einen aggressiven MBS-Sweep durch: VLMs reagieren empfindlicher auf MBS-Änderungen als reine Text-MoE-Läufe, da der Vision-Pfad das Verhältnis von Rechenleistung zu Overhead verändert.

  3. Bevorzugen Sie selektive Neuberechnung, sobald das Modell passt: Eine vollständige Neuberechnung ist ein nützliches Tool für die Inbetriebnahme, aber selektive Neuberechnung ist in der Regel der bessere Steady-State.

  4. Passen Sie den Umfang des CUDA-Graphs an die Arbeitslast an: „attn moe_router moe_preprocess“ ist die sicherere MoE-Standardeinstellung, während engere Umfänge für kontrollierte Experimente dennoch nützlich sein können.

  5. Verwenden Sie ETP nur, wenn EP allein nicht ausreicht: Es kann ein Layout freischalten, führt aber auch zu mehr Kommunikation und einem größeren Optimierungsspielraum.

Repräsentative Konfigurationsfamilien

FSDP-first GB200-Pfad

TP=1  CP=1  PP=1
EP an die Expertentopologie angepasst, oft groß
Dispatcher: HybridEP auf Systemen der GB200-Klasse
Neuberechnung: zunächst vollständig, dann Übergang zur selektiven Neuberechnung

3D-paralleler GB200-Pfad

TP=1  CP=1  PP=1 oder moderates PP
EP und ETP auf die Expertentopologie ausgelegt
Dispatcher: HybridEP
CUDA-Graph: zunächst schmal, erst nach Stabilisierung des Echtdatenpfads erweitern

Kompatibilität

Funktion FSDP 3D-parallel
HybridEP auf GB200 starke Standardeinstellung starke Standardeinstellung, sobald die Topologie stabil ist
CUDA-Diagramme nützlich nach dem Bring-up nützlich, aber stärker vom Anwendungsbereich abhängig
Freeze-Vision passt gut möglich, wird jedoch seltener als primärer Leistungsweg genutzt
Selektive Neuberechnung empfohlen empfohlen

Fallstricke

  1. Simulierte multimodale Daten sind irreführend: Sie können den Decoder viel leistungsfähiger erscheinen lassen als der tatsächliche End-to-End-VLM-Pfad.

  2. Der Vision-Encoder kann unerwartet dominieren: Profilieren Sie Encoder, Projektor und Decoder separat, bevor Sie alles dem Dispatcher zuschreiben.

  3. Vergleichen Sie keine FSDP- und 3D-Parallel-Läufe mit unterschiedlicher effektiver Arbeitslast: normalisierenSie anhand nützlicher Token und der Arbeitslastverteilung, nicht nur anhand der Schrittzeit.

  4. ETP ist nicht kostenlos: Verwenden Sie es als Anpassungs- oder Topologie-Tool, nicht als Standard.

  5. Die Auswahl von „Recompute“ und „CUDA-Graph“ ist gekoppelt: Die Einstellung, mit der das Modell angepasst wird, ist oft nicht die Einstellung, die die beste Geschwindigkeit im stationären Zustand liefert.

Auf GitHub ansehen
---
name: nemo-mbridge-perf-moe-vlm-training
description: Provides practical guidance for training Mixture-of-Experts Vision-Language Models in Megatron Bridge, comparing FSDP and 3D-parallel approaches with lessons from recent multimodal experiments.
license: Apache-2.0
---

# MoE VLM Training

Stable docs: @docs/training/moe-optimization.md
Card: @skills/nemo-mbridge-perf-moe-vlm-training/card.yaml

## FSDP vs 3D Parallel

| Approach | Strength | Best fit |
|---|---|---|
| FSDP | Simplest path to a working multimodal run | first bring-up, memory-first tuning, awkward PP boundaries |
| 3D parallel | Higher ceiling after tuning | stable models with a clean PP layout and time for deeper sweeps |

For MoE VLMs, the practical workflow is usually:

1. get the first reliable run with FSDP
2. stabilize real-data input, recompute, and memory behavior
3. move to 3D parallel only if the throughput headroom is worth the extra work

## Rounded Findings From Recent VLM Runs

### Qwen3-VL class models

The main patterns were consistent across the tracker:

- FSDP on GB200-class systems can already reach healthy high-teens utilization
  with a comparatively simple setup
- B200 FSDP runs are viable, but more sensitive to recompute choice and frozen
  vision settings
- 3D parallel can recover to a similar or better operating point, but only after
  tuning MBS, recompute, and the real vision path together

### Real data vs mock data

Mock-data VLM runs are not trustworthy performance proxies. In the experiments,
image-free mock runs looked closer to "roughly twice as fast" than "slightly
optimistic" when compared with real multimodal input.

Use real or realistic image payloads before drawing any conclusion about VLM
throughput.

### Smaller multimodal MoE runs

The smaller Qwen3.5-style multimodal experiments reinforce the same lessons:

- HybridEP is a solid default on GB200
- TE-scoped CUDA graphs help once the training loop is stable
- larger MBS can pay off, but only if the vision encoder does not become the
  next bottleneck

## Decision Guide

### Choose FSDP when

- you are bringing up a new VLM for the first time
- the model has awkward stage boundaries across embedding, vision, and decoder
- memory fit matters more than absolute throughput
- you may freeze the vision stack during decoder-focused tuning

### Choose 3D parallel when

- the model is already stable under FSDP
- the PP layout is clear and repeatable
- you can sweep MBS, recompute, and CUDA-graph scope together
- the goal is best steady-state throughput, not easiest bring-up

## Key Tuning Knobs

1. **Freeze the vision stack when appropriate**: if the work is decoder-focused,
   freezing the vision side often gives a small but real throughput gain and
   reduces memory pressure.

2. **Sweep MBS aggressively**: VLMs are more MBS-sensitive than text-only MoE
   runs because the vision path changes the compute-to-overhead balance.

3. **Prefer selective recompute once the model fits**: full recompute is a
   useful bring-up tool, but selective recompute is usually the better steady
   state.

4. **Match CUDA-graph scope to the workload**: `attn moe_router moe_preprocess`
   is the safer MoE default, while narrower scopes can still be useful for
   controlled experiments.

5. **Use ETP only when EP alone is insufficient**: it can unlock a layout, but
   it also introduces more communication and more tuning surface.

## Representative Config Families

### FSDP-first GB200 path

```text
TP=1  CP=1  PP=1
EP sized to the expert topology, often large
Dispatcher: HybridEP on GB200-class systems
Recompute: start with full, then relax toward selective recompute
```

### 3D-parallel GB200 path

```text
TP=1  CP=1  PP=1 or modest PP
EP and ETP sized to the expert topology
Dispatcher: HybridEP
CUDA Graph: start narrow, then widen only after the real-data path is stable
```

## Compatibility

| Feature | FSDP | 3D parallel |
|---|---|---|
| HybridEP on GB200 | strong default | strong default once topology is stable |
| CUDA graphs | useful after bring-up | useful, but more scope-sensitive |
| Freeze vision | natural fit | possible, but less often used as the headline perf path |
| Selective recompute | recommended | recommended |

## Pitfalls

1. **Mock multimodal data is misleading**: it can make the decoder look much
   healthier than the real end-to-end VLM path.

2. **The vision encoder can dominate unexpectedly**: profile encoder, projector,
   and decoder separately before attributing everything to the dispatcher.

3. **Do not compare FSDP and 3D-parallel runs with different effective work**:
   normalize by useful tokens and workload shape, not only by step time.

4. **ETP is not free**: use it as a fit or topology tool, not as the default.

5. **Recompute and CUDA-graph choices are coupled**: the setting that gets the
   model to fit is often not the setting that gives the best steady-state speed.

Alle Dateien

1 Dateien

nemo-mbridge-perf-moe-vlm-training installieren

Laden Sie die Skill-Dateien herunter und entpacken Sie sie in Ihr Verzeichnis „.claude/skills/“.

ZIP herunterladen

Klonen Sie das Repository und kopieren Sie die Skill-Dateien in Ihr Projekt.

git clone https://github.com/NVIDIA/skills/tree/main/skills/nemo-mbridge-perf-moe-vlm-training # Copy SKILL.md to your .claude/skills/ directory

Kopieren Kopieren
Schnelle Einrichtung: Kopiere den Skill-Ordner nach .claude/skills/ Claude erkennt den Skill automatisch und nutzt ihn.
Repository NVIDIA/skills

Ähnliche Skills

web-search
Zeit aktualisiert 29. Juni 2026
webapp-testing
Zeit aktualisiert 29. Juni 2026
lark-base
Zeit aktualisiert 5. Juli 2026
agentmail
Zeit aktualisiert 29. Juni 2026
OR