View a markdown version of this page

Pemotongan tugas untuk templat pekerjaan - Awan Batas Waktu

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Pemotongan tugas untuk templat pekerjaan

Pekerjaan render dan simulasi sering menghabiskan lebih banyak waktu memuat file aplikasi dan adegan daripada memproses setiap frame. Ketika pekerjaan menjalankan satu frame per tugas, waktu muat itu berulang untuk setiap frame. Pemotongan tugas mengelom pokkan beberapa tugas menjadi satu unit kerja yang disebut potongan, sehingga aplikasi memuat sekali untuk setiap potongan, bukan sekali untuk setiap frame. Chunking sangat membantu ketika waktu muat panjang relatif terhadap waktu untuk memproses setiap frame, seperti adegan yang dimuat selama beberapa menit dan kemudian merender setiap frame dalam hitungan detik.

Jika Anda bermigrasi dari Deadline 10, pemotongan tugas menggantikan pengaturan frame per tugas, juga disebut ukuran potongan, di pengirim Deadline 10.

Task chunking adalah ekstensi untuk Open Job Description (OpenJD) bernama. TASK_CHUNKING Dalam template pekerjaan yang menggunakan ekstensi, Anda menentukan parameter tugas dengan tipeCHUNK[INT]. Saat pekerjaan berjalan, Deadline Cloud mengirimkan rentang nilai ke setiap tugas alih-alih nilai tunggal, dan {{Task.Param.Frame}} variabel dalam skrip Anda diperluas ke ekspresi rentang seperti1-10. Skrip Anda meneruskan rentang itu ke aplikasi. Untuk spesifikasi lengkapnya, lihat RFC 0001: Task Chun king on. GitHub

Untuk menggunakan task chunking, Anda membuat dua keputusan:

  • Batasan rentang — Pilih CONTIGUOUS kapan aplikasi Anda menerima argumen frame awal dan akhir. Setiap potongan kemudian merupakan rentang berturut-turut seperti1-10. Pilih NONCONTIGUOUS kapan aplikasi Anda menerima daftar bingkai sewenang-wenang. Potongan kemudian dapat menutupi set bingkai yang jarang seperti1-3,5,7-20:2, yang berguna saat merender bingkai pengambilan.

  • Ukuran potongan defaultTaskCount Bidang menetapkan jumlah frame tetap untuk setiap potongan. Jika potongan terlalu kecil, waktu muat mendominasi dan pekerjaan berjalan tidak efisien. Jika potongan terlalu besar, pekerjaan tidak dapat menyeimbangkan pekerjaan di armada yang lebih besar. Untuk menghindari penyetelan nilai dengan tangan, atur targetRuntimeSeconds bidang opsional. Deadline Cloud kemudian menyesuaikan ukuran potongan ke arah runtime target tersebut berdasarkan runtime yang diamati dari potongan yang selesai.

Ukuran potongan juga menutup paralelisme. Sebuah langkah menghasilkan satu tugas untuk setiap potongan, yang kira-kira jumlah frame dibagi dengan ukuran potongan, dan setiap tugas berjalan pada satu pekerja. Tabel berikut menunjukkan bagaimana ukuran potongan membatasi jumlah pekerja yang dapat memproses pekerjaan 100-frame secara paralel.

Bingkai dalam pekerjaan Ukuran potongan Tugas (pekerja paralel maksimum)
100 1 100
100 10 10
100 50 2

Jika ukuran potongan lebih besar dari jumlah frame dibagi dengan jumlah pekerja yang tersedia, beberapa pekerja tetap menganggur. Saat Anda mengaturtargetRuntimeSeconds, Deadline Cloud menyeimbangkan pertukaran ini untuk Anda dengan menyesuaikan ukuran potongan ke arah runtime target.

Pekerjaan yang dipotong berbeda dari pekerjaan satu bingkai per tugas dalam dua cara. Di monitor Deadline Cloud, daftar tugas langkah menunjukkan satu tugas untuk setiap potongan, diidentifikasi oleh rentang bingkainya. Saat Anda mengunduh output untuk satu tugas dalam pekerjaan yang dipotong, Deadline Cloud mengunduh output untuk seluruh bagian. Misalnya, jika Deadline Cloud memproses frame 1-10 bersama-sama sebagai potongan, mengunduh output untuk frame 3 mengunduh semua frame 1-10. Mengunduh output yang dipotong membutuhkan deadline-cloud versi 0.53.3 atau yang lebih baru.

Untuk informasi selengkapnya tentang pemotongan tugas, lihat topik berikut: