NVIDIA, CUDA çekirdek optimizasyonları için tasarlanmış, MLIR tabanlı bir ara temsil (IR) ve derleyici altyapısı olan CUDA Tile'ı açık kaynak olarak kullanıma sundu. Bu proje, özellikle döşeme (tile) tabanlı hesaplama modellerine ve NVIDIA tensor çekirdek birimlerini hedefleyen optimizasyonlara odaklanıyor. CUDA Tile, geliştiricilere NVIDIA GPU'lar için döşemeli hesaplamaları ifade etme ve optimize etme konusunda kapsamlı bir ekosistem sağlayarak, yüksek performanslı CUDA çekirdeklerinin geliştirilmesini basitleştirmeyi amaçlıyor. Bunu, yaygın döşeme modelleri, bellek hiyerarşisi yönetimi ve GPU'ya özgü optimizasyonlar için gelişmiş soyutlamalar sunarak başarıyor.
CUDA Tile ekosistemi, döşeme tabanlı hesaplamalar için birinci sınıf işlemler ve türler sağlayan, alan özelinde bir MLIR lehçesi olan CUDA Tile Dialect'i içeriyor. Ayrıca, programatik IR oluşturma, işleme ve dönüştürme için kapsamlı bir Python API'si sunan Python Bağlantıları da mevcut. Proje, CUDA Tile lehçesi ile ikili format arasında serileştirme ve seri durumdan çıkarma desteğiyle verimli bir ikili temsil olan Bytecode'u ve CUDA Tile spesifikasyonuna uygunluğu sağlayan kapsamlı bir Uygunluk Test Paketi'ni de barındırıyor. Bu açık kaynak sürümü, NVIDIA'nın CUDA Toolkit 13.1 sürümüyle uyumlu olarak yayınlandı ve geliştiricilere daha entegre bir deneyim sunuyor.
CUDA Tile'ın geliştirilmesi, NVIDIA GPU'larında döşeme tabanlı hesaplamalar için resmi semantik, işlemler ve tür sistemini tanımlayan CUDA Tile IR spesifikasyonu tarafından yönlendiriliyor. Projeyi kullanmak isteyenler için CMake 3.20.0 veya üzeri, C++17 uyumlu bir derleyici ve Python 3.6+ gibi temel gereksinimler bulunuyor. MLIR/LLVM kaynakları ise otomatik olarak indirilebiliyor veya yerel kaynaklar kullanılabiliyor, bu da kurulum sürecini esnek hale getiriyor. Bu sayede, geliştiriciler karmaşık GPU optimizasyonlarını daha kolay ve verimli bir şekilde gerçekleştirebilecekler.
Bu gelişme, NVIDIA GPU'larında yüksek performanslı hesaplama ve yapay zeka uygulamaları geliştiren mühendisler ve araştırmacılar için CUDA çekirdek optimizasyonlarını önemli ölçüde kolaylaştırıyor.