Tanım
CUDA (Compute Unified Device Architecture), NVIDIA'nın kendi GPU'larında genel amaçlı paralel hesaplama yapılmasını sağlayan programlama platformu ve yazılım katmanıdır. PyTorch, TensorFlow ve birçok yapay zekâ aracı NVIDIA GPU'ları CUDA üzerinden kullanır; yalnızca NVIDIA kartlarında çalışır.
CUDA ne işe yarar?
CUDA, geliştiricilerin GPU'nun binlerce çekirdeğini grafik dışındaki hesaplar için kullanmasına yarar. Doğrudan C/C++ ile CUDA çekirdekleri yazılabileceği gibi, çoğu kullanıcı CUDA'yı dolaylı olarak, onu kullanan kütüphaneler üzerinden kullanır:
- cuDNN: Derin öğrenme işlemleri için hızlandırılmış kütüphane
- cuBLAS: Matris ve doğrusal cebir işlemleri
- PyTorch, TensorFlow, vLLM, llama.cpp: CUDA destekli derlenmiş sürümleriyle GPU'yu kullanır
AMD kartlarda benzer rolü ROCm platformu üstlenir; ancak yazılım desteği CUDA kadar yaygın değildir.
CUDA sürümü ve sürücü uyumu nasıl kontrol edilir?
CUDA kullanırken üç bileşenin uyumlu olması gerekir: NVIDIA sürücüsü, CUDA Toolkit ve kullanılan kütüphanenin derlendiği CUDA sürümü. Sürücü, desteklediği en yüksek CUDA sürümünü belirler; daha yeni bir Toolkit eski sürücüyle çalışmaz.
nvidia-smikomutu sürücü sürümünü ve desteklenen CUDA sürümünü gösterir.nvcc --versionkurulu CUDA Toolkit sürümünü gösterir.- PyTorch'ta
torch.cuda.is_available()ile GPU'nun görülüp görülmediği test edilir.
Uyum sorunlarını azaltmak için NVIDIA Container Toolkit ile Docker konteyneri içinde hazır CUDA imajları kullanmak yaygın bir yöntemdir.
CUDA nasıl kurulur?
CUDA kurulumu, önce uygun NVIDIA sürücüsünün, ardından CUDA Toolkit'in kurulmasıyla yapılır. Ubuntu üzerinde adım adım kurulum için GPU sunucuda CUDA kurulumu rehberine bakabilirsiniz. CUDA'nın çalışacağı NVIDIA GPU donanımı için AI sunucu paketlerini inceleyebilirsiniz.