brendude13 said:
Badassbab said:
brendude13 said:
Ahh ok, I'm a little confused but I think I get the gist of it.
So basically everything that was offloaded onto the EDRAM is offloaded onto the SPU's for the PS3?
|
It'll put it another way.
360 has an Edram memory set up. So you have VRAM, RAM (Both share 512MB) and embedded EDRAM (which is 10MB). The framebuffer (i.e the resolution and AA amongst other things) needs to fit within the Edram (which is 10mb in size). If it doesn't fit in then the programmer either has to downgrade something like for example the resolution until it's small enough to fit or resort to predicted tiling which can in some cases lead to performance issues as it uses CPU resources. However if the framebuffer does fit, then the 360 get's tremendous amounts of bandwidth (278.4GBs vs 48GB for PS3). This is why more 360 games feature higher res transparency effects, computationally expensive shadows, depth of field, motion blur etc.
PS3 has a traditional split memory architecture. 256MB VRAM and 256MB RAM. The frame buffer uses up the VRAM on the PS3. So basically that's 256Mb for the PS3 vs 10Mb for the 360. Because of this the PS3 can be triple buffered. Framebuffers not an issue on PS3. The issue with the PS3 is it's weak GPU but it's ok now because programmers can offload tasked that were meant for the GPU onto the Cell's extremely fast SPU's. Put it this way the 360 has 3 x 3.2Ghz processor cores, PS3 has 1 x 3.2Ghz main processor core but 8 SPU @ 3.2Ghz each, 6 of which can be used for gaming (one is disabled and the other is used for the OS). So basically the PS3 can be 720p with all the bells and whistles due to the traditional memory set up and the Cell processor. 360 could've as well if MS hadn't been so short sighted with only 10Mbs. It really needed to be 30Mb to compete against the likes of Killzone 3.
|
Ahh ok, I get you now.
Just one question:
Why can't everything that is supposed to fit on the EDRAM be put onto the VRAM (shared), like the PS3?
|
Bandwidth is the reason, it's a hell of a lot faster to move something from the edram to the gpu than it is to move from ram to the gpu, that's why the PS3 can't do some things as well as the 360 can, the PS3 just can't move things to the gpu as fast. But Microsoft kinda cheaped out and put in 10 megs instead of 30, so the frame buffer can't be fit. So you either make it fit by cutting the resolution or you find other ways (Like tiling). Like you could not use the edram but that's a waste of that bandwidth which is very high, even faster than what PCs can do. On a side note the PS2 had edram instead of standard video ram, that's why devs were able to do what they could with the 4 megs that was available. A Volition dev likened the PS2 set up to have 10 megs of ram instead of 4, just because you can move data in and out so fast.
Edit: I just had the perfect example run into my head. Think of the ram as warehouses, the edram is a 1000 sqft warehouse and the vram is a 512000sqft warehouse and your store is your GPU. Now connecting these warehouses are two different highways, the vram's highway has 30km/h speed limit while the edram's highway has a 140km/h speed limit. So if you want stuff in your store you want to grab stuff from the edram cause it just takes to long to grab stuff from your vram, but you can't fit 512ksqft woth of stuff in 1000sqft, so as you move stuff out of your edram warehouse you move stuff into it (essentially tiliing), or you shrink your stuff in your 512ksqft warehouse till its 1000sqft, but you're gonna loose stuff. But you still want stuff coming from the edram cause it'll take like 10 minutes insead of an hour (making up the time since I never gave a distance).