I did not know this, can someone explain to me in more detail how can the 360 manage to only use 7MB back buffer compared to the 30MB the PS3 uses for 1280X720 4xAA.
http://www.eurogamer.net/articles/digitalfoundry-blur-tech-interview?page=2
At 4xmsaa, you need to store data for 1280x720x4 pixels, or 3686400 pixels total. For each of those pixels you need both color and z data each of which is typically 4 bytes/pixel. So if you need 8 bytes/pixel then it comes to 3686400 * 8 = 29491200 bytes total, or around ~28mb needed to store the temporary msaa data. On PS3 there is no scratch memory space so that 28mb eats up part of the 512mb of memory that it has.
On 360 the overall total amount of memory needed to complete the 4xmsaa process is identical, 28mb. The difference is that it takes 0mb of the main 512mb of memory because the 10 edram memory is used. You render it as multiple tiles, so instead of rendering it as 1280x720x4, you render it in three parts:
1) 1280x256x4
2) 1280x256x4
3) 1280x208x4
Assuming again 8 bytes per pixel means that tile #1 above needs 1280x256*4*8 = 10485760 bytes, which is exactly 10mb. Because it's all done in edram, that means that 0mb of the 512mb of memory is needed to do msaa on 360. In otherwords, all things being equal if you use 4xmsaa on both PS3 and 360 versions of the game, then you will need to free up an additional ~28mb on the PS3 version to make it fit into memory.
I'm not quite sure why the article says it takes 7mb on 360 though. On both machines you need a final 1280x720 buffer to resolve to, which would be around 7mb in size, but I don't know why they include that figure on the 360 memory total but not on the PS3's. If you go by just memory needed for 4xmsaa, then it's ~28mb on PS3 and 0mb on 360. If you include the final resolve buffers into that then it's ~35mb on PS3 and ~7mb on 360.
What about MLAA though? How much memory does that take?
Not sure on this, but worse case I think you need two 1280x720 color buffers, or best case probably just one. Because the mlaa process is done in parallel on spu's (while the gpu does other stuff) means that you have to keep a single 1280x720 source color buffer around for the spu's to munch on, and make sure nothing else writes to it during that process, so that memory needs to be kept around. However It's possible that other post process steps are using that same that pre-mlaa'd color buffer for other stuff in which case you could consider that memory free as far as mlaa goes. For the second buffer, presumably you need a destination 1280x720 mlaa'd output buffer somewhere in memory, and again because it's happening in parallel with the gpu I would assume that it's a secondary backbuffer. In other words, while the gpu is writing to the main backbuffer doing whatever it needs to do, the spu's are in parallel writing to another backbuffer. Hence why I figure it's worse case two 1280x720 color buffers of memory, and best case jsut one. Just a guess though.