CUDA, Nvidia tarafından ortaya konulan, bilgisayarın işlem performansına yüksek oranda katkı
yapan bir paralel programlama platformudur. C, C++, C#, Fortran, Java, Python gibi programlama
dilleri ile yazılmış algoritmaların GPU yani “grafik işlem birimi” üzerinde çalışmasını sağlayan
bir sistem olarak da tanımlanabilir.Paralel programlama, birden fazla CPU’nun bir arada çalışmasını
istediği için zorluk çıkartır. CPU’lar aslen seri işlemcilerdir ve birden fazla CPU’nun bir arada
kullanılabilmesi için karmaşık yazılımlar gerekmektedir. CUDA ise bünyesinde zaten paralellik
yarattığı için bu zorlukları ortadan kaldırıyor.
CUDA etkinleştirilmiş GPU ile görüntü ve video işlem, hesaplamaya dayalı biyoloji ve kimya,
akışkan dinamiği, bilgisayarlı tomografi, sismik analiz, ışın izleme ve çok daha fazlası dahil olmak üzere
geniş bir aralıkta kullanım alanları bulmaktadır. CUDA, sadece NVIDIA GPU’larda çalışması itibariyle rakiplerinden
farklı olsa da 2012 yılı itibariyle dünya üzerinde 300 milyondan fazla CUDA destekli GPU olduğu bilinmektedir.
Bugün bu sayı daha da üst seviyeye ulaşmıştır.
CUDA Nasıl İşler?
Genellikle video işleme ve dönüştürme konusunda kullanılan CUDA’nın direkt olarak bu işe yönelmediğini en başından belirtmek gerek. Birbiri ile veri paylaşımı yapabilen paralel dizilime sahip çekirdekler, CPU’nun tek düzen şeklinde yapacağı işi yayarak gerçekleştirir. Farklı hatlara yüklenen işlemler yavaş gerçekleşir fakat tek yolda yapılabilecek süreden daha kısa sürede işlem sonuçlanır.
Yani kısacası konu kodlara ve CPU’nun tek başına kaldıramayacağı ağırlıktaki yüklere CUDA göğüs gerer, işi paylaşır ve kısa süre içerisinde bitmesini sağlar. Yalnız bu noktada bir şeyi de atlamamak gerek. CUDA’dan faydalanmak için öncelikle bu özelliği açmak gerekiyor. Yukarıda daha önce belirttiğimiz gibi kullanılan programlama diline yapılan ufak bir ek ile CUDA aktif hale getirilebiliyor.
Hiç yorum yok :
Yorum Gönder
Yorumlarınız için teşekkür ederim:)