Some Xbox 360 and PS3 questions

As I know anly beggers can be stored in EDRAM on XBox 360. Bandwith between main core and EDRAM core is 32 GB/s, so that is 16 GB/s each direction. If we devide that to 30 (for 30fps game) then that is almost 550 MB per frame. But why ATI made GPU with so much bandwith? I mean if game uses 1 tile that is 10 MB per frame, so 10 MB will be moved each direction. Can anyone explain please?
It's basically just the rate at which the ROPs can be fed. They used a wide enough bus to clock data to the ROPs at the rate the ROPs could use it.

10MB as a "per frame" number is meaningless for this. ROPs often have to perform many operations on a given pixel, and they also often have to perform many operations that aren't in the final framebuffer (such as when rendering shadow maps).

For PS2 that is understandable. All that massive bandwith was used for multipass, because data swould be moved many many times, and for textures, that also was used many many times. But I don't understand for what that bandwith was used on XBox 360.
PS2 is an extreme case: the graphics architecture of that console needed to be able to do a huge amount of operations on the framebuffer, because it couldn't do as many (or as complex) operations on a fragment upstream of the framebuffer. The ROPs were, essentially, performing some of the role that we would typically attribute to "pixel shaders."

But none of this really matters. You have to look at the context. It wasn't that expensive for the 360 to provide a high-throughput bus between Xenos and EEDRAM, it was natural in the architecture. Much in the same way that the neck on a can of Better Than Bullion allows you to empty most of the contents quickly should you choose to do so: it's not hard for them to design the can in that way, and there's no good reason to make it narrower, even if people will often just scoop out a teaspoon.
 
I always knew what HTupolev answer will be amazing!
10MB as a "per frame" number is meaningless for this. ROPs often have to perform many operations on a given pixel, and they also often have to perform many operations that aren't in the final framebuffer (such as when rendering shadow maps).
I know what bandwith inside chip is 256 GB/s, 8 times more than external bandwith, and that is made for 4xMSAA, 4x for pixels and 4x for z/stencil, but that still doesn't andswer what for have such wide external bus. Even if there are 3 tiles that will be 30 MB data per frame (900 MB per second) going from main core to EDRAM core and back, that is 2GB of data at max. As I know when frame or tile was ready in EDRAM core, then taht was written to main RAM as front buffer. So one pixel wasn't moved from main core to EDRAM core more than 1 time.

PS2 is an extreme case: the graphics architecture of that console needed to be able to do a huge amount of operations on the framebuffer, because it couldn't do as many (or as complex) operations on a fragment upstream of the framebuffer. The ROPs were, essentially, performing some of the role that we would typically attribute to "pixel shaders."
I know that, but thanks for explanation. As I said for PS2 that is understandable, as I know some games used 10 or more passes per frame, plus some textures was used from EDRAM multiple times, because of repeated multiple times for one frame. But on 360 that wasn't like that.

But none of this really matters. You have to look at the context. It wasn't that expensive for the 360 to provide a high-throughput bus between Xenos and EEDRAM, it was natural in the architecture.
Whay ATI haven't used as an example 2-4 GB/s bus, that would've been cheaper?

Not really the thread but imagine PS3 going with ATI for the GPU..
That was disscused on one other forum many years ago. But even without that disscussion it's possible to tell what that would've been amazing. I thing graphics completely would've been on Xenos and Cell would've been used for physics, animation and simulation. Then we woul've get games closer to E3 2005 demos Sony showed. Of course that doesn't mean there would've been games on PS3 with graphics like in Killzone 2 and Motorstorm demos, but something close in terms of physics, animation and simulation would've been possible. Very sad. PS3 was last console with interesting hardware. PLan was to make more interactive games. After PS3 hardware become standard everywhere. I don't think we will get games with a lot of physics and interaction soon ar in near future. Graphics is great but physics in almost all games is still near PS2 level. Baldur's Gate Dark Alliance water. Ouch.
But imagine Xbox 360 with Xenon and RSX. LOL.
 
I know what bandwith inside chip is 256 GB/s, 8 times more than external bandwith, and that is made for 4xMSAA, 4x for pixels and 4x for z/stencil, but that still doesn't andswer what for have such wide external bus. Even if there are 3 tiles that will be 30 MB data per frame (900 MB per second) going from main core to EDRAM core and back, that is 2GB of data at max. As I know when frame or tile was ready in EDRAM core, then taht was written to main RAM as front buffer. So one pixel wasn't moved from main core to EDRAM core more than 1 time.
I can't answer directly but I can correct you on this common misconception. A faster bus isn't necessarily just about moving a larger maximum amount of data, but moving an amount of data faster meaning less waiting. A slower bus that takes 10 ms to move data to/from functional units leaves them only 6.66 ms of a 60fps frame to work on that data. If the same data takes 1 ms to transfer, you have 14.66 ms to work on it.

If you need to water a horse, and it drinks 1 litre over an hour, and you have a teaspoon to move water from the well to a trough at a rate of 16.7 ml per minute, you can just about keep that horse watered moving water over a whole hour. If instead you have a hose capable of a gazillion litres per minute, you can fill the trough in seconds and have the rest of the hour doing other things - lassoing steers or shooting holes in cards - while the horse drinks.

We tend to focus on buses in terms of amounts of data moved, often overlooking the time it takes which is just as important. A bus doesn't need to be used 100% of the time to be well balanced.
 
Your post explains a lot. Thank you very much. But one additional question. How about other systems of that time. PS3 had 20,8 GB/s, high-end PC ~40 GB/s, but PS3 and PC aslos used that bandwidth for other data. How much they lost in terms of performace bacause of that?
 
I know what bandwith inside chip is 256 GB/s, 8 times more than external bandwith, and that is made for 4xMSAA, 4x for pixels and 4x for z/stencil, but that still doesn't andswer what for have such wide external bus. Even if there are 3 tiles that will be 30 MB data per frame (900 MB per second) going from main core to EDRAM core and back, that is 2GB of data at max. As I know when frame or tile was ready in EDRAM core, then taht was written to main RAM as front buffer. So one pixel wasn't moved from main core to EDRAM core more than 1 time.
They needed to move shaded samples to daughter die and didn't want memory bus to be limiting factor.
 
Back
Top