小米吧 关注:8,050,036贴子:78,393,629

【03-31 分享】GPU知识大讲堂开课了

取消只看楼主收藏回复

GPU英文全称Graphic Processing Unit,中文翻译为“图形处理器”。GPU是相对于CPU的一个概念,在一颗移动soc中,CPU和GPU都是封装在一起的。因此如何抉择一个soc变得十分重要
现在的GPU的性能越来越强夯,而宣传更是越来越过火,所谓的72核GPU和超越Xbox 的图形计算性能越来越让人质疑。我们该相信什么?一个GPU的性能又应该如何去衡量?


IP属地:河北1楼2014-03-31 21:53回复
    ① shader
    Shader在我的理解里的概念是顶点像素着色器,根据渲染模式的不同有pixel shader和vertex shader的分离渲染架构,由vs负责输出顶点数据,再由ps进行上色渲染。而统一渲染架构中的shader既可以生成顶点建模,又可以渲染像素生成纹理。比分离渲染架构灵活多变,可以自由部署vs ps的数量。以320的16shader为例,当一个游戏需要的建模大于像素需要时。Shader中可以15个都去输出三角形,只用一个渲染像素,同样也可以1个输出三角形,15个shader渲染像素。而分离渲染架构的shader功能就已经注定下来了


    IP属地:河北2楼2014-03-31 21:53
    回复
      2026-02-11 07:09:36
      广告
      不感兴趣
      开通SVIP免广告
      带宽
      带宽指的是最高数据传输量,严格来说gpu并不和带宽有关系,但带宽限制了gpu的性能发挥。这样来说吧,gpu处理的数据是漏斗里的油,而带宽就是油漏下去的速度。即使gpu处理的数据再多但漏不下去也是白费。 带宽的大小等于位宽*频率。如iphone5的A6就是64bit 等效1066mhz的频率,因此它的带宽是8.5GB每秒。而iphone5需要带动一个大型游戏满帧的话。8层读一层写,32位的屏幕。需要带宽640*1136*4*60*9约为1.5GB每秒的带宽,因此iphone在分辨率的优势显得明显了。而国内一些寨板用64bit 624mhz等效频率。约为4.8GB的带宽去带WXGA 实属丧心病狂啊。 32bit的WXGA屏幕需要 6.48实际带宽。因为soc上的CPU等部分也是需要用到带宽的,因此实际带宽需要打个半折吧。而ipad4为了带上WXGA用上了128bit 1066mhz的17GB内存,足以喂饱PVR554了。而pc端的大部分独立显卡有独立显存,带宽可是嗷嗷叫的300,400GB啊


      IP属地:河北本楼含有高级字体3楼2014-03-31 21:54
      回复
        ③ 内部构造
        1. IMG PVR5 系列
        Shader核心为usse,支持FX10 FP16和32精度。每时钟频率内可对1个FP32精度的浮点数进行一次MADD乘加运算,在共享操作数的时候可以对其进行2次浮点运算。记做4flops每时钟频率。 531 535 540 545等gpu都是基于usse的。


        IP属地:河北4楼2014-03-31 21:54
        回复
          2. IMG PVR 5XT
          Shader核心升级为usse2,内部构造为vec4矢量单元和一个标量scalar单元的alu组成,vec4单周期对4个32位浮点数进行MADD计算,记做8flops每时钟频率。标量单元只进行一些特殊函数的计算,一般计算性能时不考虑。有543,544,554三款 其中544是543增强了dx的支持,增大了die。性能方面一致,都为单核4usse2。554堆料恐怖,单核8usse2。即64flops。


          IP属地:河北5楼2014-03-31 21:54
          回复
            3. PVR 6 series Rogue
            Shader核心为usc,单核32scalar标量alu。光论理论性能单核usc和单554是一个量级的,但是scalar标量比vec4的向量效率要高得多,貌似是可以将指令打包成vliw4? 所以shader性能仅仅是2倍不及与前代的iphone5s的跑分却达到了三倍之多。 Iphone5s的Rogue为G6400,4usc,128scalar alu,单周期有256flops的性能。频率为200mhz。则shader性能为51.2Gflops。 听闻ipad5将采用比现在Rogue中最为残暴的6630还残暴的未出现过的GPU。我等屌丝是买不起的。


            IP属地:河北6楼2014-03-31 21:55
            回复
              4.ULP系列
              Vliw4的scalar核心,T2中为一组vliw4 vs和一组ps。T3一组vs二组ps。T4为六组vs,十二组ps。计算能力每scalar alu为2flops每周期。顶点支持fp20精度,像素支持32精度


              IP属地:河北7楼2014-03-31 21:55
              回复
                6Adreno系列
                adreno2xx,无论是fp16还是fp32都是按照32精度计算。 内部结构为vec4+scalar
                220是8X vec4+scalar 266mhz 225则是400mhz
                adreno3xx,支持fp16精度,fp16精度下shader性能翻倍。内部为vliw4+scalar
                305 4vliw4+scalar 320 16vliw4+scalar 330 32vliw4+scalar


                IP属地:河北10楼2014-03-31 21:55
                回复
                  2026-02-11 07:03:37
                  广告
                  不感兴趣
                  开通SVIP免广告
                  支持格式
                  opgl es2.0中兼容格式为etc 不支持alpha通道,帧读取效率较为缓慢
                  opgl es3.9中兼容格式为etc2
                  powervr支持pvrtc
                  ulp支持thd
                  adreno支持atitc


                  IP属地:河北11楼2014-03-31 21:55
                  回复
                    渲染模式
                    MR是即时渲染(纹理渲染)
                    TBR是延迟渲染(贴图渲染)
                    TBDR是分块延迟渲染(贴图渲染


                    IP属地:河北12楼2014-03-31 21:56
                    回复
                      各自的特性
                      malit6xx中 支持forward pixel kill,通过在帧缓存中硬件检测像素的位置排列,避免渲染后面不可见的像素
                      pvr中有tbdr 早期通过early z软件检测每一个像素的z值,只取z值靠前的可见像素。但是透明场景会崩坏


                      IP属地:河北13楼2014-03-31 21:56
                      回复
                        NV的ULP和VV的GC系——IMR
                        ARM的MALI——TBR
                        IMG家的SGX系——TBDR
                        高通家的Adreno——flex render


                        IP属地:河北15楼2014-03-31 21:57
                        回复
                          IMR和TBR/TBDR的最大区别在纹理贴图单元的操作,当然还有其他的不同点,本文只讲一点,
                          IMR直接通过GPU进行纹理计算,纹理贴图单元再把纹理贴上帧图像,缺点,出错时要通过带宽在帧缓存中直接进行修改,这么一来,带宽就会被吃得很紧。但优点是整个过程是顶点着色器构图—光栅化单元填充成素图—像素着色器填充像素—纹理贴图单元贴上【顶点着色器,像素着色器计算所得的】特效纹理。IMR在简单场景中有优势,这个优势仅对于移动端来说。


                          IP属地:河北16楼2014-03-31 21:57
                          回复
                            TBR和TBDR对比IMR多了个高速缓存,能把VS处理好的图形骨架细分化,并通过指针指令送入高速缓存中的存储单元中。再由渲染管线进行下一步操作。


                            IP属地:河北17楼2014-03-31 21:58
                            回复
                              2026-02-11 06:57:37
                              广告
                              不感兴趣
                              开通SVIP免广告
                              对比TBR ,TBDR是个进化,TBDR拥有HSR(hidden surface remote)隐藏面消除技术,用3Dfx进行隐藏面消除,据说能完全彻底消除,则是纹理贴图单元把数据包中常用的特效和贴图贴上帧图像,为了节省带宽(贴图都是被压缩的),在特效多,复杂的场景中有优势。这优势也只是对于移动端来说


                              IP属地:河北19楼2014-03-31 21:58
                              回复