要开始使用CUDA进行编程,请下载并安装CUDA Toolkit和开发人员驱动程序。该工具包包括nvcc,NVIDIA CUDA编译器以及开发CUDA应用程序所需的其他软件。该驱动程序可确保GPU程序在支持CUDA的硬件上正确运行,这也是您所需要的。
您可以通过nvcc --version从命令行运行来确认CUDA Toolkit是否已正确安装在计算机上。例如,在Linux计算机上,
$ nvcc --version nvcc: NVIDIA (R) Cuda compiler driver Copyright (c) 2005-2016 NVIDIA Corporation Built on Tue_Jul_12_18:28:38_CDT_2016 Cuda compilation tools, release 8.0, V8.0.32
输出编译器信息。如果先前的命令不成功,则可能未安装CUDA工具包,或者nvcc(C:\CUDA\bin在Windows机器上,/usr/local/cuda/bin在POSIX OS上)的路径不是您的PATH环境变量的一部分。
此外,您还需要一个主机编译器,可nvcc用于编译和构建CUDA程序。在Windows上,这是cl.exeMicrosoft Visual Studio附带的Microsoft编译器。在POSIX操作系统上,可以使用其他编译器,包括gcc或g++。官方CUDA快速入门指南可以告诉您特定平台支持哪些编译器版本。
为了确保一切都正确设置,让我们编译并运行一个简单的CUDA程序,以确保所有工具都能正常工作。
__global__ void foo() {} int main() { foo<<<1,1>>>(); cudaDeviceSynchronize(); printf("CUDA error: %s\n", cudaGetErrorString(cudaGetLastError())); return 0; }
要编译该程序,请将其复制到一个名为的文件中test.cu,然后从命令行对其进行编译。例如,在Linux系统上,以下应该工作:
$ nvcctest.cu-o test $ ./test CUDA error: no error
如果程序成功执行且没有错误,那么让我们开始编码!