This is my rant about the Xbox 360 GPU http://dpad.gotfrag.com/portal/story/35372/?cpage=2#comment_6047197 (in the comments section). If someone knows some technical details that I don't about the 360 please let me know. Based on the public information about the 360 Xenos GPU I have made my deductions. I am an experienced developer in 3D graphics on consoles and I have tried to make my calculations accurate but I may have made a mistake if there is some mystery of 360 I do not understand.
The Xenos GPU has an unprecendented bandwidth to it's 10MB of EDRAM of 256MB/s. If I understand correctly this peak bandwidth is actually only available when dong 4xMSAA. The actual writing bandwidth from the GPU is 32GB/s. This number is then multiplied by 8 to account for 4XMSAA times 2 for read+write operations.
Now if we consider the size of a full picture at 720p resolution (1280x720) with 8 bytes per pixel (color + Z) it almost fills the 10MB edram (over 7MB). In order to render that same picture with 4xMSAA four times the memory is required (over 28MB). This is the dilemma for the Xenos. In order to render such HD picture with AA it must do it in sections - in this case 3 sections.
This slicing is where Xenos pays the price. The developer must jump through hoops to render their scenes multiple times (actually I believe the Xbox 360 APIs take care of some of the work), but all this rendering multiple times is not free. All the geometry processing is duplicated, all the GPU state changes & texture changes are duplicated and so on. The only parts that are not duplicated are the pixels. So this will eat into the Xenos' edge over the RSX. In fact if whole scenes must be rendered 3 times we find that the effectove Xenos triangle setup rate now becomes lower than the RSX.
So the answer is that most developers probably won't render full 720p with 4XAA on the 360. They may drop below 720p or they may drop the AA. 720p with 2XAA still requires 2 passes. A possible resolution achievable in one pass could be 1024x576 with 2xAA. Anything higher would require multiple passes.
Instantly we see that anything using 4XAA is overbooking the size of the EDRAM, while using anything less than 4XAA is underusing the EDRAM bandwidth. In fact the Xenos is not even equipped to render 480p with 4XAA in a single pass (requires 10.5MB). A slight design flaw there.
The RSX can address the full 512MB of the PS3 so it has no such issues with frame buffer size.
So you see there is a tradeoff with the 360 GPU. You can render true 720p at a rate perhaps comparable to the RSX or slower. Or you can render 720p without any AA, or 60% below 720p with only 2xAA - really fast. This is the contradiction of the Xenos' design: so much power but a limited space to use it in. For the Xenos design to have been perfectly suited to the 360, over 28MB of EDRAM would have been required.
Taking things in context, these days consumers complain if there is no AA. And also in context I think consumers would be a bit annoyed to find out that 360 games are not truly 720p. So, developers have little choice but to please consumers with HD and AA and sacrifice their Xenos performance to do slicing & dicing. With this in mind, do not expect the 360 to beat the PS3 in graphics terms unless the 360 game is actually well below 720p.
Just some food for thought, in order to render 1080p with 4X AA would require 7 passes on the Xenos, so even if the Xenos setup rate was 4 times faster than the RSX it would still be the underdog. While on the cover it seemed the Xenos would have been better at doing 1080p than the RSX, things are not what they appear when considering all factors.
Log in to comment