当前位置:   article > 正文

我的研发面经_显卡的硬件结构_显卡硬件组件有哪些

显卡硬件组件有哪些

1.GPU硬件相关:

使用卡的型号:

总结一下英伟达显卡的型号,N卡自发展至今经历了这几个架构

第一代G80:tesla架构

第二代:费米架构

第三代:开普勒架构

第四代:麦克斯韦架构

第五代:帕斯卡架构

其中我们所用到的设是1050ti、1080ti、和TITAN X。

其中1050ti的结构是6核(sm),每个sm中有128个计算单元(sp),共768个sp。

其中1080ti的结构是6个GPC,按照原GP102-350核心模板,应该是每个核5个SM,共30个SM,但对于1080ti消减了2个sm,共28个sm,每个sm中有128个计算单元(sp),共28*128=3584个sp。

TiTan X是30个SM,每个sm128个sp,共3840个sp。

思考:sp为什么不是“核”、"线程“?

答:sp事实上是最基本的逻辑运算单元,它完成的工作使它更像是一个加法器。

sm是逻辑处理的最小硬件结构,其中包含了逻辑控制单元、高速访存、和sp。一个sm,处理完一个block中的所有线程才会处理下一个block中的数据,因此我们进行划分时,最好保证每个block里的warp比较合理(分多个warp,threads个数是32的整倍数),那样可以一个sm可以交替执行里面的warp,从而提高效率。

此外,在分配block时,要根据GPU的sm个数,分配出合理的block数,让GPU的sm都利用起来,提利用率。分配时,也要考虑到同一个线程block的资源问题,不要出现对应的资源不够。

        ——进阶:一个sm内部通过warp分发器对来的命令(以warp为单位)分发到不同port(端口)上,一个port内部有16个sp,对于warp内的32个thread,需要for循环两次。

        时间线概念,一个port的sp在一个时间片上完成一次逻辑运算,然后等待一定逻辑时钟周期得到本次运算的回馈值,才能做下一条运算,在等待的这段时间,该port的计算资源闲置了。为了避免它的闲置,硬件通过warp分发器将其他warp的指令分发到这个port上 。这是为什么一个block最好安排排出来多个warp(N*32threads)。

      ——二次进阶: 事实上,即使对于一个block中只有一个warp的情况,我们认为对于算法内部逻辑依赖较少的代码,编译器会自动识别哪些语句不存在相关性,warp在执行完这一条命令之后可以去获取其他命令,通过warp分发器再分发到prot上,而不一定在时间线上等待逻辑运算的返回值,从而复用计算资源。

 

 

其他人的一些面经

求职之路(2015南京站拿到百度、美团、趋势科技、华为offer):

https://blog.csdn.net/chhuach2005/article/details/39759165

面经中的各种问题汇总

语言基础,操作系统,计算机网络,数据库,设计模式,算法

https://www.cnblogs.com/forcheryl/p/4723797.html

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/669068
推荐阅读
相关标签
  

闽ICP备14008679号