*spin-off* Battlefield 3 on Consoles

If DICE are going with MLAA on PS3 it means they aren't happy with the performance of FXAA or they have absolutely no GPU time to spare but have time on the SPUs

Probably the latter, seeing as how FXAA is pretty much comparable to MLAA (and in any case way better than the no AA of Bad Company 1/2).

It's likely that the 360 version will use FXAA (they seemed to have dumped their SRAA technique since FXAA came out) which will be more than satisfactory in IQ terms.

How does FXAA deal with the 'screen door' effect of A2C coverage on transparencies - which was by far the biggest problem with BC2s graphics on 360 (though apparently it was a rather asinine artistic choice to use A2C rather than technical limitations since the PS3 version uses the conventional alpha test)

Also wouldn't the 360s huge advantage in geometry (2x the triangle setup of the PS3) mean more agressive LOD on the PS3 version given the vast environments to be rendered?

Though this wasn't the case with BFBC1/2 where LOD and geometry on screen was basically identical between the two consoles - is there PS3 doing something else to compensate for the deficit? eg. SPUs used to process/cull geometry - or are the levels simply designed with the lowest common denominator in mind?
 
If DICE are going with MLAA on PS3 it means they aren't happy with the performance of FXAA or they have absolutely no GPU time to spare but have time on the SPUs

Probably the latter, seeing as how FXAA is pretty much comparable to MLAA (and in any case way better than the no AA of Bad Company 1/2).

It's likely that the 360 version will use FXAA (they seemed to have dumped their SRAA technique since FXAA came out) which will be more than satisfactory in IQ terms.

How does FXAA deal with the 'screen door' effect of A2C coverage on transparencies - which was by far the biggest problem with BC2s graphics on 360 (though apparently it was a rather asinine artistic choice to use A2C rather than technical limitations since the PS3 version uses the conventional alpha test)

Also wouldn't the 360s huge advantage in geometry (2x the triangle setup of the PS3) mean more agressive LOD on the PS3 version given the vast environments to be rendered?

Though this wasn't the case with BFBC1/2 where LOD and geometry on screen was basically identical between the two consoles - is there PS3 doing something else to compensate for the deficit? eg. SPUs used to process/cull geometry - or are the levels simply designed with the lowest common denominator in mind?
Don't you mean the difference in the GPUs (not consoles)? I believe the SPUs can easily make up the difference in the geometry (according to even very old SPU test numbers) between the two GPUs.
 
If DICE are going with MLAA on PS3 it means they aren't happy with the performance of FXAA or they have absolutely no GPU time to spare but have time on the SPUs

That's my question. ^_^

Will we save more time if a SPU MLAA implementation is replaced by a SPU FXAA implementation ? Assuming we are happy with the quality.

If DICE stick with MLAA, it could also mean that they are happy with the result in the given time, and felt no need to switch to other form of AA.
 
Transferring gbuffer+z and 3 mrt from rsx pool to main mem takes 1.3 ms if i remember well. How much time does it take to transfer frame buffer back and forth for mlaa? I thought i read somewhere in another thread that gpu fxaa takes about 1 ms+. Isn't the transfer time defeating the purpose of doing AA on the spu if doing fxaa on the gpu takes shorter than the transfer time? (Don t flame me i have no idea how much data takes the frme buffer comparatively to gbuffer...)
 
Would be interesting to see how well the 360 cope with a full Deferred Renderer with FP16 HDR and AA. Wonder if they'll get away with it by tiling or simply go the route of 1152 x 720.
 
Transferring gbuffer+z and 3 mrt from rsx pool to main mem takes 1.3 ms if i remember well. How much time does it take to transfer frame buffer back and forth for mlaa? I thought i read somewhere in another thread that gpu fxaa takes about 1 ms+. Isn't the transfer time defeating the purpose of doing AA on the spu if doing fxaa on the gpu takes shorter than the transfer time? (Don t flame me i have no idea how much data takes the frme buffer comparatively to gbuffer...)

Compared to MLAA, it's supposed to be less intensive. And if they are doing MLAA, then the data should be in the main memory already. If FXAA can free up more SPU cycles without losing too much quality, the SPUs can be reserved for something else.
 
Would be interesting to see how well the 360 cope with a full Deferred Renderer with FP16 HDR and AA. Wonder if they'll get away with it by tiling or simply go the route of 1152 x 720.

From what I have understood (I suppose obviously) on the 360 DiCE will use a different system of lights (not has mentioned a 'special' treatment for the 360?) to the deferred so maybe the tiling could not to be a problem.
 
Compared to MLAA, it's supposed to be less intensive. And if they are doing MLAA, then the data should be in the main memory already. If FXAA can free up more SPU cycles without losing too much quality, the SPUs can be reserved for something else.
Ok i simply thought the spu had to kick back the tiles to the graphx mem when they finished working on shading. Then rsx was supposed to finish the rendering. That s why i thought the frame buffer was in rsx mem and had to be transfered to main memfor spu mlaa....my bad.
 
Also wouldn't the 360s huge advantage in geometry (2x the triangle setup of the PS3) mean more agressive LOD on the PS3 version given the vast environments to be rendered?

Though this wasn't the case with BFBC1/2 where LOD and geometry on screen was basically identical between the two consoles - is there PS3 doing something else to compensate for the deficit? eg. SPUs used to process/cull geometry - or are the levels simply designed with the lowest common denominator in mind?

Judging by DICE's previous work on the consoles, I wouldn't expect any kind of difference with the LOD. The 360 may have some advantages, but if they end up using a tiled set up, any geometry passing through the tiles would have to be processed all over again, right? Then again they could also go for a sub-HD resolution to avoid tiling like many games do with deferred rendering. We'll see, but I still don't expect any kind of difference in LOD.

Don't you mean the difference in the GPUs (not consoles)? I believe the SPUs can easily make up the difference in the geometry (according to even very old SPU test numbers) between the two GPUs.

The Cell is used for culling and packaging, the RSX still has to render them, at least that's what I remember reading here a while ago. So I'm not so sure Cell can bridge the gap between the two GPUs in this regard.

Would be interesting to see how well the 360 cope with a full Deferred Renderer with FP16 HDR and AA. Wonder if they'll get away with it by tiling or simply go the route of 1152 x 720.

I know things can change all the time, but seeing as how the PS3 version is currently slightly sub-HD, I'm expecting the 360 to be sub-HD as well.

I thought I read that they were already tiling on the PS3, so if that's the case, then their engine already supports tiling. Though I have my doubts with how well the 360 could process through multiple tiles in a game this graphically intensive.
 
Judging by DICE's previous work on the consoles, I wouldn't expect any kind of difference with the LOD. The 360 may have some advantages, but if they end up using a tiled set up, any geometry passing through the tiles would have to be processed all over again, right? Then again they could also go for a sub-HD resolution to avoid tiling like many games do with deferred rendering. We'll see, but I still don't expect any kind of difference in LOD.



The Cell is used for culling and packaging, the RSX still has to render them, at least that's what I remember reading here a while ago. So I'm not so sure Cell can bridge the gap between the two GPUs in this regard.



I know things can change all the time, but seeing as how the PS3 version is currently slightly sub-HD, I'm expecting the 360 to be sub-HD as well.

I thought I read that they were already tiling on the PS3, so if that's the case, then their engine already supports tiling. Though I have my doubts with how well the 360 could process through multiple tiles in a game this graphically intensive.

The Cell this time is used more for the graphic, DiCE compared its job how an added 'gpu' (in its limits) & RSX is more dedicated to the post processing, I think it's a totally different approach from what we have seen until now (not remember any precedent but I could wrong)
 
Ok i simply thought the spu had to kick back the tiles to the graphx mem when they finished working on shading. Then rsx was supposed to finish the rendering. That s why i thought the frame buffer was in rsx mem and had to be transfered to main memfor spu mlaa....my bad.

The RSX will do the final blending. Not sure how long it takes. It's entirely possible that doing FXAA in RSX alone is more efficient. OTOH, the SPUs are free and more flexible. The dev have a choice how to distribute the FXAA work beforehand.

As I understand, the data are in the main memory because the SPUs light the scene in chunks of 64x64 tiles. Meanwhile, RSX handles cascade shadow, particles and SSAO:
http://www.slideshare.net/DICEStudio/spubased-deferred-shading-in-battlefield-3-for-playstation-3
 
The Cell this time is used more for the graphic, DiCE compared its job how an added 'gpu' (in its limits) & RSX is more dedicated to the post processing, I think it's a totally different approach from what we have seen until now (not remember any precedent but I could wrong)

So you're saying the Cell is setting up and rendering the polys being displayed on the screen? The deferred shading is being done the Cell, right? But how would they be textured and such with using the RSX?

If what you say is true, then great, but I haven't read anything regarding their engine that indicates this.
 
Last edited by a moderator:
The Cell this time is used more for the graphic, DiCE compared its job how an added 'gpu' (in its limits) & RSX is more dedicated to the post processing, I think it's a totally different approach from what we have seen until now (not remember any precedent but I could wrong)

The basic technique and framework are similar but they use the computing resources for different subsystems. I remember someone mentioned that ND also uses 64x64 tiles for some SPU tasks in their deferred renderer but I forgot what >_<

In BF3, they use triangle culling and SPU shading to lighten the RSX load. The RSX can take more time to perform it's assigned tasks; or both of them render more effects within the same time. Their slides mentioned that RSX main geometry pass takes 6-10ms, SPU shading budget is 40ms across 5 SPUs, tiled lighting overhead is 1-4 ms, transfer from local to main memory takes 1.3ms. If all the work is done on the RSX, we can skip the 1.3ms transfer overhead, but it will have MUCH less time for the geometry work and everything else.

The above timing also does not include the saving from triangle culling. We should be able to render a richer, more complex and dynamic scene by using them together.

In terms of selecting work for RSX and SPU, it is also flexible and depends on implementation. e.g., In PhyreEngine, SSAO can be done on 2 SPUs in 6ms, the RSX implementation took 10ms, but over here DICE uses RSX for SSAO (probably different implemention ?)

Time is also not everything. Since the SPUs are more flexible than the RSX, they can run more complex and accurate algorithm instead of approximation. e.g., SPU MLAA in GoW3 has better quality compared to fast GPU MLAA.

However, the added complexity and communication overhead can (often) undo some of the saving. It is non-trivial to implement the entire system. Memory is also a problem. That's why it is still unclear if the final output will be robust/stable.
 
So you're saying the Cell is setting up and rendering the polys being displayed on the screen? The deferred shading is being done the Cell, right? But how would they be textured and such with using the RSX?

Is texturing on RSX a bottleneck ? The most common complain is the vertex setup.

I've read that compared to the original GPU, RSX has extra logic to fetch textures from the main memory and also a larger texture cache. Admittedly, I have no way to verify this. ^_^

If the SPUs can help to complete tasks earlier or even skip some work altogether (e.g., Via triangle culling), is it possible for RSX to have more time to do texturing ? It should only need to work on vertices that matter.
 
Is texturing on RSX a bottleneck ? The most common complain is the vertex setup.

I've read that compared to the original GPU, RSX has extra logic to fetch textures from the main memory and also a larger texture cache. Admittedly, I have no way to verify this. ^_^

If the SPUs can help to complete tasks earlier or even skip some work altogether (e.g., Via triangle culling), is it possible for RSX to have more time to do texturing ? It should only need to work on vertices that matter.

That's not what I'm saying. Culling and rendering polys are different things.

How I read assurdum's post, he was implying that the Cell was being used more as a GPU in BF3, while the RSX was mostly being used for post processing effects.

I wasn't clear on what he was trying to say so that's why I asked the questions in my last post.

A while ago, someone posted how the Cell was used for culling and packaging (or something along those lines) while the RSX still needed to do the set up and rendering. This was a reply to someone else indicating that the Cell can make up the difference in geometry, which lead me to believe that the Cell would not close the gap between the two GPUs on this specific subject.

Who knows, I could be wrong. I'll try to find the post in a bit when I have time at work.
 
That's not what I'm saying. Culling and rendering polys are different things.

How I read assurdum's post, he was implying that the Cell was being used more as a GPU in BF3, while the RSX was mostly being used for post processing effects.

I wasn't clear on what he was trying to say so that's why I asked the questions in my last post.

A while ago, someone posted how the Cell was used for culling and packaging (or something along those lines) while the RSX still needed to do the set up and rendering. This was a reply to someone else indicating that the Cell can make up the difference in geometry, which lead me to believe that the Cell would not close the gap between the two GPUs on this specific subject.

Who knows, I could be wrong. I'll try to find the post in a bit when I have time at work.

Errr.... I haven't said exactly that, I'm talking to reserve different tasks compared the most commons used on both (RSX & Cell) by the way DiCE has released a bunch of data tech where talking about my quote... if you search in the previous posts you see what I means...
 
Last edited by a moderator:
Errr.... I haven't said exactly that, I'm talking to reserve different tasks compared the most commons used on both (RSX & Cell) by the way DiCE has released a bunch of data tech where talking about my quote... if you search in the previous posts you see what I means...

My apologies then, since you replied directly to my comment on the Cell and RSX, I assumed you were talking about that specifically.

I also found that older quote I was referring to:

Originally Posted by (((interference)))
It'd be interesting to know what console game pushes the most triangles? Does the PS3 have an advantage with using the SPUs for processing geometry?

SPUs are for packaging and culling. RSX still has to set them up and render.

http://forum.beyond3d.com/showpost.php?p=1528614&postcount=264
 
Ah, but that's not a complete answer. He's saying the SPUs can be used for (triangle) culling and packaging (post processing ?). Effectively, it means what I mentioned above. The RSX will have less vertices to worry about, and can focus on the vertices that matter. At that time, we also didn't know about BF3's occlusion culling on SPU. Today, we know it can be used in animation, skinning and lighting also. The RSX and SPUs can also work on different frames at the same time.

At the end of the day, the hardware absolute numbers may be important, but the overall architecture and how the software subsystems are lined up will make a big difference too (i.e., Depends on how you use the h/w, bottlenecks may be elsewhere).

e.g., Rather than just culling, Uncharted and God of War have more dynamic levels like fighting on the Titans, moving train, collapsing building, tipping boat.

I'm sure the 360 GPU can be used to perform impressive custom solutions too. On that architecture, since the pipeline is unified and predictable, it should be (much) easier to achieve high performance in a consistent way.
 
Ah, but that's not a complete answer. He's saying the SPUs can be used for (triangle) culling and packaging (post processing ?). Effectively, it means what I mentioned above. The RSX will have less vertices to worry about, and can focus on the vertices that matter. At that time, we also didn't know about BF3's occlusion culling on SPU. Today, we know it can be used in animation, skinning and lighting also. The RSX and SPUs can also work on different frames at the same time.

At the end of the day, the hardware absolute numbers may be important, but the overall architecture and how the software subsystems are lined up will make a big difference too (i.e., Depends on how you use the h/w).

e.g., Rather than just culling, Uncharted and God of War have more dynamic levels like fighting on the Titans, moving train, collapsing building, tipping boat.

I'm sure the 360 GPU can be used to perform impressive custom solutions too. On that architecture, since the pipeline is unified and predictable, it should be (much) easier to achieve high performance in a consistent way.

I understand that and wasn't debating that exactly. :smile:
 
Judging by DICE's previous work on the consoles, I wouldn't expect any kind of difference with the LOD. The 360 may have some advantages, but if they end up using a tiled set up, any geometry passing through the tiles would have to be processed all over again, right? Then again they could also go for a sub-HD resolution to avoid tiling like many games do with deferred rendering. We'll see, but I still don't expect any kind of difference in LOD.

So you're saying they build their environments (for BC1&2 at least) for the lowest common denominator (ie RSXs vertex performance)?

I know things can change all the time, but seeing as how the PS3 version is currently slightly sub-HD, I'm expecting the 360 to be sub-HD as well.

I thought I read that they were already tiling on the PS3, so if that's the case, then their engine already supports tiling. Though I have my doubts with how well the 360 could process through multiple tiles in a game this graphically intensive.

Yes, I suppose they couldn't ditch FP16 and go with lower precision lighting like Bungie did from H3 to Reach as BF3's realistic lighting is what really makes the game stand out.
 
Back
Top