概述
GPU是一种SIMD(Single Instruction Multiple Data)架构,ALU(算术运算单元),GPU的特点是有很多的ALU和很少的cache,与CPU擅长逻辑控制,串行的运算。和通用类型数据运算不同,GPU擅长的是大规模并发计算,这也正是密码破解等所需要的。所以GPU除了图像处理,也越来越多的参与到计算当中来。
GPU与CPU相比优势:
(1) 大规模并行计算处理能力
(2) 高存储访问带宽
(3) 更高的性能功耗比—单指令多线程的计算模式SIMT
Warps and Thread Blocks
流式多处理器(StreamingMultiprocessor,SM);
逻辑上,所有thread是并行的,但是,从硬件的角度来说,实际上并不是所有的thread能够在同一时刻执行。
warp是SM的基本执行单元。一个warp包含32个并行thread(即warp_size=32),这32个thread执行于SIMT模式。也就是说所有thread执行同一条指令,并且每个thread会使用各自的data执行该指令。
block可以是一维二维或者三维的,但是,从硬件角度看,所有的thread都被组织成一维,每个thread都有个唯一的ID
一个warp中的线程必然在同一个block中,如果block所含线程数目不是warp大小的整数倍,那么多出的那些thread所在的warp中,会剩余一些inactive(待用)的thread,也就是说,即使凑不够warp整数倍的thread,硬件也会为warp凑足,只不过那些thread是inactive状态,需要注意的是,即使这部分thread是inactive的,也会消耗SM资源。
最后
以上就是从容绿草为你收集整理的GPU学习的全部内容,希望文章能够帮你解决GPU学习所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复