NVIDIA, grafik işleme birimi hogging ile mücadele ediyor


Nvidia, Apache 2.0 lisansı altında açık kaynak olarak mevcut olan Kubernetes-Yerli Grafik İşleme Birimi (GPU) zamanlama aracı olan Kai Scheduler’ı yaptı.

NVIDIA Run: AI Platformunun bir parçası olan Kai Scheduler, GPU’lar ve Merkezi İşleme Birimleri (CPU’lar) üzerindeki Yapay Zeka (AI) iş yüklerini yönetmek için tasarlanmıştır. Nvidia’ya göre Kai, dalgalanan GPU taleplerini yönetebilir ve hesaplama erişimi için bekleme sürelerini azaltabilir. Ayrıca kaynak garantileri veya GPU tahsisi sunar.

Kai Scheduler için GitHub deposu, minimum kaynaklar gerektiren küçük, etkileşimli işlerden, aynı kümedeki büyük eğitim ve çıkarımlara kadar tüm AI yaşam döngüsünü desteklediğini söyledi. Nvidia, GPU’lara erişim gerektiren farklı uygulamalar arasında kaynak adaletini korurken optimum kaynak tahsisi sağladığını söyledi.

Araç, Kubernetes kümelerinin yöneticilerinin GPU kaynaklarını iş yüklerine dinamik olarak tahsis etmelerini sağlar ve bir Kubernetes kümesine yüklü diğer zamanlamaların yanında çalışabilir.

Nvidia’daki yazılım sistemlerinin başkan yardımcısı Ronen Dar, “Etkileşimli çalışma için (örneğin, veri keşfi için) sadece bir GPU’ya ihtiyacınız olabilir (örneğin, veri keşfi için) ve daha sonra aniden dağıtılmış eğitim veya çoklu deneyler için birkaç GPU gerektirebilir”. “Geleneksel zamanlayıcılar böyle bir değişkenlikle mücadele ediyorlar.”

Kai zamanlayıcısının adil paylaşım değerlerini sürekli olarak yeniden hesapladığını ve mevcut iş yükü taleplerini otomatik olarak eşleştirerek kotaları ve sınırları gerçek zamanlı olarak ayarladığını söylediler. Dar ve Karabulut’a göre, bu dinamik yaklaşım, yöneticilerin sürekli elle müdahalesi olmadan verimli GPU tahsisini sağlamaya yardımcı olur.

Ayrıca, makine öğrenimi mühendisleri için zamanlayıcı, “çete planlaması” dediklerini birleştirerek bekleme sürelerini, GPU paylaşımını ve kullanıcıların iş gruplarını göndermelerini sağlayan hiyerarşik bir kuyruk sistemini birleştirdiğini söylediler. Dar ve Karabulut, kaynaklar mevcut olur olmaz ve öncelikler ve adaletle uyumlu olarak başlatılır.

GPU ve CPU kaynaklarının dalgalanan talebini optimize etmek için Dar ve Karabulut, Kai Scheduler’ın Nvidia’nın bin paketleme ve konsolidasyon dediği şeyi kullandığını söyledi. Bunun, kaynak parçalanması ile mücadele ederek hesaplama kullanımını en üst düzeye çıkardığını ve bunu kısmen kullanılan GPU’lara ve CPU’lara daha küçük görevler paketleyerek gerçekleştirdiğini söylediler.

Dar ve Karabulut, düğümleri düğümler arasında yeniden tahsis ederek düğüm parçalanmasına da hitap ettiğini söyledi. Kai zamanlayıcısında kullanılan diğer teknik, düğüm başına yükü en aza indirmek ve iş yükü başına kaynak kullanılabilirliğini en üst düzeye çıkarmak için iş yüklerini düğümler veya GPU’lar ve CPU’lar arasında yaymaktır.

Daha ileri bir uygulamada Nvidia, Kai Scheduler’ın paylaşılan kümelerin dağıtıldığı zaman da işlediğini söyledi. Dar ve Karabulut’a göre, bazı araştırmacılar mevcudiyeti sağlamak için günün erken saatlerinde gerektiğinden daha fazla GPU temin ediyor. Bu uygulamanın, diğer takımların hala kullanılmayan kotaları olsa bile, az kullanılan kaynaklara yol açabileceğini söylediler.

Nvidia, Kai Scheduler’ın kaynak garantilerini uygulayarak bunu ele aldığını söyledi. Dar ve Karabulut, “Bu yaklaşım kaynağın domuzunu önlüyor ve genel küme verimliliğini destekliyor” diye ekledi Dar ve Karabulut.

KAI Scheduler, Nvidia’nın Kubeflow, Ray, Argo ve eğitim operatörü gibi araç ve çerçevelerle otomatik olarak algılayan ve bağlantı kuran yerleşik bir podgroupu dediği şeyi sağlar ve bu da yapılandırma karmaşıklığını azaltır ve gelişimi hızlandırmaya yardımcı olur.



Source link