Vai al contenuto
AI.info

Ricerca

RayOrch: programmazione ed esecuzione di flussi di dati multigranulari con controllo delle relazioni di derivazione per la preparazione dei dati dei modelli fondazionali

La preparazione di dati di addestramento di alta qualità per i modelli fondazionali richiede pipeline scalabili che trasformino documenti e video eterogenei in record strutturati. Queste pipeline espa

RayOrch: programmazione ed esecuzione di flussi di dati multigranulari con controllo delle relazioni di derivazione per la preparazione dei dati dei modelli fondazionali
arXiv
2609.18703
Pubblicato
2026-09-16
Autori
Xiaochen Ma, Zimo Meng, Junzhu Liang, Youhe Jiang, Yue Cheng, Hao Liang, Bohan Zeng, Dengchun Li, Lu Ma, Zhengyang Zhao, Zhen Hao Wong, Runming He, Meiyi Qiang, Jiangtao Guan, Binhang Yuan, Wentao Zhang

Abstract degli autori

La preparazione di dati di addestramento di alta qualità per i modelli fondazionali richiede pipeline scalabili che trasformino documenti e video eterogenei in record strutturati. Queste pipeline espandono ogni elemento padre in una sequenza ordinata di elementi figli che dipende dall’input e il cui numero può seguire una distribuzione a coda lunga. Le GPU devono elaborare in batch figli di padri diversi, preservando le relazioni con i padri, l’ordine dei figli, lo stato di completamento e l’instradamento dei risultati. I sistemi esistenti nascondono il parallelismo dietro attività a granularità grossolana oppure espongono record piatti, costringendo le applicazioni a gestire le relazioni di derivazione e il raggruppamento. Presentiamo RayOrch, un modello di programmazione e un motore di esecuzione distribuito che preserva le relazioni tra padri e figli durante tutta l’esecuzione. I programmi dichiarano espansioni ordinate con un numero variabile di figli e le corrispondenti operazioni di raccolta. Il compilatore convalida ogni coppia, mentre il sistema di esecuzione registra l’appartenenza dei figli, i padri immediati, le posizioni ordinali immutabili e gli stati terminali. Le code FIFO degli elementi pronti per ciascuna chiamata raggruppano in batch figli pronti di padri diversi. Le operazioni di raccolta ricostruiscono i risultati in base all’appartenenza dichiarata e alle posizioni ordinali, anziché ai confini dei batch o all’ordine di completamento. Gli elementi padre possono avanzare non appena tutti i figli richiesti raggiungono uno stato terminale. Gli errori tipizzati circoscritti a un elemento padre impediscono l’invio dei suoi figli non ancora inviati, lasciando proseguire gli elementi padre non coinvolti. Su GPU NVIDIA H20, RayOrch ottiene un’accelerazione di 15,14 volte passando da 4 a 64 GPU con MinerU e di 7,82 volte passando da 8 a 64 GPU con una pipeline video. Riduce il tempo totale del 13,1% rispetto a Ray Data e del 29,0% rispetto a Daft con MinerU, e del 16,0% rispetto a Ray Data con Docling. Il codice è disponibile all’indirizzo https://github.com/OpenDCAI/RayOrch .

Leggi il paper originale su arXiv