Автор (ы) | Nvidia |
---|---|
Тип | компилятор |
Лицензия | проприетарное программное обеспечение |
Веб-сайт | docs.nvidia.com / cuda / cuda-compiler-driver-nvcc / #introduction |
Компилятор Nvidia CUDA (NVCC ) - это собственный компилятор от Nvidia предназначен для использования с CUDA. Код CUDA работает как на CPU, так и на GPU. NVCC разделяет эти две части и отправляет код хоста (часть кода, которая будет выполняться на CPU ) компилятору C, например GCC или Компилятор Intel C ++ Compiler (ICC) или Microsoft Visual C Compiler и отправляет код устройства (часть, которая будет выполняться на GPU) на GPU. Код устройства дополнительно компилируется NVCC. NVCC основан на LLVM. Согласно предоставленной Nvidia документации, nvcc в версии 7.0 поддерживает множество языковых конструкций, которые определены стандартом C ++ 11, а также некоторые функции C99. В версии 9.0 поддерживаются еще несколько конструкций из стандарта C ++ 14.
Любой исходный файл, содержащий расширения языка CUDA (.cu), должен быть скомпилирован с помощью nvcc. NVCC - это драйвер компилятора, который работает, вызывая все необходимые инструменты и компиляторы, такие как cudacc, g ++, cl и т. Д. NVCC может выводить либо код C (код процессора), который затем должен быть скомпилирован с остальной частью приложения с помощью другого инструмента, либо PTX или объектный код напрямую. Для исполняемого файла с кодом CUDA требуются: основная библиотека CUDA (cuda) и библиотека времени выполнения CUDA (cudart).
Другие широко используемые библиотеки: