cGPU, GPU belleği ve hesaplama gücü yalıtımı sağlayan bir Alibaba Cloud modülüdür. Bu sayede birden fazla konteyner tek bir GPU'yu birbirlerinin kaynaklarını etkilemeden paylaşabilir. Bu konuda, cGPU'yu dağıtmadan veya yükseltmeden önce kontrol etmeniz gereken uyumluluk gereksinimleri ve bilinen sorunlar ele alınmaktadır.
Ön Koşullar
Bir GPU düğümü aşağıdaki etiketlerden herhangi birini taşıyorsa cGPU yalıtımı etkinleştirilmiş demektir:
ack.node.gpu.schedule=cgpuack.node.gpu.schedule=core_memcgpu=true
ack-ai-installer ile cGPU bileşenleri arasındaki sürüm eşlemesi için bkz. ack-ai-installer sürüm notları.
cGPU hakkında daha fazla bilgi için bkz. NVIDIA resmi belgeleri.
Sınırlamalar
GPU başına maksimum pod sayısı: cGPU, tek bir GPU üzerinde en fazla 20 pod'u destekler. Bu sınırın ötesinde bir GPU'ya zamanlanan pod'lar çalışamaz.
Container-optimized OS uyumluluğu: cGPU'nun 1.5.18 ve önceki sürümleri, Alibaba Cloud container-optimized OS görüntüsü kullanıldığında cGPU düğümündeki ilk pod'un başlamamasına neden olabilir. Bu sorunu çözmek için
ack-ai-installer ≥ 1.12.6sürümüne yükseltin.Kernel panic riski: cGPU'nun 1.5.7 ve önceki sürümlerinde, Linux kernel panic'e yol açan çekirdek sürücüsünde bilinen bir kilitlenme (deadlock) sorunu bulunur.
cGPU ≥ 1.5.10sürümüne yükseltin.
cGPU sürüm uyumluluğu
NVIDIA sürücü uyumluluğu
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Örnek ailesi uyumluluğu
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
nvidia-container-toolkit uyumluluğu
|
|
|
|
|
|
|
|
|
Çekirdek sürümü uyumluluğu
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Sorun Giderme
cGPU kullanılırken Linux kernel panic oluşması
cGPU çekirdek sürücüsündeki bir kilitlenme (deadlock), eşzamanlı işlemlerin birbirini engellemesine ve bunun sonucunda Linux kernel panic yaşanmasına neden olur. Bu durum cGPU'nun 1.5.7 ve önceki sürümlerini etkiler.
Yeni hizmetlerde çekirdek hatalarını önlemek için cGPU ≥ 1.5.10 sürümüne yükseltin. Talimatlar için bkz. Bir düğümün cGPU sürümünü yükseltme.
Container-optimized OS düğümünde cGPU pod'unun başlamaması
Alibaba Cloud container-optimized OS görüntüsü kullanıldığında, bir düğümdeki ilk cGPU pod'u aşağıdakine benzer bir hata ile başlayamayabilir:
Error: failed to create containerd task: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error running prestart hook #0: exit status 2, stdout: , stderr: Auto-detected mode as 'legacy': unknown
Bu durum cGPU'nun 1.5.18 ve önceki sürümlerini etkiler. ack-ai-installer ≥ 1.12.6 sürümüne yükseltin. Talimatlar için bkz. Paylaşılan GPU zamanlama bileşenini yükseltme.
cGPU pod'u oluşturulurken modprobe hatası oluşması
Bir cGPU pod'u oluştururken aşağıdaki hatalardan birini görürseniz:
modprobe: ERROR: could not insert 'cgpu_procfs': Operation not permitted
modprobe: ERROR: could not insert 'km': Operation not permitted
İşletim sistemi sürümü cGPU ile uyumlu değildir. cGPU bileşenini en son sürüme yükseltin. Talimatlar için bkz. Paylaşılan GPU zamanlama bileşenini yükseltme.
cGPU pod konteynerinin oluşturulamaması veya zaman aşımı nedeniyle çıkış yapması
Bu durum, cGPU'nun 1.0.10 ve önceki sürümleri ile nvidia-container-toolkit'in 1.11 ve sonraki sürümleri arasındaki uyumsuzluktan kaynaklanır. cGPU bileşenini en son sürüme yükseltin. Talimatlar için bkz. Paylaşılan GPU zamanlama bileşenini yükseltme.
"Error occurs when creating cGPU instance: unknown" hatasının görünmesi
cGPU, GPU başına en fazla 20 pod'u destekler. Bir GPU'ya zamanlanan pod sayısı bu sınırı aşarsa sonraki pod'lar çalışamaz ve bu hata görünür. GPU başına pod sayısını 20 veya daha düşük tutun.
nvidia-smi çalıştırılırken "Failed to initialize NVML" hatasının görünmesi
Paylaşılan GPU zamanlama kaynaklarını kullanan bir pod'da nvidia-smi çalıştırıldığında aşağıdaki çıktı döndürülür:
Failed to initialize NVML: GPU access blocked by operating system
Bu durum, cGPU'nun 1.5.2 ve önceki sürümleri ile Temmuz 2023'ten sonra yayınlanan GPU sürücü sürümleri arasındaki uyumsuzluktan kaynaklanır. GPU sürücü yayın tarihlerinin listesi için bkz. GPU Driver Release Dates. ACK küme sürümleri tarafından desteklenen varsayılan GPU sürücü sürümleri için bkz. ACK tarafından desteklenen NVIDIA sürücü sürümlerinin listesi.
cGPU bileşenini en son sürüme yükseltin. Talimatlar için bkz. Paylaşılan GPU zamanlama bileşenini yükseltme.