CUDA的安装网上的教程有很多,这里就不做介绍了。CUDA使用C语言的语法,扩展了一些关键字,下面我们使用CUDA编写第一个程序Hello CUDA。
这里使用VS 2015新建一个CUDA的项目,在新建项目中,选择CUDA,如下图显示:
程序代码如下:
#include "cuda_runtime.h"
#include "device_launch_parameters.h"
#include <stdio.h>
__global__ void test(void)
{
printf("Hello CUDA!\n");
}
int main()
{
test <<<1, 1 >>> ();
cudaThreadSynchronize();
return 0;
}
CUDA中有类似C语言的内存操作的相关函数:
使用CUDA编写GPU上的函数时,一定要先申请GPU内存然后才能操作,下面是一个使用GPU进行简单计算的例子,计算两个数的和:
__global__ void add(int a, int b, int* c)
{
*c = a + b;
}
int main()
{
int *pData = nullptr;
// 申请GPU可操作的内存
cudaMalloc(&pData, sizeof(int));
// 调用计算函数
add <<<1, 1 >>> (20, 20, pData);
cudaThreadSynchronize();
// 获取GPU计算的结果
int result = 0;
cudaMemcpy(&result, pData, sizeof(int), cudaMemcpyDeviceToHost);
// 打印并释放内存
printf("The Result is : %d\n", result);
cudaFree(pData);
return 0;
}