NVIDIA CUDA初级教程视频--(六)

**

第六章CUDA编程(一)

**
1.GPU特别适用于:密集计算,高度可并行计算,图形学,晶体管主要被用于:执行计算而不是缓存数据和控制指令流
2.在这里插入图片描述在这里插入图片描述
3.线程层次
Grid:一维或多维线程块(block):一维或二维
Block:一组线程:一维二维或三维
一个grid里面的每个block的线程数是一样的,block内部的每个线程可以:同步,访问共享存储器,位于相同的处理器核,共享所在核的存储器。
线程索引必须有ID,每一个线程必然有一个gird和block 的编号
线程块之间彼此独立执行:任意顺序:并行或串行,被任意数量的处理器以任意顺序调度,处理器的数量具有可扩展性
一个块内部的线程:共享容量有限的低延迟存储器,同步执行,合并访存
4.CUDA内存传输:在这里插入图片描述
主机端host可以从device往返传输数据:global memory,constant memory
cudaMalloc():在设备端分配global memory
cudaFree():释放存储空间
cudaMemcpy():内存传输,可以从主机端到设备端任意组合拷贝
5.三步走框架
管理所有内存,在GPU上分配存储空间,在GPU上并行处理计算,计算完成之后,把结果拷贝到内存,释放。
在算法框架中添加内存拷贝过程,CUDA C编程实现kernel,主机端调用kernel(必须要定义每个grid有多少block,每个block有多少个线程)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值