Skip to main content
IBM Quantum Platform

Schedulatore equo e solidale

Quando si invia un carico di lavoro a un'unità di elaborazione quantistica (QPU), questo entra nello scheduler per quella specifica QPU, unendosi al pool di carichi di lavoro (di tutti gli utenti) in attesa di essere eseguiti su quella QPU. L'ordine di esecuzione di questi carichi di lavoro è determinato, per impostazione predefinita, da una formula di ripartizione equa. Come illustrato di seguito, questa formula cerca di bilanciare il carico di lavoro tra le diverse istanze in base alla quantità di accessi alla QPU assegnati in una determinata finestra temporale. In pratica, ciò significa che i carichi di lavoro di diverse istanze sono intrecciati in modo tale che l'ordine in cui i carichi di lavoro vengono completati non è necessariamente quello in cui sono stati inviati. Poiché l'ordine viene calcolato dinamicamente all'arrivo di nuovi carichi di lavoro, è generalmente impossibile garantire quando un carico di lavoro verrà eseguito dallo scheduler fair-share.


Condizioni di equa ripartizione

  • Account: Gli utenti privati e le organizzazioni utilizzano un account IBM Cloud® per accedere a IBM Quantum® Platform e al servizio IBM Quantum Compute Service.

  • Istanza: Il costrutto di livello base a cui viene assegnato il tempo dal conto generale a un insieme di QPU e a cui gli utenti sono direttamente assegnati. Le istanze sono collegate a una regione e a un piano specifici. Per ulteriori informazioni, consultare la guida Istanze.

  • finestra mobile di 28 giorni: Lo scheduler fair-share tiene conto dell'utilizzo in una finestra temporale mobile. Solo il tempo di esecuzione accumulato all'interno di tale finestra viene preso in considerazione ai fini dell'equità. La durata di questa finestra è attualmente di 28 giorni. Quando viene invocato lo scheduler di condivisione equa, si tiene conto dell'utilizzo a partire da 28 giorni prima. (Nota: la finestra temporale mobile non si applica al Piano Flex. Il rapporto di equità per il Piano Flex è dato dall'utilizzo totale rispetto all'assegnazione)

  • Tempo utilizzato: Per ogni istanza, durante la finestra mobile di 28 giorni, si tiene conto di tutto l'utilizzo su tutte le QPU. Questi includono tutti i carichi di lavoro andati a buon fine, nonché i carichi di lavoro che restituiscono codici di errore selezionati noti. (Nota: la finestra temporale mobile non si applica al Piano Flex. Il rapporto di equità per il Piano Flex è dato dall'utilizzo totale rispetto all'assegnazione)


Assegnazione e amministrazione

IBM® assegna un'allocazione di capacità di calcolo quantistico all'account IBM Cloud di ciascuna organizzazione, in base alla capacità contrattata nell'ambito del proprio piano. Gli amministratori degli account decidono quindi quale porzione di questa allocazione assegnare a ciascuna istanza. Lo scheduler fair-share utilizza l'allocazione delle istanze e l'utilizzo corrente per pianificare i carichi di lavoro in modo da distribuire equamente le risorse a ciascuna istanza.

Ad esempio, si supponga che solo due istanze mantengano carichi di lavoro nella coda di un computer quantistico. A parità di condizioni, un'istanza con un numero doppio di minuti può eseguire un numero doppio di carichi di lavoro.

Se l'account dell'organizzazione è un account aziendale, gli amministratori dell'account dovranno prima distribuire le loro allocazioni agli account figli dell'account e l'amministratore dell'account figlio distribuirà poi la sua parte di allocazione alle istanze dell'account figlio.


Come funziona lo scheduler fair-share

Lo scheduler fair-share seleziona i carichi di lavoro da eseguire su una QPU in un ordine dinamico, in modo che nessuna istanza possa monopolizzare la QPU. Quando una QPU è pronta per un ulteriore lavoro, richiede il carico di lavoro successivo allo scheduler fair-share. Il comportamento predefinito dello scheduler è quello di selezionare il carico di lavoro successivo identificando prima l'istanza che ha utilizzato la quantità minore della sua allocazione nella finestra di schedulazione corrente. Se l'istanza selezionata ha presentato più di un carico di lavoro, lo scheduler selezionerà prima il carico di lavoro più vecchio. Pertanto, all'interno di un'istanza, lo scheduler lavora su base first-in-first-out (FIFO).


Passi successivi

Suggerimenti
Questa pagina è stata utile?
Segnala un bug, un errore di battitura o richiedi contenuti su GitHub.