
Menindaklanjuti rencana yang diumumkan sebelumnya, NVIDIA mengatakan bahwa mereka memiliki elemen baru yang bersumber dari pelarian: platform AI, termasuk Kai Scheduler.
Penjadwal adalah solusi penjadwalan GPU asli Kubernetes, sekarang tersedia di bawah lisensi Apache 2.0. Awalnya dikembangkan dalam pelarian: platform AI, Kai Scheduler sekarang tersedia untuk masyarakat sambil juga terus dikemas dan dikirim sebagai bagian dari NVIDIA Run: AI Platform.
Nvidia mengatakan inisiatif ini menggarisbawahi komitmen Nvidia untuk memajukan infrastruktur AI open-source dan Enterprise AI, mendorong komunitas yang aktif dan kolaboratif, mendorong kontribusi,
umpan balik, dan inovasi.
Dalam posting mereka, Ronen Dar dan Ekin Karabulut dari Nvidia memberikan gambaran tentang detail teknis Kai Scheduler, menyoroti nilainya untuk tim dan ML, dan menjelaskan siklus dan tindakan penjadwalan.
Manfaat Penjadwal Kai
Mengelola beban kerja AI pada GPU dan CPU menghadirkan sejumlah tantangan yang sering gagal dipenuhi oleh penjadwal sumber daya tradisional. Penjadwal dikembangkan untuk secara khusus mengatasi masalah ini: mengelola permintaan GPU yang berfluktuasi; mengurangi waktu tunggu untuk akses komputasi; jaminan sumber daya atau alokasi GPU; dan menghubungkan alat dan kerangka kerja AI dengan mulus.
Mengelola permintaan GPU yang berfluktuasi
Beban kerja AI dapat berubah dengan cepat. Misalnya, Anda mungkin hanya memerlukan satu GPU untuk pekerjaan interaktif (misalnya, untuk eksplorasi data) dan kemudian tiba -tiba memerlukan beberapa GPU untuk pelatihan terdistribusi atau beberapa percobaan. Penjadwal tradisional berjuang dengan variabilitas seperti itu.
Penjadwal Kai secara terus-menerus menghitung ulang nilai berbagi wajar dan menyesuaikan kuota dan batasan secara real time, secara otomatis mencocokkan permintaan beban kerja saat ini. Pendekatan dinamis ini membantu memastikan alokasi GPU yang efisien tanpa intervensi manual konstan dari administrator.
Mengurangi waktu tunggu untuk akses komputasi
Untuk insinyur ML, waktu adalah esensi. Penjadwal mengurangi waktu tunggu dengan menggabungkan penjadwalan geng, berbagi GPU, dan sistem antrian hierarkis yang memungkinkan Anda untuk mengirimkan sejumlah pekerjaan dan kemudian melangkah pergi, yakin bahwa tugas akan diluncurkan segera setelah sumber daya tersedia dan selaras prioritas dan keadilan.
Untuk lebih mengoptimalkan penggunaan sumber daya, bahkan dalam menghadapi permintaan yang berfluktuasi, penjadwal
menggunakan dua strategi yang efektif untuk beban kerja GPU dan CPU:
Pekek dan Konsolidasi Bin: Memaksimalkan pemanfaatan komputasi dengan memerangi sumber daya
Fragmentasi – mengemukakan tugas yang lebih kecil menjadi GPU dan CPU yang digunakan sebagian – dan menangani
Fragmentasi simpul dengan merealokasi tugas di seluruh node.
Penyebaran: meresap beban kerja secara merata di seluruh node atau GPU dan CPU untuk meminimalkan
Beban per-simpul dan memaksimalkan ketersediaan sumber daya per beban kerja.
Jaminan sumber daya atau alokasi GPU
Dalam kelompok bersama, beberapa peneliti mengamankan lebih banyak GPU daripada yang diperlukan di awal hari untuk memastikan ketersediaan di seluruh. Praktik ini dapat menyebabkan sumber daya yang kurang dimanfaatkan, bahkan ketika tim lain masih memiliki kuota yang tidak digunakan.
KAI STECTERER mengatasi hal ini dengan menegakkan jaminan sumber daya. Ini memastikan bahwa tim praktisi AI menerima GPU mereka yang dialokasikan, sementara juga secara dinamis merealokasi sumber daya idle ke beban kerja lainnya. Pendekatan ini mencegah hogging sumber daya dan mempromosikan efisiensi cluster secara keseluruhan.
Menghubungkan beban kerja AI dengan berbagai kerangka kerja AI bisa menakutkan. Secara tradisional, tim menghadapi labirin konfigurasi manual untuk mengikat beban kerja dengan alat -alat seperti Kubeflow, Ray, Argo, dan operator pelatihan. Kompleksitas ini menunda prototyping.
Kai Sadeculer membahas hal ini dengan menampilkan podgrouper bawaan yang secara otomatis mendeteksi dan terhubung dengan alat dan kerangka kerja ini-mengurangi kompleksitas konfigurasi dan mempercepat pengembangan.