CUDA的执行配置与内建变量

CUDA执行配置与内建变量
本文介绍了CUDA中调用__global__函数时所需的执行配置参数,包括Grid和Block的大小及维度,并解释了内建变量的作用。此外,还探讨了warp的概念及其在GPU处理器中的作用。
部署运行你感兴趣的模型镜像

刚写的函数和变量的限定符csdn既然没有给我保存,郁闷~~

 

接着看 执行配置

在调用一个__global__函数的时候需要指定执行配置:<<< Dg, Db, Ns, S >>>

Dg:grid的大小和维度,为dim3类型。Dg.x * Dg.y是grid的大小。

Db:block的维度和大小,为dim3类型。Db.x * Db.y * Db.z 是Block的大小。

Ns:size_t类型的,为一个函数的动态shared内存。

 

内建变量:

gridDim:dim3类型的,包含grid的维度

blockIdx:uint3类型的,block在grid的位置

blockDim:dim3类型,包含block的维度

threadIdx:uint3类型的,Thread在block中的位置

warpSize:int类型,线程中的warp大小.?warp在CUDA中是什么概念呢?

 

?warp的概念:

今天在讨论过程中,向liuli师兄请教这个warp。听他讲后,我对warp是这样理解的:

warp是GPU的processor中线程并行的一个单位。在Nvidia中是16个线程为 一个warp。每次执行的时候,这16个线程同时平行执行。每个线程对于share内存的访问对应一个bank。

依然不明白block中不是允许有256个线程嘛,这256个线程难道不是平行运行吗?

您可能感兴趣的与本文相关的镜像

PyTorch 2.5

PyTorch 2.5

PyTorch
Cuda

PyTorch 是一个开源的 Python 机器学习库,基于 Torch 库,底层由 C++ 实现,应用于人工智能领域,如计算机视觉和自然语言处理

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值