Silently slower attention kernel when training MiniMax-H3 LoRA on B200

Aperta
#1,687 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
55/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
python

Direzione di ricerca

Inizia con examples/minimax_h3/model_training/lora/MiniMax-H3-FL2VA.sh allo stage 2, il README di installazione e l'esperimento documentato in #1680. Riproduci la scelta dell'implementazione dell'attention con DIFFSYNTH_ATTENTION_IMPLEMENTATION=torch e ispeziona il percorso esistente di logging o selezione. Il lavoro è completato quando l'implementazione selezionata è visibile agli utenti oppure le istruzioni di installazione impediscono chiaramente il rallentamento silenzioso.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

I ran the repo's MiniMax-H3 LoRA training example (examples/minimax_h3/model_training/lora/MiniMax-H3-FL2VA.sh, stage 2) on 8x B200, following the installation README, and got 6.32 s per training step. A profile showed attention running on the FA2 kernel, which is an sm80-era design and much slower on this GPU than torch SDPA's cuDNN backend. With the kernel switched, the same step took 3.80 s. Nothing in the logs said which implementation had been picked, so I only found it by profiling.

Setting DIFFSYNTH_ATTENTION_IMPLEMENTATION=torch avoids this, as @mi804 noted in #1680. A line in the install docs, or a one-line log of the chosen implementation at import, would have saved me the profile.

I opened #1680 to record my experiment: setup, measurements, traces and some potential fixes. A different fix may also well suit the codebase.

Lingua principale
Python
Stelle
13.1k
Fork
1.3k
Merge medio
13h 12m
PR unite (30g)
45

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di modelscope/DiffSynth-Studio

Tutte le issue di modelscope/DiffSynth-Studio

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.