TGFC俱乐部>>游戏业界综合讨论区>>
- 翻页: ##1 ##2 > (1/2页)
- 刷新/显图/登录/注册/WEB
标题:Xbox 360 GPU 填充率、像素着色、顶点多边形性能测试
时间:08-04-24 22:49
作者:村上春樹
http://forum.gamer.com.tw/C.php? ... affenSS&media=0
Xenos Fill-Rate Performance
XNA开发者对XB360的GPU绘图效能的测试
(这测试跟shader无关,所以US,VS/PS的差异是没有影响的)
http://texhnologix.blogzine.jp/t ... enos_fillrate_.html
<Color Fill Rate>--------------------------------------------------
测试是在720p解析度下,Overdraw=64,不做blending.
每个frame绘制了1280X720 X 64overdraw=58.9Mpixel.
每pixel频宽=Z read + Z write + Color write = 12bytes/pixel
结果
MSAAx1: 58.982 Mpixels * 56.497 fps = 3332 Mpixels/sec( 39.984 GB/s)
MSAAx2: 58.982 Mpixels * 55.814 fps = 3292 Mpixels/sec( 79.008 GB/s)
MSAAx4: 58.982 Mpixels * 54.895 fps = 3238 Mpixels/sec(155.415 GB/s)
若做blending混色
每pixel频宽=Z read + Z write + Color read +Color write = 16bytes/pixel
MSAAx1: 58.982 Mpixels * 56.497 fps = 3332 Mpixels/sec( 53.317 GB/s)
MSAAx2: 58.982 Mpixels * 55.814 fps = 3292 Mpixels/sec(105.345 GB/s)
MSAAx4: 58.982 Mpixels * 54.895 fps = 3238 Mpixels/sec(207.220 GB/s)
(那207GB/sec实测频宽实在很吓人.....)
从数据可以看出, Xenos 的Fill Rate一直是稳定的数据.
表示对显卡频宽很吃力的半透明blending和MSAA,
对Xenos来说反而是小case.....因为EDram有非常暴力的频宽.
且Xenos的ROP是为了全速4X MSAA而设计.
所以开不开Blending和MSAA其实对Fill Rate效能没有多少影响.
有趣的是这开发者也拿G72M(geforce7400)做同样测试.
G72M架构上就是类似缩减版的RSX,基本架构相同但G72M没有color和Z的compression技术.
G72M为64bit,4ROP,时脉450Mhz.RSX为128bit,8ROP,时脉550Mhz.
从G72M的ROP数量和时脉判断,若其频宽效率与Xenos相同时,应该大约1300Mpixels/sec.
-- G72M --
MSAAx1: 58.982 Mpixels * 15.953 fps = 941 Mpixels/sec(11.292 GB/s)
MSAAx2: 58.982 Mpixels * 8.010 fps = 472 Mpixels/sec(11.328 GB/s)
MSAAx4: 58.982 Mpixels * 3.997 fps = 236 Mpixels/sec(11.328 GB/s)
若做blending混色
MSAAx1: 58.982 Mpixels * 9.150 fps = 540 Mpixels/sec(8.635 GB/s)
MSAAx2: 58.982 Mpixels * 4.615 fps = 272 Mpixels/sec(8.710 GB/s)
MSAAx4: 58.982 Mpixels * 2.301 fps = 136 Mpixels/sec(8.686 GB/s)
从数据可以看出, G72即使不开MSAA其fill rate比预期的低,
G72架构开启2xMSAA时,数据马上再跌一半.
(理论上G7x硬体也有免费的2xMSAA,但是现实中受限于外部记忆体频宽无法发挥)
开启4xMSAA时,数据马上狂跌到1/4.
而开启blending混色时,数据又比原本再跌掉40%
光就color+Z fill rate而言,G72的惨败应该不令人意外.
主要差在EDram的频宽实在太吓人.....连G80或R600都没有这种怪物频宽.
而且G72拿掉了color & Z compression.
每个ROP分配的频宽实在太少,只有不做Z test时才能勉强发挥Fill Rate.
MSAA就更不用讲了.....
[
本帖最后由 村上春樹 于 2008-4-24 22:51 编辑 ]
回复列表 (64)
http://texhnologix.blogzine.jp/t ... os_fillrate__1.html
<Texture Fill Rate>--------------------------------------------------
用1024 X 1024, 32bpp的材质做Fill Rate测试, 但是不做blending.
(没做半透明混色的意思)
不开MSAA.
-- G72M --
ROP : 58.982 Mpixels * 8.010 fps = 472 Mpixels/sec(5.664 GB/s)
TEX : (1024 * 1024 * 32bpp) * 64 * 8.010 fps = 2.147 GB/s
-- Xenos --
ROP : 58.982 Mpixels * 45.024 fps = 2656 Mpixels/sec(31.872 GB/s)
TEX : (1024 * 1024 * 32bpp) * 64 * 45.024 = 12.079GB/s
Xenos数据显示,材质共用掉12GB/sec的频宽.
不开MSAA时32bpp材质大约占绘图总频宽的25%.
加上32bpp的材质后,Xenos效能下降20%,
G7x效能下降13%
不过这个测试用32bpp材质,其实这和游戏里的大多数材质用法不同.
材质频宽数据只能勉强参考而已.
游戏大部分都用S3TC压缩的材质只要4~8bpp,材质消费频宽会骤减到1.5~3GB/sec,
所以游戏里材质频宽对整体效能影响更小.
且开MSAA会使color+Z频宽暴增,也会使材质频宽的影响在比例上再大幅降低.
这数据算是游戏不太会发生的worse case.
===================
Pixel Shader ALU测试
MADD效能, 每pixel进行1024回MADD计算.
http://texhnologix.blogzine.jp/t ... enos_madd_perf.html
GeForce Go 7400(450MHz) -> 2.885fps
(1280 * 720) * 1024op * 2.885fps = 2.722Gops
Xenos(500MHz) -> 19.543fps
(1280 * 720) * 1024op * 19.543fps = 18.443Gops
G72M是4PS X 2 ALU=8ALU
Xenos是48US X 1 ALU=48ALU
ALU数量差6倍,而时脉差10%.
理论上Xenos的MADD校能大约G72M是6.6倍.
而实测数据(19.543fps / 2.885fps) = 6.77倍
显示两者都的确妥善的发挥应有的效能.
Xenos这数据至少是Geforce7800GTX的等级了.
由于这shader测试几乎不消费频宽,(算完1024回才写回记忆体一次.)
所以这纯粹是ALU数量与时脉的比拼.
由于G72M与RSX的ALU架构相同,可以由此推估RSX的效能,RSX的PS数量是24个,
比G72多6倍,时脉也多20%.
所以理论上RSX效能会是G72M是6.x倍
应该也能在MADD test达到与Xenos相近的数据.
不过在"纯ALU"测试中,若G70核心(RSX)只能和Xenos打平.
那3D游戏的shader计算上恐怕会落后,
因为游戏用的shader code其实有不少Tex指令.
而G70架构的Tex指令会占用ALU1的计算单位......
当1cycle中同时有tex和alu指令时
原本每个PS可以处理2个MADD,但是现在变成1MADD+1TEX.
ALU指令运算量会打折扣.
而Xenon的Tex unit是独立于shader alu 单位.
alu指令运算量大致上是不受Tex指令影响的.
所以在shader方面, 恐怕Xenos效能上也是占了点便宜..
PS3开发者一样是要辛苦点依赖CELL砍掉不必要的顶点与面数,
来减少RSX的shader负担. 这样跨平台才能跟上Xenos的shader效能.
===================
Xenos顶点多边形效能测试图.
http://texhnologix.blogzine.jp/texhnologix/images/2007/11/25/xenos_vertex_performance_peek.jpg
顶点测试
http://texhnologix.blogzine.jp/t ... enos_vertex_pe.html
测试是绘制256X256的多边形mesh,每frame16个mesh.
测试用的Vertex Shader用了31 alu指令
测试用的Pixel Shader用了19 alu和2 tex指令.
所以它还是有多重贴图和一些shader效果, 并不是把所有US全部拿去做VS的计算.
MSAAx1=12.300 fps, 206.361 MVerts/s (6.604 GB/s), 409.526 MTris/s (2.457 GB/s)
MSAAx2=7.998 fps, 134.182 MVerts/s (4.294 GB/s), 266.821 MTris/s (1.598 GB/s)
MSAAx4=6.683 fps, 112.128 MVerts/s (3.588 GB/s), 222.506 MTris/s (1.335 GB/s)
可以看出,Xenos在不开MSAA时多边形面数高达409.526 MTris/s
已经算是证明"G80等级"的顶点怪物的传说是真的.
(如果把Pixel Shader运算量降低,也许有机会更接近500MTris/s的理论上限)
开启2X或4XMSAA时会多边形面数明显下降,
原因应该是MSAA时需要Tile分割画面, 不少多边形跨了多个Tile,
需要重覆传输处理多次,但是只能算一次的面数,
不过222 MTris/s的面数其实还是很高的数据.
(天剑和LP都只用了100 MTris/s左右的面数而已, DeadRising大约1xxMTris/s)
如果嫌这测试不够真实, 之前B3D有跨平台开发者,把真正游戏故意关掉LOD减面功能,
未经最佳化测出来数据也高达300MTris/s.
有这种效能难怪不需要像PS3开发者, 常要用SPE去预先处理顶点及砍面数.
360的开发者却只要把所有东西丢给Xenos就好了.......它有太足够的顶点效能让你浪费
另外从多边形频宽数据来看, 跟随便都上百MB/s的MSAA频宽相比,
多边形耗费的频宽其实很少, 只是零头而已.
360架构上过去比较令人质疑的是GPU用的材质和多边型都放在主记忆体,
会不会频宽不足而影响效能.....从从多个测试数据上来看,
材质和多边型的频宽用量其实不太高. 应该不至于限制到效能的发挥.
可惜他没有对G7x也做同样的测试.
否则应该会很有趣.........
===================
<G72实际表现和硬体规格有落差的原因分析>
G72M比Xenos少了一半的ROP,少10%的时脉.
若频宽够用,G72M不开MSAA或开2XMSAA时,
理论上应该要有Xenos的45%左右的Fill Rate效能.
但是实际上,Color+Z测试却只有28%和14%左右....
在开启blending和4XMSAA时甚至只有不到5%.
(或者说,开启blending和4XMSAA时,其实4个ROP大多在等待记忆体....)
若G72M的ROP能支援color和Z的compression功能,
或许效能可以改善,但恐怕还是会与理论值差距很大.
因为某些频宽不足的惨况已经远超过Lossless compression的压缩率能补救的程度了......
这显示G72M频宽其实不足以支持4ROP同时对记忆体的读写.
也许若只有color或只有Z的情形会好一点吧.
频宽不足导致4ROP数量有点多余了,根本发挥不出来.
这部分是先天限制,不可能靠软体改善.
eDram的怪物频宽和一般GDDR记忆体根本不是同等级的东西.
那200GB/sec的实测数据,甚至连G80 SLI都不可能达到.....
Xenos在这方面只能说是怪物级的.
===================
熄灯断电~~~~明天再看~~~~潜力贴留名~~~~小白路过~~~~~
===================
这吹EDRAM的带宽原来是PS2上吹得,现在居然软饭又捡起来吹了
===================
從實測可以看出Xenos的Pixel shader性能很不錯,以G72m架構就RSX的規格「直接乘上單元數量差距的倍數」才能得到相近的表現(現實生活中不會這麼理想)。
其他方面如頂點、填充率等等很快很暴力,特別是頂點多邊形的測試已經是PS+VS同時下去跑的結果,出來的效能依舊很驚人。
360的設計思維還是與前代有所類似,中上的cpu配上強大的gpu
===================
Edram不错!
相对于4X MSAA ,简直就是免费的~:肥雀不是吧?!:
===================
期待PS3软硬件达人国家级项目程序员天师进来战翻你
===================
原帖由 sxyzero 于 2008-4-24 22:56 发表
这吹EDRAM的带宽原来是PS2上吹得,现在居然软饭又捡起来吹了
這優良傳統沒保持下去怪誰呢:企鹅玩蛋蛋:
況且ps2上得EDRAM跟360上的天差地遠,頂多只有幾個地方可以稍微拿來一起講
===================
C1还是比较强的(整体比RSX要强一些)
不过和G80比是人就知道是个笑话。。
8800GTS跑GeOW ,效果全开。1600x1200, 100多fps。。
还有说C1的频宽比G80大更是搞笑了。。
色彩压缩的效率在4X MSAA下几乎就是1:4, 如果这样算的话G80就是86G x 4 = 344 GB/s。
如果那没有色彩压缩的硬件来比较,就只能不客气地说没不懂装懂。。
实际填充率G80在C1的三倍以上(8 ROP vs 24 ROP)
[ 本帖最后由 Lee 于 2008-4-24 23:40 编辑 ]
===================
原帖由 Lee 于 2008-4-24 23:39 发表
C1还是比较强的(整体比RSX要强一些)
不过和G80比是人就知道是个笑话。。
8800GTS跑GeOW ,效果全开。1600x1200, 100多fps。。
还有说C1的频宽比G80大更是搞笑了。。
色彩压缩的效率在4X MSAA下几乎就是1:4 ...
後來有調整過?
http://texhnologix.blogzine.jp/t ... os_vertex_pe_1.html
調整前 = 6.683 fps, 112.128 MVerts/s (3.588 GB/s), 222.506 MTris/s (1.335 GB/s)
調整後 = 66.832 fps, 70.078 MVerts/s (2.242 GB/s), 135.819 MTris/s (0.815 GB/s)
===================
实际上4X MSAA free只有在无限大的三角形的情况才存在。
现实中4X MSAA的overhead在20%-30%之间。
===================
貌似强大的三红机,却没有半款游戏达到近似船长的效果,这不由得让人对微软的资金实力有了更深刻的认识,评测、分析、业内的畅所欲喷,我们见得太多,当然更多的是无休止的三红,正所谓风流总被雨打风吹去,再完美的呱噪,也不能阻挡无情的事实一把扯下大门的遮羞布,真相就在眼前,还能有多少台三红机能熬过这个夏天捏?:D
===================
每pixel频宽=Z read + Z write + Color read +Color write = 16bytes/pixel
MSAAx1: 58.982 Mpixels * 56.497 fps = 3332 Mpixels/sec( 53.317 GB/s)
MSAAx2: 58.982 Mpixels * 55.814 fps = 3292 Mpixels/sec(105.345 GB/s)
MSAAx4: 58.982 Mpixels * 54.895 fps = 3238 Mpixels/sec(207.220 GB/s)
如果是Color compression的硬件的话, 在4X MSAA下的耗费大约是
Z read + Z write ( 8 / 48 ) + Color read +Color write ( 8 ) = 8.16 bytes/pixel
3238 MP/s * 8.16 = 25.9 GB/s ~= RSX频宽。
如果场景复杂度提升, 则RSX的频宽会开始出现问题。
这也是NV为每128 bit BUS配备8个ROP的原因:满足最理想情况的理论值。
===================
为什么和 G72比 不和 G70比,
我的8600gt显卡 填充料是 2600M 单纹理
9100M 多纹理
===================
原帖由 网上的final 于 2008-4-25 00:06 发表
为什么和 G72比 不和 G70比,
我的8600gt显卡 填充料是 2600M 单纹理
9100M 多纹理
負責測試的日本人可能就是拿筆記本的GPU測試吧?
===================
ok,xo的gpu很强
===================
原帖由 Lee 于 2008-4-24 23:57 发表
如果是Color compression的硬件的话, 在4X MSAA下的耗费大约是
Z read + Z write ( 8 / 48 ) + Color read +Color write ( 8 ) = 8.16 bytes/pixel
3238 MP/s * 8.16 = 25.9 GB/s ~= RSX频宽。
我怎么觉得应该是
Z read + Z write ( 8 / 8 ) + Color read +Color write ( 8 ) = 9 bytes/pixel呢?
假设G70的Z-compress和R5xx是同一等级的话。
===================
吹个屌!妈 的三天不玩就红,还好意思吹,老子都红了三次,修了三次了!
===================
XO的GPU比PS3的GPU强这是铁打的
===================
原帖由 hourousha 于 2008-4-25 00:38 发表
我怎么觉得应该是
Z read + Z write ( 8 / 8 ) + Color read +Color write ( 8 ) = 9 bytes/pixel呢?
假设G70的Z-compress和R5xx是同一等级的话。
哈.我贴出来的时候想可能错了也不会有几个人发现,就懒得编辑了。
如果是R580的:
应该是 (3 + 3) * 4 / 48 = 0.5 byte。
不过那种填充率测试很可能已经被Z-cull reject掉了,那样Z bandwidth就是0。
===================
看着烦
===================
人家神姬有Cell,配合RSX可以实现DX10效果,你XO行么?
===================
~ C1 是统一渲染构架的 ~ G7X 是 VS PS 分离的 …… 自动平衡管线数量之后的结果很难说 …… 这其实某种程度上来说也是一个麻烦事情 ……
C1 的确比 RSX 更自由,这个是毋庸置疑。但是在性能上的实际差距,倒也是伯仲之间。譬如说,C1 可以做后期的指令数稍微多一些 …… 但是能有多大区别? 反正还是不能改算法,换了算法两家都跑不动 ……
通常做游戏,也不可能对平台的每一点点计算能力都斤斤计较。考虑到开发难度,比较合理的跨平台游戏做法还真是按照复杂的 PS3 做设计。接着直接搬到 360 去比较合适。
测试之后觉得慢的地方,改改贴图尺寸。快的地方,就随它快去了。:企鹅筛沙:
[ 本帖最后由 FXCarl 于 2008-4-25 01:41 编辑 ]
===================
原帖由 赵兄托你帮我办点事 于 2008-4-25 00:48 发表
吹个屌!妈 的三天不玩就红,还好意思吹,老子都红了三次,修了三次了!
所以说还不如来什么耐温测试 三红临界测试对玩家比较有意义:企鹅捶地: :企鹅捶地:
===================
XO的GPU显然是超了频的
===================
好吧。无论是PS3/XO,再好也好得十分有限。
玩机能玩PC去。同样价格秒杀你。。。
===================
频率超了30%?
===================
只有“怪物级”的C1才能造就三红的伟业。:小脸递眼色:
===================
PS3的构架就是一个拼凑之作,和XO是没法比的
想起久多当初的双1080P和 120FPS就可以看出sony个别人是多么愚昧
[ 本帖最后由 ooo 于 2008-4-25 09:19 编辑 ]
===================
原帖由 比卡丘 于 2008-4-25 01:09 发表
看着烦
严重同意
===================
原帖由 Lee 于 2008-4-25 01:02 发表
哈.我贴出来的时候想可能错了也不会有几个人发现,就懒得编辑了。
如果是R580的:
应该是 (3 + 3) * 4 / 48 = 0.5 byte。
不过那种填充率测试很可能已经被Z-cull reject掉了,那样Z bandwidth就是0。
其实我看Z-compress ratio这东西吧,R300时代的'up to 1/24'和R5xx时代的‘up to 1/48’其实都是乘上最大MSAA倍数(ATI是6)得来的(HyperZ一代宣传的ratio是1/2~1/4)。
换句话说,我认为4xMSAA的compress ratio,在最理想情况下,其实在R5xx大概只能到1/32。在R3xx上只能到1/16:吐舌头:
从这个角度讲,C1的eDRAM的bandwidth基本来说是按照‘最差的情况也能胜任’来设计的。而通常显卡是按照‘通常情况可以将就’来设计的。
===================
Pixel Shader ALU测试这个,C1用了整个48ALU全部资源(全用不过是Geforce7800GTX的等级),才能和RSX的PS对抗,那么游戏实作中,48ALU肯定要有部分做VS,PS会被分走,而RSX是独立的VS和PS,试问这PS不够7800GTX级别的C1如何对抗RSX的PS呢?至于那个G70用到TEX,PS效能减半的估算是基于C1的TMU = RSX的TMU的假想情况下(实际上差别比想象要大),基本上Shader性能高下已分(大概10:7),还是继续去歌颂EDRAM吧,虽然那FREE 4xAA已经是个笑话了。
===================
完全看不懂………………:肥雀寒:
===================
给我的感觉就是PS系都是以CPU为主力,强大的CPU+中上的GPU
XB系都是以GPU做主力,是倒过来的...
===================
原帖由 sxyzero 于 2008-4-24 22:56 发表
这吹EDRAM的带宽原来是PS2上吹得,现在居然软饭又捡起来吹了
PS2的外部总线频宽才3.2GB/S,吹得再悬乎也是扯淡,貌似XO的CPU和GPU之间有专用通道,可以直接调用CACHE,根本不具可比性。
===================
原帖由 网上的final 于 2008-4-25 00:06 发表
为什么和 G72比 不和 G70比,
我的8600gt显卡 填充料是 2600M 单纹理
9100M 多纹理
RSX的封装也是移动版一样的,再说了,可不可比是看ALU多一些吧?
ERAM容量太低,4XMSAA根本不够
[
本帖最后由 YY小熊猫 于 2008-4-25 11:49 编辑 ]
===================
原帖由 zhangjingy 于 2008-4-25 10:59 发表
Pixel Shader ALU测试这个,C1用了整个48ALU全部资源(全用不过是Geforce7800GTX的等级),才能和RSX的PS对抗,那么游戏实作中,48ALU肯定要有部分做VS,PS会被分走,而RSX是独立的VS和PS,试问这PS不够7800GTX级别的 ...
你还是一边呆着吧,RSX比得了7800?和7600玩去吧!频宽、寄存器都缩阳了还比什么?
===================
学习中~~两位业内对于压缩率的东西还是看不懂啊~~压缩率的数据从哪里得来的?
天师对c1和78gtx在alu上的分析,也挺有道理,不觉得有错,但是对于rsx和78gtx之间的变化却不能拿c1和78gtx的对比来做~~
free 2xaa 是rop层面的吗?
===================
原帖由 YY小熊猫 于 2008-4-25 11:48 发表
你还是一边呆着吧,RSX比得了7800?和7600玩去吧!频宽、寄存器都缩阳了还比什么?
RSX的PS级别可比7900,C1的48ALU全资源做PS,也才是7800。
===================
原帖由 YY小熊猫 于 2008-4-25 11:48 发表
你还是一边呆着吧,RSX比得了7800?和7600玩去吧!频宽、寄存器都缩阳了还比什么?
你最好别出来搞笑了。
RSX 24根完全的独立PS管线 频率500MHZ
7800的资料自己找去 懒得和你说了。。
RSX的PS和7900GT相比差不多。
===================
其实RSX做PS频率是550MHZ,VS频率是500MHZ,不知道出于什么考虑。:黄脸问号:
===================
原帖由 zhangjingy 于 2008-4-25 10:59 发表
Pixel Shader ALU测试这个,C1用了整个48ALU全部资源(全用不过是Geforce7800GTX的等级),才能和RSX的PS对抗,那么游戏实作中,48ALU肯定要有部分做VS,PS会被分走,而RSX是独立的VS和PS,试问这PS不够7800GTX级别的 ...
分析的非常的GOOD!
===================
性能再tgfc.qwd1.com好,一红就完蛋。
===================
原帖由 首斩破沙罗 于 2008-4-25 12:56 发表
性能再tgfc.qwd1.com好,一红就完蛋。
它娘地 它乱超频 它不完蛋。。。
===================
原帖由 codjc 于 2008-4-25 12:49 发表
分析的非常的GOOD!
:熊猫大笑: :熊猫大笑:
===================
原帖由 codjc 于 2008-4-25 13:01 发表
它娘地 它乱超频 它不完蛋。。。
水神说超频,都以为是超频么:企鹅扑腾: :企鹅扑腾:
===================
原帖由 ooo 于 2008-4-25 09:18 发表
PS3的构架就是一个拼凑之作,和XO是没法比的
想起久多当初的双1080P和 120FPS就可以看出sony个别人是多么愚昧
拼凑之作是万万达不到100%的三红率的,看样子你也是个什么主机也没有,只有台能上网的pc的人吧
===================
1/2页 ##1 ##2 下页
[登录后才可回复]