Let preparation peers read their own checkpoint copy (multi-host load 252 s -> 45-50 s on GB10)
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 25/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- python
- Ambito
- distributed-systems
Direzione di ricerca
Start by reading the multi-host preparation and checkpoint admission paths, then trace how rank zero sends the catalog and metadata to peers. The proposed change adds local hub-cache resolution, file identity checks, and require/prefer fallback behavior; done means the option behaves as described and the reported three-host load and inference results can be reproduced.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Problem
In multi-host preparation, every peer streams all of its checkpoint ranges from rank zero through its loopback relay, even when each host already holds the same Hugging Face snapshot. On three DGX Spark GB10 hosts (DeepSeek V4.1 Flash, TP3), a peer loads at about 430 MB/s that way:
| Rank zero (local NVMe) | Peers (streamed from rank zero) | |
|---|---|---|
| Load weights | ~46 s | 252 s |
| "Allocate model state and collectives" on rank zero (waits for the peers) | 190 s |
The peers' own NVMe drives read at 5.0–5.7 GB/s with O_DIRECT dd.
Proposal
Add an opt-in ignition join --local-checkpoint [require|prefer]. Without the flag, behaviour is unchanged.
- Resolving the checkpoint. The peer looks up rank zero's checkpoint in its own hub cache, with the same repository and revision. For a directory checkpoint, it uses the same absolute path.
- Admission. Admission still receives rank zero's catalog and metadata over the authenticated channel. A safetensors file is read locally only if its size and header digest match rank zero's. Every other file still comes from rank zero.
- Modes.
require(the default) fails the join on any missing or different tensor file.preferrequests those files from rank zero and reads the rest locally. - Reads. Admitted files go to b12x's native batch reader, through O_DIRECT descriptors private to the session, as rank zero reads its own files. The file identity is checked before and after every batch.
Measured (three GB10 hosts, TP3, page cache dropped)
main |
--local-checkpoint |
|
|---|---|---|
| Load weights on the peers | 252 s | 44.7–50.1 s |
| "Allocate model state and collectives" on rank zero | 190 s | 1.7–5.1 s |
A package exported with this path serves correctly with flare run: 262k-token retrieval 16/16, decode at 43.0 tok/s with one stream and 91.8 tok/s aggregate with four.
Limitation
Beyond the header digests, the tensor payload bytes are trusted to be the same revision: the hub cache stores them by content hash. They are not hashed against rank zero's copy.
Branch
javieratomic:local-checkpoint has two commits on top of a161b17f. Because this changes multi-host preparation scope, I would like a maintainer decision before opening a PR.
- Lingua principale
- Rust
- Stelle
- 800
- Fork
- 106
- Merge medio
- 1g 3h
- PR unite (30g)
- 100
Preparare l'ambiente
- Include un Dockerfile o un file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di NVIDIA/hyperflare-inference
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
NVIDIA/hyperflare-inference#268 ·
I maintainer di solito rispondono entro 1 giorno
-
break out engram wait timeApertaarea:caching area:engram enhancement performance triage:design-review
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
NVIDIA/hyperflare-inference#230 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 15/100
NVIDIA/hyperflare-inference#278 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 25/100
NVIDIA/hyperflare-inference#276 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
NVIDIA/hyperflare-inference#271 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di NVIDIA/hyperflare-inference
Issue simili
-
bug UI
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
wardian-app/Wardian#1746 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
jlcodes99/cockpit-tools#3125 ·
I maintainer di solito rispondono entro 2 giorni
-
bug user-sprint
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
Vondor/KassenSturz#967 ·
I maintainer di solito rispondono entro 1 giorno
-
area/ci
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 62/100
I maintainer di solito rispondono entro 1 giorno
-
[BUG] Incremental sync warns "no stored highest_uid" on every round for folders with no new mailApertabug
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
rustmailer/bichon#411 ·