Abilitazione di cluster di dati più equi per l’apprendimento automatico

Abilitazione di cluster di dati più equi per l'apprendimento automatico
Credito: Google

La ricerca pubblicata di recente dai ricercatori di CSE può rendere i modelli di apprendimento automatico (ML) di formazione più equi e veloci. Con uno strumento chiamato AlloX, il Prof. Mosharaf Chowdhury e un team della Stony Brook University hanno sviluppato un nuovo modo per programmare in modo sufficientemente elevato volumi elevati di processi ML nei data center che utilizzano diversi tipi di hardware di elaborazione, come CPU, GPU e acceleratori. Man mano che questi cosiddetti cluster eterogenei diventano la norma, i sistemi di pianificazione equa come AlloX diventeranno essenziali per il loro funzionamento efficiente.

Questo progetto è un nuovo passo per il laboratorio di Chowdhury, che ha recentemente pubblicato una serie di strumenti volti ad accelerare il processo di formazione e test dei modelli ML. I loro progetti passati Tiresias e Salus hanno accelerato la condivisione delle risorse GPU su più scale: sia all’interno di una singola GPU (Salus) che su più GPU in un cluster (Tiresias).

Ma AlloX affronta cluster eterogenei, che portano un nuovo problema: hardware diverso è il migliore per diversi tipi di attività di elaborazione. Mentre c’era sempre una varietà nelle aspettative che i diversi lavori avevano dal cluster di dati, ora c’è anche una differenza in quale hardware diverso è il migliore per un determinato lavoro.

Un certo numero di tipi diversi di hardware possono essere in grado di eseguire un dato modello, ma può avere velocità molto diverse su ciascuno a seconda delle sue caratteristiche di calcolo. Se richiede molta esecuzione sequenziale, una GPU non sarebbe adatta, ma se si basa molto sulla moltiplicazione di matrici, una CPU non funzionerebbe molto bene. E con nuovi acceleratori costantemente in fase di sviluppo, diverse operazioni comuni trovano sempre opzioni migliori per un’esecuzione rapida.

“Ogni carico di lavoro ha caratteristiche uniche che consentono a un acceleratore unico di brillare”, afferma Chowdhury, “ed è per questo che i ricercatori di architettura stanno costruendo così tanti nuovi acceleratori”.

Questo hardware non corrispondente solleva un nuovo aspetto della questione dell’equità del cluster di dati. Con un volume elevato e costante di lavori, i programmatori devono cercare non solo il miglior tempo di esecuzione medio per mantenere il centro in movimento, ma anche il programma che non riempie arbitrariamente alcuni lavori alla ricerca delle prestazioni complessive. Allo stato attuale, secondo Chowdhury, la distribuzione della potenza di calcolo porta a risultati di prestazioni ampiamente diversi per i diversi utenti individuali.

“Se il cluster non è equo, alcune persone saranno penalizzate troppo e il loro tempo di calcolo aumenterà arbitrariamente”, afferma.

Abilitazione di cluster di dati più equi per l'apprendimento automatico
Il sistema AlloX ha tre componenti principali: uno stimatore, uno scheduler e un placer, che insieme determinano quale hardware serve meglio per un lavoro e quindi come adattarlo in modo più equo a ciò che è attualmente disponibile. Credito: Università del Michigan

Nel contesto di cluster eterogenei con più tipi di hardware di calcolo, la matematica coinvolta nell’affrontare le richieste ottimali di ogni lavoro diventa più complessa.

Nella loro soluzione, i ricercatori hanno riformulato il problema come un problema di corrispondenza bipartito, in cui i vertici di un grafo possono essere divisi in due insiemi indipendenti in modo che ogni arco colleghi un vertice in uno a un vertice nell’altro. I due set sono diventati i lavori da un lato e l’elenco totale delle risorse informatiche disponibili dall’altro. Hanno implementato questo scheduler su Kubernetes, un cluster manager ampiamente utilizzato, con un cluster ibrido CPU-GPU su piccola scala e simulazioni su larga scala.

I loro risultati hanno rivelato che AlloX potrebbe ridurre il tempo medio di completamento del lavoro fino al 95% quando il carico del sistema è elevato, fornendo allo stesso tempo equità e prevenendo la fame di lavoro. Queste prestazioni corrispondono o migliorano rispetto alle precedenti implementazioni che si concentrano esclusivamente sul runtime medio del lavoro, senza tentare di fornire equità.

Chowdhury ha affrontato i tempi di esecuzione medi con il precedente sistema del suo gruppo, chiamato Tiresias. Questo pianificatore è stato progettato per ridurre al minimo il tempo medio di completamento del lavoro, tenendo conto di una serie di vincoli, ma non tiene conto del problema dell’equità. Ma nel loro articolo su AlloX, i ricercatori dimostrano che questa media veloce può essere raggiunta anche affrontando le questioni dell’uso equo delle risorse.

“Dimostriamo che puoi essere corretto e la tua media rimarrà comunque vicina alla media ottimizzata”, spiega Chowdhury. “Sta ridistribuendo le risorse nel cluster. Il tempo medio di completamento del lavoro migliorerà, perché coloro che hanno sofferto in modo più significativo vedranno un miglioramento significativo”.

AlloX, insieme ad altri progetti recenti come Salus (pubblicato di recente alla conferenza MLSys), è uno degli ultimi contributi del gruppo di Chowdhury al frenetico campo della gestione delle risorse dell’IA. L’obiettivo finale del laboratorio in quest’area è ottimizzare ogni fase del processo di ottimizzazione, addestramento, test e inferenza dell’iperparametro del modello.

“L’intero ciclo di vita dell’IA o del ML, le diverse fasi che devono attraversare, vogliamo sapere come gestire al meglio ogni fase dal punto di vista della gestione delle risorse”, afferma Chowdhury.

AlloX è stato presentato nel documento “AlloX: Compute Allocation in Hybrid Clusters” alla conferenza EuroSys 2020.


Leave a Reply