La gestione delle quote di AWS Batch consente ai team di condividere GPU e recuperare le proprie allocazioni
La gestione delle quote di AWS Batch consente ai team di prestare capacità di training inattiva, mantenendo la possibilità di recuperarla dai carichi di lavoro che l’hanno presa in prestito. Questa funzionalità collega le allocazioni di risorse alle decisioni di pianificazione per Amazon SageMaker Training, il servizio gestito di AWS per l’addestramento di modelli di machine learning. Il compromesso centrale è semplice: i team possono utilizzare la capacità inutilizzata di altri, ma i loro job devono poter tollerare la perdita di accesso quando il proprietario la richiede nuovamente.
La guida pubblicata da AWS il 29 ottobre illustra questo compromesso attraverso diverse politiche per i carichi di lavoro. La funzionalità stessa è stata lanciata il 25 marzo 2026, secondo l’annuncio sulla gestione delle quote dell’azienda. La distinzione è importante: lo sviluppo di questa settimana è un esempio operativo dettagliato di una funzionalità esistente, non il suo rilascio iniziale.
Gli approcci in competizione sono familiari ai team infrastrutturali: proteggere le allocazioni mediante una separazione rigida, oppure mettere in comune le risorse e negoziare l’accesso quando la domanda entra in conflitto. AWS inserisce queste negoziazioni nella politica di pianificazione. Ciò sposta la pressione verso gli amministratori della piattaforma e i responsabili del training, che devono decidere quali esperimenti meritano un accesso prevedibile e quali possono accettare interruzioni.
La gestione delle quote di AWS Batch trasforma le allocazioni in regole di pianificazione
Il cambiamento consiste nel collegamento tra l’allocazione di un team e il suo diritto a recuperare capacità presa in prestito da altri team.
Una quota condivisa, una coda virtuale con limiti di capacità e regole di condivisione, rappresenta un team, un progetto o un raggruppamento di carichi di lavoro. Gli amministratori collegano queste quote a una coda di job, il contenitore del lavoro inviato. AWS documenta un massimo di 20 quote per coda, con fino a cinque limiti di capacità per quota.
Questi limiti utilizzano tipi di istanza di training supportati, ossia configurazioni hardware specifiche, anziché un pool indifferenziato di GPU intercambiabili. Le politiche delle quote condivise di AWS offrono tre opzioni. RESERVE mantiene la capacità inattiva per la propria quota. LEND permette ad altri di utilizzare la capacità inattiva. LEND_AND_BORROW consente sia di prestare sia di prendere in prestito, nel rispetto di un limite di prestito configurato.
Si tratta di un sistema di allocazione con regole esplicite sull’accesso temporaneo. Il diritto di un team e il suo consumo corrente non devono più coincidere in ogni momento. La capacità inutilizzata può servire altro lavoro senza modificare permanentemente l’allocazione sottostante.
Questa distinzione rende più semplice ragionare sull’infrastruttura condivisa. Un’allocazione risponde a chi detiene un diritto quando la domanda ritorna. Il consumo risponde a chi sta utilizzando le risorse ora. Considerare queste come domande separate offre agli amministratori un modo per consentire flessibilità senza rinunciare alla titolarità.
Si consideri un ipotetico team di piattaforma che divide l’accesso al training tra gruppi di ricerca. Una partizione fissa protegge ogni gruppo dalla concorrenza, ma può lasciare risorse inutilizzate. Un pool senza restrizioni migliora l’accesso nei periodi tranquilli, ma lascia al team di piattaforma il compito di spiegare perché una risorsa allocata non è disponibile.
Le politiche di quota creano una posizione intermedia. Il prestito diventa accesso condizionato con un meccanismo di recupero stabilito. L’accordo richiede comunque un’intesa sulle allocazioni, ma gli amministratori possono codificarla prima che sorga una controversia sulla pianificazione.
AWS documenta questa funzionalità per le code SageMaker Training collegate a un ambiente di servizio SAGEMAKER_TRAINING, la configurazione Batch associata all’esecuzione di training gestito. I lettori non dovrebbero interpretarla come una funzionalità generale di condivisione delle risorse per ogni carico di lavoro AWS Batch.
L’ambito è importante nella valutazione di una migrazione. Un team che invia già job SageMaker affronta una decisione operativa diversa rispetto a uno che gestisce il training tramite un altro sistema di esecuzione. La politica di pianificazione appartiene a quel flusso di lavoro più ampio.
La domanda pratica è quindi più specifica della semplice disponibilità della condivisione. È se l’organizzazione possa esprimere i propri impegni esistenti attraverso queste quote senza creare aspettative fuorvianti sull’accesso garantito.
I team di piattaforma devono definire che cosa promette realmente un’allocazione
Il prestito automatico riduce il coordinamento della pianificazione solo dopo che i team hanno concordato le condizioni associate alla capacità presa in prestito.
La pressione immediata ricade sui team di piattaforma responsabili dell’infrastruttura di training condivisa. Il loro ruolo va oltre l’assegnazione degli accessi. Devono distinguere un’allocazione duratura dall’autorizzazione temporanea a consumare risorse inutilizzate.
Questa distinzione può sembrare amministrativa finché non arriva una scadenza. Un team che prende in prestito potrebbe considerare un training completato con successo come prova che la capacità è disponibile. Il team che presta potrebbe considerare le stesse risorse parte di un’allocazione che si aspetta di recuperare.
Entrambe le interpretazioni sono comprensibili. Senza una politica esplicita, il disaccordo diventa personale: qualcuno deve decidere quale esperimento interrompere. Con una politica esplicita, il disaccordo si sposta prima, nell’accordo di allocazione.
È qui che la condivisione della capacità GPU diventa una questione organizzativa. Lo scheduler può applicare le regole in modo coerente, ma la coerenza non stabilisce se tali regole rispecchino le priorità aziendali. Gli amministratori hanno comunque bisogno di una spiegazione difendibile per il trattamento di ogni quota.
Il lavoro di ricerca offre un utile contrasto ipotetico. Gli esperimenti esplorativi hanno spesso finestre di completamento flessibili, mentre un training legato a una scadenza di valutazione ha meno margine di attesa. Queste differenze possono giustificare politiche di condivisione diverse senza implicare che il lavoro di un team abbia minor valore.
I casi difficili emergono all’interno di un team. Un singolo gruppo può gestire esperimenti esplorativi, preparazione al rilascio e indagini urgenti. Assegnare un’unica politica all’intero gruppo rischia di trattare carichi di lavoro diversi come se avessero costi di interruzione identici.
Organizzare le quote per progetto o carico di lavoro può aiutare a esprimere queste differenze. Crea però anche più confini di politica da mantenere. Il raggruppamento corretto dipende dall’affidabilità con cui gli utenti riescono a classificare il lavoro prima dell’invio.
La priorità introduce un altro problema di governance. Se gli utenti possono aumentare l’urgenza di un job ogni volta che si avvicina una scadenza, i valori di priorità possono perdere significato. Ogni team ha un incentivo a proteggere il proprio tempo di completamento.
La risposta dovrebbe essere operativamente concreta. I team necessitano di definizioni condivise dell’urgenza, di un responsabile per le eccezioni e di un metodo per rivedere le modifiche. In caso contrario, la pianificazione automatizzata può riprodurre la stessa negoziazione attraverso modifiche della configurazione.
Per esempio, un’organizzazione potrebbe distinguere un obiettivo sperimentale mancato da una decisione di rilascio bloccata. Si tratta di una scelta di politica illustrativa, non di una classificazione AWS integrata. Il suo valore sta nel rendere comprensibili le conseguenze prima che la capacità diventi contesa.
La documentazione sostiene questo accordo. I team di ingegneria possono conservare decisioni di allocazione, ipotesi di recupero ed eccezioni in una base di conoscenza ricercabile. Il registro utile spiega perché una politica esiste e chi può modificarla.
Questo lavoro non scompare quando uno scheduler assume il controllo dell’applicazione delle regole. Diventa più visibile. Un accordo di prestito che prima viveva in messaggi o riunioni deve ora confrontarsi con il comportamento reale dei carichi di lavoro.
È anche per questo che un’implementazione dovrebbe iniziare dalle caratteristiche dei carichi di lavoro, anziché soltanto dai nomi dei team. Tolleranza alle interruzioni, comportamento di recupero e sensibilità alle scadenze forniscono una base più solida per la politica rispetto agli organigrammi.
La capacità presa in prestito comporta un contratto di interruzione
L’esempio di AWS considera la tolleranza alle interruzioni come un motivo per scegliere una politica di condivisione, anziché come un ripensamento.
La guida di ottobre configura tre quote, ciascuna con un’istanza ml.g5.xlarge allocata. La quota per il lavoro in background può prestare e prendere in prestito, con l’interruzione basata sulla priorità abilitata. AWS descrive esplicitamente tali job come utilizzatori di checkpoint, stati di training salvati che supportano il recupero dopo un’interruzione.
La quota a priorità media presta capacità inattiva ma non prende in prestito. I suoi job attendono quando la relativa allocazione è occupata. La quota protetta non presta né prende in prestito e disabilita l’interruzione tra i propri job.
Nell’esempio di quota SageMaker, un nuovo job nella quota che presta induce Batch a recuperare capacità dalla quota che prende in prestito. Separatamente, aumentare la priorità di un job in attesa fa sì che un altro job all’interno della sua quota ceda le risorse.
Si tratta di meccanismi distinti. La preemption tra quote, ossia l’interruzione del lavoro per ripristinare capacità alla quota che l’ha allocata, applica l’accordo di prestito. La preemption all’interno della quota, ossia l’interruzione del lavoro a priorità inferiore in una singola quota, applica le regole interne di urgenza di quella quota.
L’esempio dimostra che politiche diverse possono coesistere nella stessa configurazione complessiva. Non dimostra che ogni carico di lavoro tragga vantaggio dalla configurazione di prestito più permissiva.
Per un esperimento in background, la capacità presa in prestito offre l’opportunità di progredire prima. Il suo proprietario accetta l’incertezza sul completamento. Per un’attività vincolata da una scadenza, evitare tale incertezza può essere più prezioso che ottenere capacità aggiuntiva nei periodi tranquilli.
Questa distinzione cambia il modo in cui i team dovrebbero descrivere il prestito. Si tratta di accesso temporaneo con una possibile interruzione, non di un’estensione dell’allocazione affidabile del team.
Un contratto di interruzione dovrebbe rispondere a diverse domande pratiche. Il carico di lavoro può recuperare? Chi è responsabile dei fallimenti di recupero? Il tempo di completamento previsto presuppone un accesso continuo? Cosa accade quando lo stesso job cede ripetutamente?
Queste domande restano rilevanti anche quando il sistema gestisce l’interruzione e il reinvio del lavoro. L’automazione controlla le transizioni di esecuzione. I proprietari dell’applicazione rimangono responsabili di decidere se il comportamento risultante sia accettabile.
C’è anche una questione di comunicazione. Un job che inizia a essere eseguito crea un’aspettativa di avanzamento. Gli utenti devono comprendere che l’esecuzione su capacità presa in prestito non comporta la stessa aspettativa di continuità dell’esecuzione all’interno della propria allocazione.
Altrimenti, il prestito riuscito può creare un proprio problema di adozione. I team si abituano alla capacità inutilizzata, la incorporano nelle ipotesi di consegna e poi interpretano un recupero legittimo come un guasto del servizio.
La politica deve quindi comparire nel linguaggio di pianificazione, non soltanto nella configurazione. Le previsioni dovrebbero distinguere il lavoro sostenuto dalla capacità allocata da quello accelerato tramite accesso opportunistico.
Ciò non rende meno utile l’esecuzione presa in prestito. Ne rende più semplice la valutazione. I progressi ottenuti durante periodi altrimenti inattivi hanno valore anche quando la loro tempistica è incerta, a condizione che i team non promettano il completamento su tale base.
La lezione più ampia della guida di AWS è che utilizzo e prevedibilità possono ricevere trattamenti diversi a seconda dei carichi di lavoro. Gli amministratori non devono imporre ovunque lo stesso compromesso.
La qualità del recupero determina se la condivisione produce progressi utili
Un pianificatore può riportare un processo interrotto in una coda senza garantire che l'applicazione preservi il lavoro svolto in precedenza.
Il comportamento di preemption dei processi di AWS esplicita la semantica di esecuzione. La preemption interrompe il lavoro negli stati pianificato, in avvio o in esecuzione per fare spazio a un processo eseguibile. Per impostazione predefinita, i processi preempted tornano allo stato eseguibile senza un limite di preemption.
Gli amministratori possono impostare preemptionRetriesBeforeTermination per delimitare tale comportamento. Un valore pari a zero determina il fallimento alla prima preemption. AWS afferma inoltre che la propria euristica di selezione considera le risorse delle istanze prese in prestito, le priorità relative e la durata del processo.
Questi dettagli chiariscono perché l'affermazione “la priorità più alta viene eseguita per prima” richiede delle precisazioni. I requisiti di risorse e l'accordo di condivisione partecipano alle decisioni di pianificazione. La priorità è un input, non una promessa universale che qualsiasi processo urgente inizi immediatamente.
La questione a livello applicativo è il ripristino. Un processo può essere idoneo a essere eseguito nuovamente pur non disponendo ancora dello stato necessario per proseguire in modo efficiente. Accodamento e ripristino risolvono problemi correlati ma distinti.
Il supporto per i checkpoint di addestramento di AWS salva lo stato del modello e sincronizza i file di checkpoint configurati con Amazon S3, il suo servizio di object storage. Il codice di addestramento personalizzato deve salvare e caricare correttamente lo stato pertinente. AWS lascia inoltre il controllo della frequenza dei checkpoint allo script di addestramento.
Ciò significa che una politica di prestito dovrebbe dipendere da un percorso di ripristino dimostrato. La semplice abilitazione di una destinazione di archiviazione non dimostra che una determinata applicazione di addestramento possa ricostruire tutto ciò di cui necessita.
In un esperimento ipotetico, i parametri del modello potrebbero essere solo una parte dello stato richiesto. I responsabili delle applicazioni dovrebbero esaminare il comportamento completo di ripresa previsto dal loro framework. Il test appropriato consiste nel verificare se l'esecuzione interrotta produce progressi accettabili e risultati validi.
La frequenza dei checkpoint aggiunge un ulteriore compromesso. Salvare più spesso può preservare progressi più recenti, ma il salvataggio stesso consuma risorse. L'intervallo utile dipende dal carico di lavoro, non da una preferenza di pianificazione universale.
Queste sono considerazioni ingegneristiche, non prove che la funzionalità di AWS non funzioni. Spiegano perché le affermazioni sull'utilizzo richiedono misurazioni del carico di lavoro. Un'istanza occupata non dimostra automaticamente che sia stato completato più addestramento.
Una valutazione utile dovrebbe includere il calcolo ripetuto, la preparazione al riavvio, il tempo di attesa dopo l'interruzione e il completamento riuscito. Considerare solo le risorse occupate può trascurare il costo necessario per ottenere tale utilizzo.
Il rischio è maggiore quando un team considera ogni carico di lavoro eseguibile come un prestatario ugualmente adatto. Alcuni esperimenti tollerano bene un accesso frammentato. Altri comportano costi di ripristino tali da rendere più pratica l'attesa di un accesso stabile.
Anche le interruzioni ripetute meritano un'attenzione separata. Un processo che riprende ripetutamente può consumare risorse e comunque non rispettare la propria finestra di completamento. Un limite di tentativi offre un controllo, ma scegliere tale limite richiede una risposta operativa quando viene raggiunto.
Qualcuno deve essere responsabile di quella risposta. Il fallimento dovrebbe portare a una decisione chiara sulla riclassificazione, sulla nuova sottomissione o su un diverso accordo di capacità. Altrimenti, una politica di tentativi limitati trasferisce semplicemente l'onere del coordinamento nella gestione degli incidenti.
Anche le politiche protette presentano delle precisazioni. AWS documenta che la riduzione dei limiti di capacità di una quota può rendere il lavoro esistente idoneo alla preemption. Gli amministratori dovrebbero pertanto trattare le modifiche alle allocazioni come modifiche che incidono sull'esecuzione.
L'aspettativa di continuità di un team dipende sia dalla sua politica di condivisione sia dalla stabilità della sua allocazione. La revisione della configurazione è importante perché una modifica alla politica può alterare le condizioni in cui il lavoro in esecuzione rimane protetto.
L'esempio pubblicato da AWS è una dimostrazione operativa, non un benchmark indipendente sui risparmi dei clienti. Fornisce un meccanismo da valutare. Non offre una risposta universale su throughput o tempi di completamento.
Il caso di adozione più solido verrà dai carichi di lavoro il cui comportamento di ripristino è stato misurato in condizioni di contesa realistiche. Queste evidenze collegano la flessibilità di pianificazione a risultati utili, invece di presumere che procedano insieme.
Kueue offre un confronto per l'infrastruttura di addestramento condivisa
AWS racchiude un noto problema di condivisione delle risorse nell'addestramento gestito, mentre gli utenti Kubernetes dispongono di un'altra strada attraverso Kueue.
Kueue, un sistema di accodamento dei carichi di lavoro nativo di Kubernetes, documenta il prestito e la preemption tra code correlate. Le sue politiche di preemption distinguono l'interruzione all'interno di una coda dalla reclamation che coinvolge altre code. Fornisce inoltre approcci diversi per condividere l'accesso alle risorse disponibili per il prestito.
Questo confronto colloca la funzionalità AWS nel suo contesto. L'accesso condizionato ad allocazioni inutilizzate è un approccio di pianificazione consolidato. Lo sviluppo di AWS porta questo approccio nel flusso di lavoro dei team che utilizzano SageMaker Training.
Il confronto rilevante è quindi operativo. Un team già impegnato nell'addestramento gestito valuta quanto bene Batch esprima i propri accordi di allocazione. Un team che utilizza Kubernetes valuta tali accordi insieme ai controller dei carichi di lavoro esistenti e alle responsabilità della piattaforma.
La documentazione di nessuno dei due prodotti stabilisce un vincitore universale. Le evidenze disponibili supportano il confronto tra adeguatezza delle politiche e responsabilità operative, anziché sostenere che un sistema ottenga sempre un utilizzo migliore.
Questo conta perché le organizzazioni possono inquadrare le decisioni di pianificazione in modo troppo ristretto. Il prestito è interessante, ma lo scheduler è solo una parte di un ambiente di addestramento. Strumenti di esecuzione, pratiche di ripristino, controlli di accesso e titolarità del supporto influenzano tutti il risultato.
Per gli utenti SageMaker, integrare l'allocazione delle risorse nel percorso di addestramento esistente può ridurre il numero di sistemi separati che gli amministratori devono coordinare. Se tale vantaggio giustifichi l'adozione dipende dal flusso di lavoro attuale dell'organizzazione.
Per gli utenti Kubernetes, introdurre un percorso di addestramento gestito separato esclusivamente per la condivisione delle quote richiede una valutazione più ampia. Un semplice confronto delle funzionalità non può cogliere le conseguenze del cambiamento degli ambienti di esecuzione.
La questione comune rimane la stessa: la capacità allocata dovrebbe restare utile quando il suo proprietario è inattivo, mentre il proprietario conserva un percorso di ripristino credibile. Entrambi gli approcci richiedono che i team decidano cosa consenta l'accesso temporaneo.
Ciò spiega anche perché una separazione rigida rimanga un confronto legittimo. Un'organizzazione può ragionevolmente accettare risorse inattive quando il rischio di interruzione comporta conseguenze maggiori. L'utilizzo è un obiettivo tra molti.
Viceversa, un'organizzazione con esperimenti flessibili può ragionevolmente dare priorità ai progressi opportunistici. I suoi carichi di lavoro e impegni di consegna sostengono un diverso equilibrio. La politica di pianificazione dovrebbe esprimere tale equilibrio, anziché imporre un obiettivo astratto di utilizzo.
La condivisione della capacità GPU è più persuasiva quando sostituisce un onere di coordinamento esistente con una politica che le persone comprendono. È meno persuasiva quando l'organizzazione non riesce a spiegare quale lavoro debba cedere o ripristinarsi.
La pressione competitiva ricade quindi in parte sulle pratiche interne della piattaforma. I team che mantengono processi manuali di allocazione dispongono ora di un'opzione gestita da valutare. Hanno bisogno di prove che il loro approccio attuale offra vantaggi che giustifichino il suo costo di coordinamento.
La funzionalità AWS non elimina la necessità di questi confronti. Offre agli utenti SageMaker un altro modo per attuare l'accordo tra diritto di utilizzo e accesso temporaneo.
Monitorare i tempi di completamento, il comportamento di ripristino e la stabilità delle politiche
Le evidenze più utili collegheranno la condivisione delle risorse al lavoro completato e a un accesso prevedibile per i team che allocano.
Il primo segnale da osservare è il tempo di completamento in presenza di contesa realistica. Una valutazione significativa dovrebbe confrontare quando il lavoro termina, incluso ciò che accade quando i team che prestano tornano a utilizzare le risorse. Una maggiore occupazione, da sola, fornirebbe evidenze incomplete.
Se il prestito accelera il lavoro flessibile preservando al contempo un accesso accettabile per i team che allocano, il caso per l'adozione si rafforza. Se i ritardi dovuti alle interruzioni compensano i vantaggi, gli amministratori hanno motivo di limitare i carichi di lavoro che prendono in prestito.
Il secondo segnale è il comportamento di ripristino nelle applicazioni rappresentative. Una ripresa riuscita dopo un'interruzione sosterrebbe un uso più ampio del prestito. Riavvii ripetuti, ripresa non valida o ampie quantità di calcolo ripetuto indebolirebbero tale tesi.
Queste evidenze richiedono contesto applicativo. Una dimostrazione riuscita su uno script di addestramento non può stabilire che ogni flusso di lavoro del modello si comporti allo stesso modo. I team dovrebbero registrare le ipotesi di ripristino associate a ciascuna classificazione del carico di lavoro.
Il terzo segnale è la stabilità delle politiche dopo che gli utenti iniziano a dipendere dall'accesso condiviso. Gli amministratori dovrebbero osservare se le regole di allocazione rimangono comprensibili o generano eccezioni frequenti, cambiamenti di priorità e controversie.
Politiche stabili suggerirebbero che l'organizzazione ha tradotto le proprie priorità in regole di pianificazione utilizzabili. Override persistenti suggerirebbero una discrepanza tra le quote configurate e gli impegni effettivi.
Nei prossimi mesi, questi segnali conteranno più del numero di team che abilitano la funzionalità. L'adozione dimostra interesse. Il comportamento di completamento, la qualità del ripristino e una governance gestibile stabiliscono se l'accordo funziona.
La panoramica di ottobre offre ai team di piattaforma un punto di partenza concreto per questa valutazione. Separa i carichi di lavoro in base alla loro tolleranza alle interruzioni e mostra come la reclamation modifichi l'esecuzione. Il passo successivo spetta alle evidenze sui carichi di lavoro dell'organizzazione stessa.
Per i responsabili engineering, la decisione dovrebbe collegare il comportamento dell'infrastruttura alle promesse di consegna. Un ambiente di addestramento può supportare un lavoro più opportunistico senza rendere ogni scadenza di completamento ugualmente prevedibile.
Per i ricercatori, l'implicazione immediata è che l'accesso anticipato può comportare una continuità condizionale. I piani sperimentali dovrebbero riflettere la differenza tra risorse allocate e risorse prese in prestito.
Iniziate con un carico di lavoro rappresentativo il cui comportamento in caso di interruzione sia compreso dal vostro team. Registrate il tempo di completamento, i risultati del ripristino e l'effetto della reclamation della capacità da parte di un team allocatario. Confrontate tali risultati con il vostro accordo esistente prima di ampliare l'accesso. Conservate l'accordo di allocazione accanto ai risultati, affinché i revisori possano valutare se la politica ha raggiunto il suo scopo previsto. La gestione delle quote di AWS Batch offre un modo concreto per automatizzare il prestito e la reclamation, ma le evidenze sul vostro carico di lavoro dovrebbero determinare dove impiegarla. Quali esperimenti possono accettare un accesso temporaneo e quali necessitano di una finestra di esecuzione più prevedibile?


