Hello,CUDA
最近在学习GUP编程,故此记录下学习进度。
#include <iostream>
__global__ void myfirstkernel(void) {
}
int main(void) {
myfirstkernel<<< 1, 1 >> >();
printf("hello,CUDA!\n");
return 0;
}
不难看出CUDA代码基本上和ANSI C代码一样,只是增加了一些关键字来利用数据并行性
global 相当于声明函数在设备中运行,在本例中函数为空。
myfirstkernel<<< 1, 1 >> >();
<>这种括号里传递的参数是线程和块的数量。<< <1,1> >>表示在设备上运行一个块和一个线程。
后边将对CUDA编程进行细致讲解。
例子引入
include <iostream>
#include <cuda.h>
#include <cuda_runtime.h>
//Definition of kernel function to add two variables
__global__ void gpuAdd(int d_a, int d_b, int *d_c)
{
*d_c = d_a + d_b;
}
int main(void)
{
//Defining host variable to store answer
int h_c;
//Defining device pointer
int *d_c;