cuda编程1

一个简单的例子

#include<iostream>
__global__ void add(int a,int b,int *c)
{
	 *c = a+b;
}
int main()
{
	int c;
	int *dev_c;
	cudaMalloc((void **)&dev_c,sizeof(int));
	add<<<1,1>>>(2,7,dev_c);
	cudaMemcpy(&c,dev_c,sizeof(int),cudaMemcpyDeviceToHost);
	std::cout<<c<<std::endl;
	cudaFree(dev_c);
	return 0;
}

__global__:告诉编译器,函数编译为在设备运行而不是主机运行;
add<<<x,y>>>():表示对函数的调用,x表示启动的线程块,y表示每个线程块中线程的个数;
相关函数参考链接:https://blog.csdn.net/limengjuhanxin/article/details/88386492

©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页