· kaynak Hacker News – Front Page (native)
TurboGPT, CUDA C++ ile 13 saniyede 22KiB'lık byte-seviyesinde bir GPT eğitiyor
GitHub'da MIT lisansıyla yayımlanan bir proje, minik bir byte-seviyesinde GPT'yi doğrudan CUDA C++ ile eğitiyor; kaldığınız yerden devam edilebilen checkpoint'ler ve TensorBoard uyumlu loglarla birlikte eksiksiz bir eğitim döngüsü sunuyor.
TurboGPT adlı bir proje 29 Eylül'de Hacker News'in ana sayfasına taşıdı ve başlığında çarpıcı bir iddiayla yer aldı: 13 saniyede eğitilmiş 22KiB'lık bir transformer. Gönderinin arkasındaki, lostmsu adlı geliştirici tarafından MIT lisansıyla yayımlanan GitHub deposu, kendisini daha mütevazı bir şekilde "bir dakikanın altında minik bir GPT eğitin (yalnızca CUDA)" şeklinde tanımlıyor.
CUDA C++ ile yazılmış bir GPT
Alışılmadık olan kısım uygulama dili. Kamuya açık GPT eğitim kodlarının çoğu PyTorch gibi framework'lerin üzerinde Python'da yazılır; TurboGPT ise doğrudan NVIDIA'nın genel amaçlı GPU programlama araç takımı olan CUDA C++ ile yazılmış. Model byte seviyesinde çalışıyor ve tokenleştirilmiş bir kelime dağarcığı yerine ham metin byte'larını okuyarak tokenizer'ı tamamen pipeline'dan çıkarıyor.
Derleme gereksinimleri dar: Windows, Visual Studio 2022'nin C++ araçları ve CUDA 13.4. README ayrıca CudaArch adlı derleme ayarının, NVIDIA'nın kendi CUDA GPU dokümantasyonunda listelendiği gibi, GPU'nuzun compute capability değeriyle eşleşmesi gerektiğini belirtiyor.
Eğitim, checkpoint'ler ve loglar
Araç komut satırından çalışıyor:
.\build\turbogpt.exe --data hn1g.txt --log-to runs/ctx4
Depoya göre her çalıştırma, modeli, optimizer'ı, scheduler'ı ve trainer durumunu birlikte içeren bir checkpoint'i runs/ctx4/ctx4.pt dosyasına yazıyor ve o dosyayı gösteren bir --load bayrağı eğitime oradan devam ettiriyor. PyTorch'un da kullandığı .pt uzantısına rağmen README, PyTorch uyumluluğu konusunda açık bir iddiada bulunmuyor.
Logging, tanıdık araçlara sorunsuzca entegre olacak şekilde tasarlanmış. Log dizininden bir report. dosyası türetiliyor ve logların kendisi TensorBoard uyumlu; her batch için bir rapor yazılıyor, bu 8Mi raporla sınırlı tutuluyor ve periyodik ya da final checkpoint'leriyle birlikte flush ediliyor.
Bildirilen sayılar
README tek bir manşet sonuç veriyor: 1.5G eğitim token'ından sonra hn1g veri setinde 2.52435 BPB. Bits per byte, byte-seviyesinde dil modelleri için standart loss metriğidir; yani bu rakam modelin metnin bir sonraki byte'ını ne kadar iyi tahmin ettiğini ölçer ve düşük olması daha iyidir.
Bunun ötesinde, yayımlanan materyal pek fazla benchmark detayı sunmuyor. Ne Hacker News başlığı ne de README alıntısı, 13 saniyelik rakamı veya "bir dakikanın altında" sloganını hangi GPU'nun ürettiğini belirtmiyor; dolayısıyla bu süreler, doğrulanmış sonuçlar değil, yazardan gelen donanıma bağlı iddialar olarak okunmalı.
Neden önemli
Çoğu mühendis GPT'lerle birkaç soyutlama katmanı aracılığıyla tanışır: bir Python API'si, bir autodiff framework'ü, hazır kernel'lar. Ham CUDA C++ ile yazılmış eksiksiz ve çalışan bir GPT trainer'ı nadirdir ve 22KiB'lık bir model, tek bir oturuşta okunup anlaşılabilecek ve değiştirilebilecek kadar küçüktür. Attention katmanlarının, optimizer'ların ve scheduler'ların framework çağrıları yerine gerçek GPU koduna nasıl eşlendiğini öğrenmek isteyenler için bu, kompakt bir referans uygulamasıdır.
Proje ayrıca eğitim altyapısının göz alıcı olmayan yarısını da hallediyor: optimizer ve scheduler durumunu bir arada paketleyen kaldığınız yerden devam edilebilen checkpoint'ler, periyodik flushing ve TensorBoard uyumlu raporlama. Bu detaylar bir demoyu, üzerinde tekrarlanabilir deneyler yapabileceğiniz bir şeyden ayırır ve varlıkları, yazarın hızın yanında yeniden üretilebilirliğe de öncelik verdiğine işaret eder.
Son olarak, byte-seviyesinde modelleme pipeline'ı basit tutuyor ve BPB gibi metrikleri, tokenizer farklarının tabloyu bulanıklaştırmadan veri setleri arasında doğrudan karşılaştırılabilir hale getiriyor. GPU eğitim çalışmaları için küçük, hızlı ve izin verici lisanslı bir test yatağı olarak TurboGPT, bir üründen çok öğretici bir okuma materyalidir ve değeri AI mühendisleri için tam olarak burada yatmaktadır.
- #cuda
- #gpu-computing
- #open-source
- #language-models
- #machine-learning