欢迎光临散文网 会员登陆 & 注册

自动驾驶之心Occupancy从入门到精通全栈课程学习笔记

2023-08-18 16:40 作者:a365981109  | 我要投稿

Occupancy

每个SM:occupancy = active warps/maximum warps
CUDA Toolkit中有一个帮助用户确定grid和block大小的工具:/usr/local/cuda-8.0/tools

➤小线程块:每个块的线程太少导致在所有硬件资源完全利用之前,已经达到了每个SM最多的warps。比如一个线程块只有10个thread,那么一个线程块就要占用一个warp。
➤大线程块:每个块太多的线程导致每个线程可以利用SM的资源更少。
选择策略:根据kernel的计算量调整block的size,并进行多次实验发现最优的grid和block的设置。
➤每个block中含有的thread是warpSize的整数倍数。
➤避免一个block太少的thread,一个block最少128或256个线程。
➤尽量使block的数目大于GPU的SM的数目。

自动驾驶之心Occupancy从入门到精通全栈课程学习笔记的评论 (共 条)

分享到微博请遵守国家法律