Xbox One’s eSRAM Can Result Into Substantial Speed Ups, Expensive Draw Calls Can Be Rendered Into It
“You have to plan ahead, you have to think how you are going to use the memory, in the most optimal way,” says Confetti FX founder Wolfgang Engel.
If there’s any criticism that has been pointed out the Xbox One the most since its release, it’s been the viability of the console’s eSRAM. While some developers have praised it for its tile-streaming capabilities, others have blamed it as being the reason for the console’s inability to reach 1080p/60 FPS on most games.
Following up on our last conversation, GamingBolt spoke to Confetti FX’s Wolfgang Engel, the man who headed the development of the RAGE engine for Rockstar titles like Grand Theft Auto 4, Read Dead Redemption, Midnight Club Los Angeles and many more in the past, about the potential of the Xbox One’s eSRAM and whether developers would be utilizing this feature any time soon.
Engel stated, “eSRAM is very fast memory. In general the biggest challenge that game developers are facing are memory access patterns, so while we have a lot of computation power, the memory access cost is increasing substantially over the last ten years, compared to the cost of arithmetic instructions.
“As long as you are in registers you are fine but as soon as you need to access memory, it becomes slower. So the challenge is to access memory in the most efficient way.
“Therefore memory access patterns are the most important optimization strategies. So it’s not about counting cycles but it’s about thinking how can we re-factor an algorithm so that we can access memory in a more efficient way. eSRAM is part of that.
“For example with a compute shader you can access cache memory (thread group shared memory) so you can re-factor your algorithm so that it uses this memory better, resulting in a huge and substantial speed ups. With the Xbox One, the introduction of eSRAM has a similar idea.
“The memory expensive draw calls can be rendered into eSRAM. When you don’t need so much memory bandwidth, you use the regular system memory. You have to plan ahead, you have to think how you are going to use the memory, in the most optimal way. So eSRAM gives you an advantage if you do this. For one of our games, we used eSRAM by creating an excel sheet first, that shows how we are going to use eSRAM through the stages of the rendering pipeline. This helped us utilize the speed improvements that were coming from the eSRAM.”
Wolfgang definitely has a valid point. Developers can see the benefits of eSRAM only when they plan for it and use it accordingly. We do know that Crytek used it intelligently when developing Ryse Son of Rome and it will be interesting to see how developers utilize it in the coming years.
What are your thoughts on the same? Let us know in the comments.
This is just a snippet of our interview with Confetti and we will have more in the coming days.