Colocation pelatihan dan serving menjalankan layanan inferensi dan pekerjaan pelatihan pada kluster GPU yang sama. Melalui mekanisme preemption kuota sumber daya induk-anak, layanan inferensi secara otomatis merebut kembali sumber daya pelatihan. Dikombinasikan dengan penskalaan otomatis terjadwal EAS (Elastic Algorithm Service) dan sumber daya komputasi menganggur DLC (Deep Learning Containers), kluster memprioritaskan inferensi di siang hari dan menjalankan pelatihan di malam hari, sehingga GPU tetap dimanfaatkan secara penuh.
Latar Belakang
Contoh skenario
Asumsikan Anda memiliki kluster 128-GPU yang digunakan bersama oleh tiga tim:
Tim A menjalankan layanan inferensi dan memiliki prioritas sumber daya tertinggi.
Tim B dan C menjalankan pelatihan model dengan prioritas lebih rendah dibandingkan inferensi.
Ketika Tim A memerlukan lebih banyak sumber daya inferensi, sistem secara otomatis merebut kembali sumber daya pelatihan dari Tim B dan C.
Di siang hari, EAS melakukan penskalaan naik untuk menangani lalu lintas inferensi. Di malam hari, EAS melakukan penskalaan turun untuk melepas GPU, dan pekerjaan pelatihan mulai berjalan secara otomatis.
Tim B dan C mengelola sumber daya dan pekerjaan mereka secara independen tanpa saling mengganggu.
Cara kerja
Layanan inferensi EAS dideploy pada kuota induk, sedangkan pekerjaan pelatihan DLC dideploy pada sub-kuota. Ketika layanan inferensi memerlukan lebih banyak sumber daya, sistem secara otomatis melakukan preemption terhadap komputasi pelatihan. Dikombinasikan dengan penskalaan otomatis terjadwal EAS (naik di siang hari, turun di malam hari) dan sumber daya komputasi menganggur DLC (menggunakan kapasitas komputasi cadangan untuk pelatihan di malam hari), tidak diperlukan intervensi manual.
Untuk menerapkan skenario ini:
Buat Kuota 1 dengan 128 GPU dan aktifkan sakelar child-level compute preemption. Di bawah Kuota 1, buat dua sub-kuota: Kuota 1.1 (48 GPU) dan Kuota 1.2 (80 GPU).
Buat workspace_a untuk Tim A dan bind ke Kuota 1. Deploy layanan inferensi EAS pada Kuota 1 dan konfigurasikan penskalaan otomatis terjadwal.
Buat workspace_b untuk Tim B dan bind ke Kuota 1.1. Buat pekerjaan pelatihan DLC pada Kuota 1.1 dengan fitur idle compute resources diaktifkan.
Buat workspace_c untuk Tim C dan bind ke Kuota 1.2. Buat instans DSW (Data Science Workshop) pada Kuota 1.2 untuk pengembangan.
Prosedur
Siapkan sumber daya komputasi AI (sumber daya komputasi tujuan umum atau sumber daya komputasi AI Lingjun). Kolam sumber daya tujuan umum harus menggunakan versi 2.0 agar mendukung EAS, DLC, dan DSW secara bersamaan. Untuk informasi selengkapnya, lihat Ikhtisar kolam sumber daya.
Add Resource Quota.
Buat Kuota 1 dengan parameter utama berikut. Untuk informasi selengkapnya, lihat Buat kuota sumber daya atau Kuota sumber daya komputasi umum.
Pilih resources (128 GPU).
Aktifkan sakelar Child-level Preemption. Jika diaktifkan, layanan inferensi EAS pada kuota induk dapat melakukan preemption terhadap sumber daya pelatihan pada sub-kuota.
Pada kolom Actions Kuota 1, klik New Child-level Resource Quota untuk membuat dua sub-kuota. Untuk informasi selengkapnya, lihat Buat kuota induk-anak.
Kuota 1.1: 48 GPU.
Kuota 1.2: 80 GPU.
Buat tiga ruang kerja dan bind masing-masing ke kuota yang sesuai. Untuk informasi selengkapnya, lihat Buat dan kelola ruang kerja.
Tim A: workspace_a, terikat ke Kuota 1.
Tim B: workspace_b, bound ke Kuota 1.1.
Tim C: workspace_c, bound ke Kuota 1.2.
Buat layanan inferensi EAS pada Kuota 1 dan konfigurasikan penskalaan otomatis terjadwal. Untuk informasi selengkapnya, lihat Service Deployment.
Konfigurasikan aturan penskalaan otomatis terjadwal sebagai berikut:
Lakukan penskalaan naik ke jumlah replika target pada pukul 08.00 untuk menangani lalu lintas inferensi siang hari.
Lakukan penskalaan turun ke nol atau jumlah replika minimal pada pukul 22.00 untuk melepas GPU bagi pekerjaan pelatihan.
Untuk konfigurasi detail, lihat Scheduled auto scaling.
Buat pekerjaan pelatihan DLC atau instans DSW pada sub-quota dan aktifkan idle compute resources. Untuk informasi selengkapnya, lihat Buat pekerjaan pelatihan.
Setelah Anda mengaktifkan idle compute resources, pekerjaan pelatihan dapat menggunakan kapasitas komputasi cadangan di luar batas kuota. GPU yang dilepas oleh EAS di malam hari secara otomatis dialokasikan ke pekerjaan pelatihan.
Untuk konfigurasi detail, lihat Use idle-time resources.
Berikan izin administrator ruang kerja kepada Tim A, B, dan C. Untuk informasi tentang konfigurasi ruang kerja, lihat Configure a workspace. Untuk definisi peran, lihat Roles and permissions.
Kasus Penggunaan
Preempt sumber daya pelatihan untuk inferensi
Pada halaman Resource Quota, klik Kuota 1, lalu pada tab Overview, aktifkan sakelar Child-level compute preemption.
Ketika layanan inferensi Tim A memerlukan lebih banyak sumber daya daripada yang tersedia, sistem secara otomatis merebut kembali sumber daya pelatihan dari Tim B dan C.
Redistribusi sumber daya antara Tim B dan C
Sesuaikan sumber daya Kuota 1.1 dan Kuota 1.2 berdasarkan kebutuhan tim. Pada halaman Resource Quota, temukan Kuota 1.1 atau Kuota 1.2, lalu klik Scale pada kolom Actions. Untuk informasi selengkapnya, lihat Scale quotas.
Skalakan Kuota 1.1 dari 48 GPU menjadi 56 GPU (tambah 8 GPU).
Skalakan Kuota 1.2 dari 80 GPU menjadi 72 GPU (kurangi 8 GPU).
Isolasi izin antara Tim B dan C
Kuota 1.1 di-bind ke workspace_b, dan Kuota 1.2 di-bind ke workspace_c. Tim B dan C mengelola sumber daya dan pekerjaan mereka secara independen dalam ruang kerja masing-masing. Untuk informasi selengkapnya, lihat Workspace scheduling center.
Untuk mengonfigurasi peran penggunaan sumber daya: Pada halaman Workspace Settings, klik tab Scheduling Configuration. Pada bagian Resource Usage, pilih Allowed Roles untuk kuota target, klik + Add untuk menambahkan entri konfigurasi, lalu klik Save.