WorldPager prolunga le sessioni dei world model entro i limiti di memoria
WorldPager: Zero-Stall Tiered Memory for Long-Horizon World Models on a Single Consumer GPU · arXiv:2610.35529
In parole semplici
I modelli interattivi del mondo conservano informazioni dai video precedenti, così un luogo può apparire familiare quando la telecamera ci torna. Questa memoria può riempire la memoria host del computer, anche quando l'unità sarebbe abbastanza veloce da trasferirla tra un segmento e l'altro.
WorldPager è un software che distribuisce questa memoria tra la memoria della GPU, la memoria host e un SSD, preparandola prima che serva. In una sessione MG2 di 3,000 segmenti, ha generato 37.5 minuti di video senza superare il budget di memoria host di 32 GiB.
Si è trattato di una sola configurazione e la generazione è stata più lenta della riproduzione in tempo reale.
La ricerca
Un modello interattivo del mondo deve conservare i segmenti precedenti affinché i luoghi restino coerenti quando vengono rivisitati. Ma su un singolo computer consumer, la memoria che si accumula può esaurire quella host, mentre il limite posizionale del modello può interrompere la generazione anche se la memoria non è ancora piena. Un sistema può mantenere attiva una sessione entro questi limiti?
WorldPager distribuisce la memoria recuperata del modello tra GPU, memoria host e NVMe, preparandola in anticipo per prolungare le sessioni su un singolo computer.
Come può un modello interattivo del mondo continuare a generare quando la memoria riempie la RAM host e la tabella posizionale impone un altro limite?
Sulla macchina testata, la memoria host di MG2 conteneva 45 secondi di memoria in bf16 o 2.8 minuti in int4, mentre la tabella posizionale originale interrompeva la generazione dopo circa 4.3 minuti.
WorldPager prepara la memoria recuperata da NVMe mentre viene generato il segmento precedente. Quando tutti i blocchi recuperati sono stati fatti arrivare da NVMe, su una traiettoria MG2 la sua attesa mediana è rimasta pari a zero fino a 0.25 GB/s, mentre il caricamento su richiesta ha causato attese a tutte le larghezze di banda testate.
Con il sistema completo attivo, una sessione ha generato 37.5 minuti di video entro il budget di memoria host di 32 GiB.
Il risultato di 37.5 minuti proviene da una sola sessione su una RTX 4090, con un budget di memoria host di 32 GiB e un'unità NVMe. La generazione è rimasta sotto la velocità di riproduzione di 16 fotogrammi al secondo e, durante quella sessione, non è stata riletta memoria già scritta su NVMe; test separati hanno misurato quelle letture.
Sui ritorni dopo intervalli lunghi, anche l'archiviazione int4 ha ridotto i punteggi di qualità dell'immagine.
Cosa mostrano le prove
- Due limiti alle sessioni
I modelli interattivi del mondo possono recuperare informazioni da segmenti video precedenti per mantenere coerenti i luoghi quando vengono rivisitati. Sulla macchina testata, Matrix-Game 2.0 (MG2) ha incontrato due limiti distinti: la memoria host conteneva 45 secondi di memoria recuperata in bf16 o 2.8 minuti in int4, mentre la tabella posizionale originale interrompeva la generazione dopo circa 4.3 minuti, indipendentemente dalla capacità di memoria. La domanda è come prolungare una sessione rispettando entrambi i vincoli.
- Un runtime gestisce la memoria
WorldPager è un runtime per la memoria dei modelli interattivi del mondo. Gestisce dove risiedono le chiavi e i valori recuperati dai segmenti precedenti: nella memoria della GPU, nella memoria dinamica ad accesso casuale (DRAM) dell'host o in un'unità NVMe.
È la regola di recupero del modello a scegliere quali segmenti passati usare; WorldPager gestisce dove vengono conservati e quando vengono spostati. Durante l'inference gestisce anche le posizioni, per estendere la generazione oltre l'orizzonte posizionale originale di MG2.
- I trasferimenti rientrano nel tempo di calcolo
Il progetto dipende dal fatto che lo spostamento della memoria ritardi o meno la generazione dei segmenti. Il calcolo di un segmento MG2 richiedeva circa 1.2 secondi e, in un test con calcolo reale, i trasferimenti a doppio buffer non hanno causato ritardi misurabili per dati fino a 1.46 GB.
Questo sostiene la diagnosi dei ricercatori: nel carico di lavoro testato, la capacità totale della memoria si esaurisce prima che la larghezza di banda del trasferimento diventi il fattore limitante.
- Il prefetching ha una soglia
Per verificare se preparare in anticipo la memoria recuperata fosse utile, i ricercatori hanno fatto arrivare da NVMe tutti i blocchi recuperati e hanno confrontato WorldPager con il caricamento su richiesta, che copia i blocchi all'avvio del segmento successivo.
Sulla traiettoria a_yaw, l'attesa mediana di WorldPager è rimasta pari a zero fino a una larghezza di banda di lettura di 0.25 GB/s, mentre il caricamento su richiesta ha causato attese a tutte le larghezze di banda testate.
Sotto la soglia, il prefetching poteva causare attese e i tempi massimi potevano superare quelli del confronto su b1_ws.
- Una sessione lunga, con compromessi
Con il sistema completo attivo, una sessione MG2 ha generato 37.5 minuti di video restando entro il budget di memoria host di 32 GiB. Il risultato dimostra una generazione continua nella configurazione testata, non la riproduzione in tempo reale né la lettura di segmenti trasferiti in precedenza.
Confronti separati hanno rilevato che l'archiviazione int4 manteneva la coerenza nei ritorni a lungo intervallo esaminati, ma aveva punteggi di qualità dell'immagine più bassi; un secondo modello ha fornito soltanto misurazioni di sistema.
Dettagli
- Autori del paper originale
- Bingnan Liu, Ruini Xue
- Inviato ad arXiv
- Licenza
- arXiv non-exclusive