Ikhtisar penjadwalan sumber daya elastis, penjadwalan tugas AI, penjadwalan sumber daya heterogen, dan penjadwalan antrian tugas untuk meningkatkan pemanfaatan sumber daya kluster dan efisiensi pekerjaan.
Elastic scheduling
Gabungkan instans ECS, ECI, dan preemptible dalam satu aplikasi dengan kebijakan berbasis prioritas yang mengontrol jenis sumber daya mana yang melakukan scale-out terlebih dahulu dan dilepas terlebih dahulu.
| Feature | Scenario | References |
|---|---|---|
| Elastic scheduling | Kurangi biaya dengan memprioritaskan sumber daya yang lebih murah saat scale-out (misalnya, ECS sebelum ECI) dan melepaskannya terlebih dahulu saat scale-in. Mendukung instans subscription, pay-as-you-go, dan preemptible. | Use Elastic Container Instance-based scheduling dan Configure priority-based resource scheduling |
Task scheduling
Gang scheduling, Capacity Scheduling, dan Kube Queue mengelola workload batch dan AI.
| Feature | Scenario | References |
|---|---|---|
| Gang scheduling | Pelatihan terdistribusi atau pekerjaan batch yang memerlukan start tugas secara simultan. Tanpa gang scheduling, start parsial akan memblokir sumber daya dan menyebabkan deadlock. Gang scheduling menjalankan semua proses terkait sekaligus untuk mencegah pemblokiran. | Work with gang scheduling |
| Capacity Scheduling | Kluster multi-tim di mana tim menggunakan sumber daya pada waktu berbeda. Kuota sumber daya Kubernetes standar mengalokasikan jumlah tetap per namespace, sehingga sumber daya menganggur ketika kuota tidak digunakan. Capacity Scheduling memungkinkan tim berbagi sumber daya menganggur di luar batas kuota masing-masing. | Use Capacity Scheduling |
| Kube Queue (ack-kube-queue) | Kluster besar dengan workload AI dan batch dari banyak pengguna. Penjadwalan tingkat Pod menurun kinerjanya pada jumlah pekerjaan yang tinggi, dan pekerjaan dari pengguna berbeda saling mengganggu. ack-kube-queue mengelola antrian dengan kebijakan yang dapat dikustomisasi dan kuota terintegrasi untuk memaksimalkan pemanfaatan. | Use ack-kube-queue to manage job queues |
Heterogeneous resource scheduling
Jadwalkan GPU menggunakan cGPU sharing dan penempatan yang memperhatikan topologi untuk CPU maupun GPU. Untuk label node penjadwalan GPU, lihat Labels used by ACK to control GPUs.
GPU sharing with cGPU
cGPU memungkinkan beberapa Pod berbagi satu GPU dengan isolasi memori, sehingga mengurangi biaya GPU dan meningkatkan stabilitas workload. Kluster ACK Pro mendukung kebijakan berikut:
| Policy | Use when | Description |
|---|---|---|
| One-pod-one-GPU sharing and memory isolation | Inferensi model | Satu Pod per GPU dengan isolasi memori antar Pod yang berbagi GPU yang sama. |
| One-pod-multi-GPU sharing and memory isolation | Pelatihan model terdistribusi | Satu Pod mencakup beberapa GPU dengan isolasi memori untuk pelatihan model terdistribusi. |
| binpack or spread allocation | Tingkatkan pemanfaatan GPU dan ketersediaan tinggi | Mengalokasikan GPU dengan algoritma binpack atau spread untuk meningkatkan pemanfaatan dan memastikan ketersediaan tinggi. |
Lihat cGPU Professional Edition untuk instruksi penyiapan.
Topology-aware CPU and GPU scheduling
Penjadwal menempatkan workload yang sensitif terhadap performa berdasarkan topologi perangkat keras node, termasuk jalur GPU-ke-GPU (NVLink, PCIe Switches) dan topologi CPU NUMA.
| Feature | References |
|---|---|
| Topology-aware CPU scheduling | Topology-aware CPU scheduling |
| Topology-aware GPU scheduling | Overview |
FPGA scheduling
Gunakan label untuk menjadwalkan workload FPGA ke node yang dipercepat dan kelola sumber daya FPGA di seluruh kluster.
| Feature | References |
|---|---|
| FPGA scheduling | Use labels to schedule pods to FPGA-accelerated nodes |
Task queue scheduling
Kustomisasi penjadwalan antrian tugas untuk workload AI dan batch.