Scheduler fair-share
Quando invii un carico di lavoro a un'unità di elaborazione quantistica (QPU), questo entra nello scheduler specifico di quella QPU, unendosi al pool di carichi di lavoro (di tutti gli utenti) in attesa di esecuzione. L'ordine in cui questi carichi di lavoro vengono eseguiti è, per impostazione predefinita, determinato da una formula fair-share. Come descritto di seguito, questa formula cerca di bilanciare il carico di lavoro tra diverse istanze in base alla quantità di accesso alla QPU allocata in un determinato intervallo di tempo. In pratica, ciò significa che i carichi di lavoro di varie istanze vengono intrecciati in modo tale che l'ordine in cui si completano non corrisponde necessariamente all'ordine in cui sono stati inviati. Poiché l'ordine viene calcolato dinamicamente man mano che arrivano nuovi carichi di lavoro, in generale è impossibile garantire quando un carico di lavoro verrà eseguito dallo scheduler fair-share.
Termini del fair-share
-
Account: Individui e organizzazioni utilizzano un account IBM Cloud® per accedere a IBM Quantum® Platform e a Qiskit Runtime.
-
Istanza: Il costrutto di base a cui viene allocato il tempo dall'account principale verso un insieme di QPU, e a cui gli utenti sono direttamente assegnati. Le istanze sono collegate a una regione specifica e a un piano. Consulta la guida sulle Istanze per ulteriori informazioni.
-
Finestra temporale mobile di 28 giorni: Lo scheduler fair-share tiene conto dell'utilizzo in una finestra temporale mobile. Ai fini della equità, viene contabilizzato solo il tempo di esecuzione accumulato all'interno di tale finestra. La durata attuale di questa finestra è di 28 giorni. Quando lo scheduler fair-share viene invocato, considera l'utilizzo a partire da 28 giorni fa. (Nota: La finestra temporale mobile non si applica al Flex Plan. Il rapporto fair-share per il Flex Plan è il totale dell'utilizzo rispetto all'allocazione.)
-
Tempo utilizzato: Per ogni istanza, nell'arco della finestra mobile di 28 giorni, viene contabilizzato tutto l'utilizzo su tutte le QPU. Sono inclusi tutti i carichi di lavoro completati con successo, nonché quelli che restituiscono determinati codici di errore noti. (Nota: La finestra temporale mobile non si applica al Flex Plan. Il rapporto fair-share per il Flex Plan è il totale dell'utilizzo rispetto all'allocazione.)
Allocazione e amministrazione
IBM® assegna un'allocazione di capacità di calcolo quantistico all'account IBM Cloud di ogni organizzazione, in base alla capacità prevista dal contratto del piano. Gli amministratori dell'account decidono quindi quale porzione di questa allocazione assegnare a ciascuna istanza. Lo scheduler fair-share utilizza l'allocazione e l'utilizzo corrente delle istanze per pianificare i carichi di lavoro in modo da distribuire le risorse equamente tra le istanze.
Ad esempio, supponiamo che solo due istanze abbiano carichi di lavoro in coda su un computer quantistico. A parità di tutte le altre condizioni, un'istanza con il doppio dei minuti può eseguire il doppio dei carichi di lavoro.
Se l'account dell'organizzazione è un account enterprise, gli amministratori dovranno prima distribuire le allocazioni agli account figlio, e l'amministratore dell'account figlio distribuirà poi la propria quota di allocazione alle istanze di quell'account.
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 elaborare nuovo lavoro, richiede il carico di lavoro successivo allo scheduler fair-share. Il comportamento predefinito dello scheduler consiste nel selezionare il prossimo carico di lavoro identificando prima l'istanza che ha utilizzato la minor quota della propria allocazione nella finestra di pianificazione corrente. Se l'istanza selezionata ha inviato più di un carico di lavoro, lo scheduler selezionerà prima quello più vecchio. Pertanto, all'interno di un'istanza, lo scheduler opera secondo il principio FIFO (first-in-first-out).
Passi successivi
- Prova il tutorial sull'algoritmo di Grover.
- Scopri come monitorare un carico di lavoro.