CUDA学习笔记(一)

说到CUDA,这是这几年来新崛起的一个技术,但是到目前为止,关于它的能用的教程不是很多,网上的教程大多凌乱,特将自己的学习经历记录下,希望能为同样学习CUDA内容的同道中人提供一点点微薄的帮助。

GPU和CPU的机构简图,可以明显的看出来两种处理设备差别很大。CPU有非常大的缓存和控制器单元,GPU的缓存和控制器单元很小。造成这种差别的原因是两种设备的设计哲学不同。CPU设计之初就是用来处理各种各样的任务的,所以会要求通用性。GPU设计用途是用来处理图形学任务的,由于任务非常确定,所以可以特化其设计,使其性能在目标领域达到最大化。

CUDA相比过去并行处理机器的优势在于:

  1. 入门门槛低--CUDA抛弃了图形学API,从而大大降低了用GPU进行计算的门槛,同时GPU芯片内部数据传递速度很高,也避免了多核甚至多处理器设备通过狭窄的系统总线通信带来的性能损失。
  2. 用户群体大,N卡用户那么多,现在CUDA程序已经支持在CPU上运行了,这进一步扩大了潜在的客户群体。
  3. 显卡发展带来的浮点计算能力的激增和浮点运算精度的上升是的GPU作为运算设备成为可能。

CUDA相比GPGPU程序的优势在于

  1. 抛弃了图形学API,大大简化编程难度。
  2. 提供了更为强大的内存模型。
  3. 摒弃了shader数量的限制。
  4. 提供了更为强大的指令集,更加方便的提高程序的性能。
  5. 提供了方便的数据传递模型。

GPU擅长的程序:

  1. 需要并行处理数据的程序。
  2. 需要很高浮点运算能力的程序。
  3. 程序有集中性的热点的程序。
  4. 。。。

CUDA程序是又CPU和GPU共同计算完成的程序,其中CPU执行程序的串行部分,GPU执行程序的并行部分。

对CUDA程序有个大概模型后开始学习CUDA程序语言基础。



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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值