CUDA编程模型:内核与线程层次概述

【IT168 技术】本章引入了CUDA编程模型背后的主要概念,方式是概述它们是怎样使用C语言表示的。更多的关于CUDA C的描述在第三章。

        相关文章:

        CUDA初探:从图形处理到通用并行计算

        CUDA初探:通用并行计算架构和编程模型

  本章使用的向量相加例子的完整代码和下一个例子可在SDK中的vectorAdd代码样本中找到。

  2.1 内核

  CUDA通过允许程序员定义称为内核的C函数扩展了C,内核调用时会被N个CUDA线程执行N次(译者注:这句话要好好理解,其实每个线程只执行了一次),这和普通的C函数只执行一次不同。

  内核使用__global__声明符定义,使用一种新<<<...>>>执行配置语法指定执行某一指定内核调用的线程数(参看附录B.16)。每个执行内核的线程拥有一个独一无二的线程ID,可以通过内置的threadIdx变量在内核中访问(译者注:这只说明在块内是唯一的,并不一定是全局唯一的)。

  下面的样本代码将两个长度为N的向量A和B相加,并将结果存入向量C中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值