View a markdown version of this page

Suddivisione delle attività per i modelli di lavoro - Deadline Cloud

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Suddivisione delle attività per i modelli di lavoro

I lavori di rendering e simulazione spesso impiegano più tempo a caricare l'applicazione e il file di scena rispetto all'elaborazione di ogni fotogramma. Quando un lavoro esegue un fotogramma per operazione, il tempo di caricamento si ripete per ogni fotogramma. Il raggruppamento delle attività raggruppa più attività in un'unica unità di lavoro chiamata blocco, quindi l'applicazione viene caricata una volta per ogni blocco anziché una volta per ogni frame. La suddivisione in blocchi è particolarmente utile quando il tempo di caricamento è lungo rispetto al tempo di elaborazione di ciascun fotogramma, ad esempio una scena che viene caricata per minuti e poi renderizza ogni fotogramma in pochi secondi.

Se stai eseguendo la migrazione da Deadline 10, la suddivisione in blocchi sostituisce l'impostazione dei fotogrammi per attività, chiamata anche dimensione del blocco, nei mittenti di Deadline 10.

La suddivisione delle attività è un'estensione di Open Job Description (OpenJD) denominata. TASK_CHUNKING In un modello di lavoro che utilizza l'estensione, si definisce un parametro di attività con il tipo. CHUNK[INT] Quando il processo viene eseguito, Deadline Cloud invia un intervallo di valori a ciascuna attività anziché un singolo valore e la {{Task.Param.Frame}} variabile nello script si espande in un'espressione di intervallo come. 1-10 Lo script passa tale intervallo all'applicazione. Per le specifiche complete, vedere RFC 0001: Task Chunking on. GitHub

Per utilizzare il task chunking, prendi due decisioni:

  • Vincolo di intervallo: scegli CONTIGUOUS quando l'applicazione accetta gli argomenti di inizio e fine frame. Ogni blocco è quindi un intervallo consecutivo come. 1-10 Scegli NONCONTIGUOUS quando la tua applicazione accetta elenchi di frame arbitrari. I blocchi possono quindi coprire set di frame sparsi, ad esempio1-3,5,7-20:2, il che è utile per il rendering di frame pick-up.

  • Dimensione del blocco: il defaultTaskCount campo imposta un numero fisso di frame per ogni blocco. Se i blocchi sono troppo piccoli, prevale il tempo di caricamento e il processo viene eseguito in modo inefficiente. Se i blocchi sono troppo grandi, il lavoro non è in grado di bilanciare il lavoro su una flotta più grande. Per evitare di modificare manualmente il valore, imposta il campo opzionale. targetRuntimeSeconds Deadline Cloud regola quindi le dimensioni dei blocchi in base al runtime di destinazione in base ai tempi di esecuzione osservati dei blocchi completati.

La dimensione dei blocchi limita anche il parallelismo. Un passaggio produce un'attività per ogni blocco, che corrisponde all'incirca al numero di frame diviso per la dimensione del blocco, e ogni attività viene eseguita su un lavoratore. La tabella seguente mostra come la dimensione del blocco limiti il numero di lavoratori in grado di elaborare un lavoro da 100 frame in parallelo.

Frame in job Dimensione del pezzo Attività (numero massimo di lavoratori paralleli)
100 1 100
100 10 10
100 50 2

Se la dimensione del blocco è maggiore del numero di frame diviso per il numero di lavoratori disponibili, alcuni lavoratori rimangono inattivi. Una volta impostatotargetRuntimeSeconds, Deadline Cloud bilancia questo compromesso adattando le dimensioni dei blocchi in base al runtime di destinazione.

I lavori in blocchi differiscono dai lavori con un fotogramma per attività in due modi. Nel monitor Deadline Cloud, l'elenco delle attività del passaggio mostra un'attività per ogni blocco, identificato dal relativo intervallo di frame. Quando scarichi l'output per una singola attività in un lavoro suddiviso in blocchi, Deadline Cloud scarica l'output per l'intero blocco. Ad esempio, se Deadline Cloud elabora i frame 1-10 insieme in blocco, scaricando l'output per il frame 3 vengono scaricati tutti i frame 1-10. Lo scaricamento dell'output suddiviso in blocchi richiede deadline-cloud la versione 0.53.3 o successiva.

Per ulteriori informazioni sulla suddivisione delle attività, consulta i seguenti argomenti: