小黑屋
查看详细资料
TOP
魔王撒旦
银河飞将
NV在Tegra之前也有过一款携带GPU的设计 实际上那款要比NV40的缩水版要有意思多了 那就是2004年随着GoForce 3000/4000一起问世的GoForce 3D,或者说它的代号AR10,这是一款和前面的GPU截然不同的设计。 前面那些PowerVR很正统,PICA200是把shader取消掉只留固定管线来节省功耗,Tegra是把NV40缩减规模降低频率。 而这款GoForce 3D呢?它把一些现在GPU都不敢丢掉的固定部分也给除掉了,只使用可编程的shader来实现。 一般的固定管线GPU是很长一条流水线,一个像素从头走到尾就算完成了输出。 而GoForce之中,要反复在在shader上跑,每一次处理一个功能。 GoForce是很极端的设计,它确实做到了比固定管线更少的晶体管和更低的功耗(我前面说了,固定管线比shader更省晶体管和功耗,但是做事做绝就又反过来了),而且理论性能还差不多。 看起来很好。 但就结果而言这款设计称不上成功,NV搞Tegra时也没有去延续它。 为什么呢? 一是就我的理解,GoForce 3D架构的实际性能不怎么样,它的理论性能我怀疑只有渲染那种一张贴图搞定的天空一类,单次贴图,不考虑前后景遮蔽关系,没有半透明的部分时才能实现。 实际上真有这种画面,也是支持OpenVG的2D卡就可搞定的。 而复杂画面的时候,一次渲染都需要要反复执行,性能表现就比用长固定管线一次搞定的就要悲剧很多了。 当然现代显卡的shader也是类似的流程,不过在结构上早就做了对应的改进,比方说SP的数量要比Tex多得多,更细化的分支,更大的并行度,线程管理等等,同时像TA、Z一类的实在是必然用到的单元,还是保持固定设计。 二就是实在是生不逢时,支持shader的OpenGL ES 2.0是2007年才发布的,GoForce 3D虽然内含shader但还是只能跑OpenGL ES 1.0、1.1的API,根本没有机会发挥自己的特长。 三是因为NV没有延迟渲染啥的专利优势,为了弥补显存过慢的问题,采用了edram,而且集成的很大,640KB甚至2.5MB,这部分的缺陷使得面积优势并不存在;还有除了GoForce6100(其实我不确定这个用的还是Goforce 3D核心)是个集成了ARM11的SOC外,GoForce系列是独立显卡,相比PowerVR一贯的SOC方案,那外部总线的功耗消耗,更难协调的电源管理使得功耗优势很可能也不复存在。 结果就是成了各方面都显示不出优点,还比较慢的玩意,失败也在情理之中了。 这款东西非常独特甚至可以说是超前,现在精神上的继承者可能是PS3最初计划采用的Cell GPU或者英特尔的LRB一类使用全可编程的管线的设计,这显然是属于未来的。 尤为有趣的是为了降低功耗,GoForce走了和PICA200完全相反的路线。
混世魔头
原帖由 卖哥 于 2010-8-6 00:31 发表 [url=http://club.tgfcer.com/redirect.php?goto=findpost&pid=9608802&ptid=6214971][实际上3DS画面对于PSP的进步,主要还是在更大的内存、更宽裕的纹理大小限制、还有新的特效。 如果把PSP的游戏移植过来,保持画面一致,然后同样好的优化(也就是无法应用大内存、大纹理、新特效优势的时候),3DS的帧数很可能更低。