《cuda实战》 笔记


学习《cuda实战》的笔记


1,内部变量:
线程格——>线程块——>线程
gridDim:线程网格,表示含有线程块block的数目;
blockDim:线程块block的大小即线程块包含的线程的数量;
blockIdx:线程格grid中线程块的索引号;
threadIdx:线程块block中线程的索引号;

每个层次的变量都具有x,y,z三个维度。
dim3  block(m,n);//每个线程格有m,n个线程块
dim3  thread(p,q);//每个线程块有p,q个线程数
即:
gridDim.x=m;gridDim.y=n; blockDim.x=p;blockDim.y=q;

2,函数调用
kernel<<<线程块数量,每个线程块的线程数量>>>(参数1,参数2,。。。)
如果定义tid为线程号,即可以作为二维数组的索引号计算:
kernel<<<N,1>>>(~)  :列向量
有N个线程块,每块一个线程,线程号就是线程块号,即
tid=blockIdx.x;
kernel<<<1,N>>>(~)  :行向量
有1个线程块,每块N个线程,线程号为
tid=threadIdx.x;
kernel<<<M,N>>>(~) :二维数组
tid=threadIdx.x+blockIdx.x*blockDim.x;


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值