NVIDIA CUDA Derleyici - NVIDIA CUDA Compiler - Wikipedia

NVIDIA CUDA Derleyici
Orijinal yazar (lar)Nvidia
Türderleyici
Lisanstescilli yazılım
İnternet sitesidokümanlar.nvidia.com/ cuda/ cuda-compiler-driver-nvcc/#Giriş

Nvidia CUDA Derleyici (NVCC) bir tescilli derleyici tarafından Nvidia ile kullanılmak üzere tasarlanmıştır CUDA. CUDA kodu hem İşlemci ve GPU. NVCC bu iki parçayı ayırır ve ana bilgisayar kodunu gönderir (kodun üzerinde çalıştırılacak kısmı İşlemci ) bir C derleyici gibi GCC veya Intel C ++ Derleyici (ICC) veya Microsoft Görsel C Derleyici ve cihaz kodunu (GPU üzerinde çalışacak kısım) GPU'ya gönderir. Cihaz kodu ayrıca NVCC tarafından derlenir. NVCC, LLVM.[1] Nvidia tarafından sağlanan belgelere göre, 7.0 sürümündeki nvcc, tarafından tanımlanan birçok dil yapısını destekler. C ++ 11 standart ve birkaç C99 özellikleri de. 9.0 sürümünde, C ++ 14 standart desteklenmektedir.[2]

CUDA dil uzantılarını (.cu) içeren herhangi bir kaynak dosya nvcc ile derlenmelidir. NVCC, cudacc, g ++, cl, vb. Gibi gerekli tüm araçları ve derleyicileri çağırarak çalışan bir derleyici sürücüsüdür. NVCC, daha sonra başka bir araç kullanılarak uygulamanın geri kalanıyla derlenmesi gereken C kodunu (CPU Kodu) çıkarabilir veya PTX veya doğrudan nesne kodu. CUDA kodlu bir yürütülebilir dosya şunları gerektirir: CUDA çekirdek kitaplığı (cuda) ve CUDA çalışma zamanı kitaplığı (cudart).

Yaygın olarak kullanılan diğer kitaplıklar:

  • CUBLAS: BLAS uygulaması
  • CUFFT: FFT uygulaması
  • CUDPP (Veri Paralel İlkelleri): Azaltma, Tarama, Sıralama.
  • İtme: Azaltma, Tarama, Sıralama.

Ayrıca bakınız

Referanslar

  1. ^ "CUDA LLVM Derleyici". NVIDIA Corporation. 7 Mayıs 2012. Alındı 6 Nisan 2016.
  2. ^ "CUDA C Programlama Kılavuzu". docs.nvidia.com. Alındı 2019-06-28.
  1. David B. Kirk ve Wen-mei W. Hwu. Büyük ölçüde paralel işlemcileri programlama: uygulamalı bir yaklaşım. Morgan Kaufmann, 2010.
  2. Nvcc'de Nvidia Belgeleri. https://docs.nvidia.com/cuda/cuda-compiler-driver-nvcc/
  3. CUDPP. https://web.archive.org/web/20181117222643/http://gpgpu.org/developer/cudpp