Digital Foundry Article Technical Discussion [2023]

Status
Not open for further replies.
It's tricky proposition though. Cause the PS5 was created in a vacuum to make development easier for devs. So it would not matter if devs could cheat by using ps5s "secret sauce" if the game is only on PS5 and that's the result people see. But porting that to other platforms becomes more of an issue.

Essentially it's saying games would have to still be designed in a certain way to account for other platforms when that realistically shouldent be the goal as closed platform. Let the porting studio after the fact figure out how to best make the game work on PC. There are plenty of options

Well I’m assuming that in order to push the PS5 to the limit developers would still need to be smart about using available resources. So even with the awesome I/O and decompression pipeline you would still expect techniques like virtual texturing to be important when maximizing the potential of the platform.
 
Perhaps it's the GPU's ability to keep up with the decompression workload at the same time as the rendering. Which begs the question of how much data are you expecting to be streamed in parallel to actual gameplay? Even a modest GPU of around PS5 capability can decompress enough data to fill the entire VRAM of a standard 8GB GPU in less than 1 second. And you're never going to completely refresh you're VRAM like that mid gameplay. If I recall the Matrix awakens demo was streaming less then 150MB/s and I think @HolySmoke presented some details for Rifts Apart here before which show even that has modest streaming requirements on average.

Of course there will be full scene changes which including load screens or animations (which includes ultra short loads animations like the rift transitions in Rifts Apart) where a relatively large amount of data will be loaded from disk in a very short period, but you aren't actually rendering much of anything on the GPU at those points and so the entire GPU resources can be dedicated to the decompression much in the same way that the hardware block on the PS5 is used.


We know the VRAM used. As stated here, the default staging buffer size is 32MB, but the optimal size is 128MB. More can be added for larger VRAM pools. So it's very minimal compared with the available VRAM size on any modern GPU.

We can also draw some conclusions around GPU resources required given the link I posted above shows the 6600XT pushing in excess of 10GB/s. So if we were to assume a HUGE streaming speed of 1GB/s then that would take at most around 10% of the compute resources of a 6600XT - via async compute. Obviously faster loading speeds could be utilised during initial or fast travel loads which would use more GPU resources but at those times the GPU isn't needed for rendering meaning 100% of it is available for decompression.
Indeed. Developers will be able to hide some of the cost of decompression because they aren't always compute bound.. and depending on the assets you're going to get even higher bandwidths than 10GB/s... which also means that the length of time that performance COULD be impacted... will be much shorter.. or they could actually slow things down a bit to reduce the performance impact but still ensure the assets are loaded ahead of time. They also don't even need to use the GPU for everything.. they can still use the CPU to decompress assets if they want. They can figure out the optimal decompression setup for all their assets. And as you said... during initial loads... the GPU can absolutely tear through whatever it needs to load going full out since it's not rendering anything at that point... whereas the CPU would also have to do other things like file reads, copies, asset initialization, shader compilation and so on.. at the same time.

Look at Forspoken.. it doesn't even use GPU decompression and it loads faster than the PS5 version, or essentially as fast. We already know there's other CPU bottlenecks in the engine preventing it from going faster on both PS5 and PC.

Here's my 7GB/s Gen4 drive in that same avocado test, getting more than double the bandwidth.. meaning ~2.6x compression ratio. Of course not all assets will compress the same.. but this is true for PS5 as well. We're talking ~11GBs on PS5 for assets which compress well, and ~18GB/s on a Gen4 drive.
bulktest.png
 
Well I’m assuming that in order to push the PS5 to the limit developers would still need to be smart about using available resources. So even with the awesome I/O and decompression pipeline you would still expect techniques like virtual texturing to be important when maximizing the potential of the platform.
That's a great point man. I didn't actually think about it in that way
 
Why would data be struggling to get to where it needs to be on a properly equipped PC and application? Like I'm seriously asking you to explain the bottleneck here in terms of interfaces, bandwidth and processing capability vs workload because all I'm hearing are wild claims about PS5 superiority without any technical details to back them up.

What's with the harsh tone? What wild claims am I pushing? You're using the term superior, but I'd say PC and console solutions for data are just fundamentally different at the moment. It is the combination of more performant i/o architecture and unified memory that has allowed the consoles to be more nimble and outclass the PC platform with these newer games that pack in much larger assets and requiring efficient memory solutions that to keep performance at a high level. You don't have to accept my words. You can hear it straight from a developer. If you subsequently downplay the message of developers who are creating the games and working on all of these platforms then you're clearly blinded by arrogance, ego, and perhaps an obsession with the idea of PC dominance in all areas.


Obviously a PS5 is going to outperform an ill-equipped PC in this respect, (and as we've seen, if the application isn't properly utliising a correctly equipped PC, the result will be the same), but lets take an PCIe 4.0 NVMe equipped system utilising Direct Storage 1.1 with GPU decompression as a baseline along with a CPU and GPU that is at least a match for those in the console. And as a preview I will say that a little more CPU power on the PC side should be required for a similar result, but I'll leave you to explain the detail of why...

Don't you think we should wait for the implementation of directstorage in an actual game instead of comparing realities vs hypotheticals? We've heard so much promise about this API with no real world applications yet. Running benchmark tests is neat, but they're not games. We can only go off of what we're seeing in the present. Once a game with in-game streaming using directstorage goes commercial, I would be more than happy to compare and contrast. Until then, lets just stick with hard facts and realities.
 
What's with the harsh tone? What wild claims am I pushing? You're using the term superior, but I'd say PC and console solutions for data are just fundamentally different at the moment. It is the combination of more performant i/o architecture and unified memory that has allowed the consoles to be more nimble and outclass the PC platform with these newer games that pack in much larger assets and requiring efficient memory solutions that to keep performance at a high level. You don't have to accept my words. You can hear it straight from a developer. If you subsequently downplay the message of developers who are creating the games and working on all of these platforms then you're clearly blinded by arrogance, ego, and perhaps an obsession with the idea of PC dominance in all areas.




Don't you think we should wait for the implementation of directstorage in an actual game instead of comparing realities vs hypotheticals? We've heard so much promise about this API with no real world applications yet. Running benchmark tests is neat, but they're not games. We can only go off of what we're seeing in the present. Once a game with in-game streaming using directstorage goes commercial, I would be more than happy to compare and contrast. Until then, lets just stick with hard facts and realities.

There is one game using Direct storage forspoken and the game without using the GPU version load as fast as PS5 but we just need to wait a game using Direct storage 1.1. It will arrive soon probably.

EDIT: I watched the video and he said the problem is possible to solve with a 3060 like standard probably because of 12TB VRAM because they continue to target 1060 and PC without NVME SSD. I suppose a minimum target of 3060 12 GB, 16GB of RAM and 1GB SSD with Direct storage 1.1 could fully solve the problem.
 
Last edited:
What's with the harsh tone? What wild claims am I pushing? You're using the term superior, but I'd say PC and console solutions for data are just fundamentally different at the moment. It is the combination of more performant i/o architecture and unified memory that has allowed the consoles to be more nimble and outclass the PC platform with these newer games that pack in much larger assets and requiring efficient memory solutions that to keep performance at a high level. You don't have to accept my words. You can hear it straight from a developer. If you subsequently downplay the message of developers who are creating the games and working on all of these platforms then you're clearly blinded by arrogance, ego, and perhaps an obsession with the idea of PC dominance in all areas.


To be clear, that is the lead art director at a small indie studio - he is not an engine developer. He speaks in generalities when it comes to specifics because his knowledge in this area is, by his own admission, casual talks with other developers. I'd appreciate a little more detail myself, but that would require someone with more direct knowledge of the actual coding bottlenecks and their up/downsides of their potential workarounds, and specifically in this case, someone other than the Moores Law is Dead guy so we have someone who actually has the ability to ask insightful questions.

That doesn't mean what he said isn't by and large, true - I mean he's not really saying anything we haven't been hearing since the new consoles debuted 2 year ago, there is no doubt in terms of efficiency the hardware assisted decompression combined with the UMA architecture of consoles provides some obvious large benefits, especially for their price brackets. And I also agree that we can't start counting DirectStorage 1.1 as an automatic 'clawback' for the PC when we have yet to see a game ship with it (utilizing the newly added GPU decompression, that is). We'll see.
 
Last edited:
To be clear, that is the lead art director at a small indie studio - he is not an engine developer. He speaks in generalities when it comes to specifics because his knowledge in this area is, by his own admission, casual talks with other developers. I'd appreciate a little more detail myself, but that would require someone with more direct knowledge of the actual coding bottlenecks and their up/downsides of their potential workarounds, and specifically in this case, someone other than the Moores Law is Dead guy so we have someone who actually has the ability to ask insightful questions.

That doesn't mean what he said isn't by and large, true - I mean he's not really saying anything we haven't been hearing since the new consoles debuted 2 year ago, there is no doubt in terms of efficiency the hardware assisted decompression combined with the UMA architecture of consoles provides some obvious large benefits, especially for their price brackets. And I also agree that we can't start counting DirectStorage 1.1 as an automatic 'clawback' for the PC when we have yet to see a game ship with it (utilizing the newly added GPU decompression, that is). We'll see.

I watched a little more of the video and basically he said the problem is mostly coming from PC installed base. Basically if they were able to target only GPU with more than 8 GB, have as a minimum a 3060 12 GB or 2060 12 GB and all PC with SSD NVME, the problem of stuttering will be solved. He hopes in the future they will be able to stop target 1060 GPU for example.
 
I watched a little more of the video and basically he said the problem is mostly coming from PC installed base. Basically if they were able to target only GPU with more than 8 GB, have as a minimum a 3060 12 GB or 2060 12 GB and all PC with SSD NVME, the problem of stuttering will be solved. He hopes in the future they will be able to stop target 1060 GPU for example.

8gb is a reasonable minimum spec though I’m yet to see a game with visuals that justify more than 6GB at 1080p medium.
 
What wild claims am I pushing? You're using the term superior, but I'd say PC and console solutions for data are just fundamentally different at the moment. It is the combination of more performant i/o architecture and unified memory that has allowed the consoles to be more nimble and outclass the PC platform with these newer games that pack in much larger assets and requiring efficient memory solutions that to keep performance at a high level.

You've answered your own question in the bolded statements above. "More performant" and "outclass" are the same as "superior", at least in this context.

There is nothing fundamentally more performant about console IO architecture than the current state of the art in PC. It is in fact, less performant, in every respect compared to the currently best available PC solutions (lower transfer speeds, lower decompression throughput, potentially much higher latency depending on how the split memory pools are utilized), although it will obviously be more performant than the vast majority of PC's out there, and important to note will require less CPU performance to attain the same level of performance - no-one is arguing that fact.

If you had used the term "more efficient" (in terms of compute resources required for the same result) then I could support that, but more performant is simply wrong. The problem with your analysis is that you're basing it on issues experienced in several recent games, and here's why that's problematic:

  • You're mentioning "newer games" without being specific about what issues these games are having that you can place at the foot of a "less performant" IO architecture. Many of the stuttering and performance issues experienced in some recent games (Gotham Knights, Forsaken, Calisto, Sack Boy, Dead Space, Hogwarts etc...) were patched out post launch, and are often down to shader compilation stuttering which is completely unrelated to the IO system. This points at a software/development issue rather than an IO architecture one.
  • None of these "newer games" that you're referencing are using the modern storage API on PC that is specifically designed to address the requirements of the larger assets and higher streaming requirements that you cite as causing problems for PC. That is except Forsaken, which guess what - loads faster on the PC, albeit with higher CPU requirements, due not in small part due to the fact that it's still doing decompression on the CPU.
  • Even with the older and one could argue, unfit for purpose storage API in use (win32), all of these games - including TLOU - can offer consistently higher performance than the PS5 on sufficiently powerful PC hardware. I'm not a fan of brute forcing to a solution, but if you're arguing that the PC as a platform i.e. regardless of hardware used has a "less performant IO architecture" which allows the consoles to "outclass" said platform, in newer games, then why do all said newer games still perform consistently better on that platform with certain hardware configurations? PC IO can be less efficient, particularly when using sub optimal API's and decompression schemes, sure. But not less performant. And certainly not less performant if the optimal API's and decompression schemes where being used (along with just general optimisation to the platform) as Forsaken has shown us.

You don't have to accept my words. You can hear it straight from a developer. If you subsequently downplay the message of developers who are creating the games and working on all of these platforms then you're clearly blinded by arrogance, ego, and perhaps an obsession with the idea of PC dominance in all areas.

That's not "the message of developers". That's the message of one art director who as mentioned in other posts isn't ideally placed to talk definitively about the low level technical details being discussed here.

For example, at one point he talks about really bad experiences he's had in recent PC games, with "stuttering and hitching", then puts that at the feet of data transfers, and then later notes he doesn't know if the stuttering he experienced in another game was due to shader compilation stuttering or something else. And also to note that none of the games he's talking about use the modern storage API that is now available on PC, so straight away drawing conclusions about the general capability of PC IO from games that are literally not leveraging that capability properly, is a faulty premise.

In fact his description of how data is being decompressed and then passed "back and forth" between memory pools doesn't tally at all with how modern PC technologies, like Direct Storage, resizeable bar, and GPU decompression would work, which leads me to believe he's basing all of his statements on a fairly high level understanding of how things have been done in the past, rather than how they can be done in the present.

I'm not saying all games will use the potential of the PC's IO capabilities well. I think it's clear that many do not, and many will continue to not do so. But that holds true for consoles too. What percentage of PS5 games have sub 2 second load times? But the point here is that there is nothing fundamentally less performant about the PC's IO architecture that if utilised efficiently cannot result in very similar results to those we see on the PS5 with similar levels of hardware (again, a bit more CPU will always be required). Forsaken is a great example of what can be done when it's done properly. TLOU is a great example of what happens when it's not done properly.

Don't you think we should wait for the implementation of directstorage in an actual game instead of comparing realities vs hypotheticals? We've heard so much promise about this API with no real world applications yet. Running benchmark tests is neat, but they're not games. We can only go off of what we're seeing in the present. Once a game with in-game streaming using directstorage goes commercial, I would be more than happy to compare and contrast. Until then, lets just stick with hard facts and realities.

Again, Forsaken is the real world example which proves it's possible on the PC. I don't place that all at the feet of DirectStorage. I expect the lions share of that games impressive loading is down to simply being well optimised in that respect both for PC and PS5. We've seen other non DS games which perform very well in that respect on PC as well.

The point here though is you are also talking in theoreticals in saying that 'as a platform, the PC has a less performant IO architecture than the PS5', and you're making vague references to games that "prove" that while ignoring the existence of games which show the opposite. So putting aside individual implementations which can of course be sub optimal (which TLOU for example very obviously is), I am explaining at a hardware and API level why that's not actually the case. Whether the theoretical capability is put to good use in more than a handful of games moving forwards though is an entirely different argument. Consoles will certainly always have the advantage of receiving more targeted optimization than PC's and so the advantage sits with them from that perspective.
 
Last edited:
So the new Star Wars game has 8gb of VRAM as the minimum requirement. It also has 8gb as the recommended requirement so I don’t know what to make of that…. If it truly requires 8gb minimum, that’s a good thing. It shows progress. Hopefully soon, we can leave 8gb behind.
 
I watched a little more of the video and basically he said the problem is mostly coming from PC installed base. Basically if they were able to target only GPU with more than 8 GB, have as a minimum a 3060 12 GB or 2060 12 GB and all PC with SSD NVME, the problem of stuttering will be solved. He hopes in the future they will be able to stop target 1060 GPU for example.
lol.. I'm looking at the two games his studio has shipped..

ss_0610f7ae5d04ad32b963bbc83edfb1ae35e673f2.1920x1080.jpg
ss_f930ce562614afa1698cb7b5fd6a2420c48c6396.jpg


..and I'm wondering why they need 8GB GPUs.. and just how much their games are stressing current IO.. But I guess their "in development" title is an Unreal Engine 5 title... so that makes them experts on engines and architectural differences between platforms. 🤷‍♂️

That said, the first game "Star Renegades" looks awesome as hell, and I wishlisted it. :D
 
@pjbliverpool I read your post above and while I agree that the pc has more performant storage system, the whole memory subsystem on pc is far inferior to that on the ps5. It’s really not even debatable and you don’t need games to prove it. The fact that the swap between ram and vram doesn’t occur due to its heterogeneous memory architecture makes it infinitely superior. I’m not even going to the additional api specific features that make this a non debate. I don’t think you can in good faith argue that as it stands, the memory subsystem on pc is better.
 
lol.. I'm looking at the two games his studio has shipped..

ss_0610f7ae5d04ad32b963bbc83edfb1ae35e673f2.1920x1080.jpg
ss_f930ce562614afa1698cb7b5fd6a2420c48c6396.jpg


..and I'm wondering why they need 8GB GPUs.. and just how much their games are stressing current IO.. But I guess their "in development" title is an Unreal Engine 5 title... so that makes them experts on engines and architectural differences between platforms. 🤷‍♂️

That said, the first game "Star Renegades" looks awesome as hell, and I wishlisted it. :D
Quick question, what part of the guys argument are you refuting? I watched a bit of the video too and found nothing he said to be highly contentious? Also, why did you feel the need to post pictures of the two games his studio shipped? What does that have to do with the points he was making and why is it relevant to the discussion? Before I jumped to conclusions, I felt it would be best if I asked for clarification.
 
@pjbliverpool I read your post above and while I agree that the pc has more performant storage system, the whole memory subsystem on pc is far inferior to that on the ps5. It’s really not even debatable and you don’t need games to prove it. The fact that the swap between ram and vram doesn’t occur due to its heterogeneous memory architecture makes it infinitely superior. I’m not even going to the additional api specific features that make this a non debate. I don’t think you can in good faith argue that as it stands, the memory subsystem on pc is better.

I literally stated in that post, more than once, that the PC architecture is less efficient.

But let's not use hyperbolic statements like "infinitely superior". That is not the case at all. The HMA certainly makes it easier to work with from a developer perspective. And it creates more potential performance pitfalls on the PC side. And it can have performance benefits by reducing the need to copy certain working sets back and forth between memory pools. Although the recently released GPU Upload Heaps feature of DX12 should go large way towards mitigating all of those disadvantages when used properly in future.

But split memory pools also brings advantages of it's own:

  • Higher potential CPU performance due to having access to a lower latency pool of DRAM
  • Higher effective VRAM bandwidth due to the lack of memory contention
  • Potentially higher volumes of memory which if utilised properly could allow for solutions simply not possible on consoles. For example - using the RAM as a ultra low latency compressed staging cache for VRAM streaming (essentially using RAM in place of the SSD on the console and keeping that RAM populated with relevant data via background streaming from SSD.
 
Quick question, what part of the guys argument are you refuting? I watched a bit of the video too and found nothing he said to be highly contentious? Also, why did you feel the need to post pictures of the two games his studio shipped? What does that have to do with the points he was making and why is it relevant to the discussion? Before I jumped to conclusions, I felt it would be best if I asked for clarification.

Well for a start he referenced copying of data between memory pools as a major issue which could be significantly lessened moving forwards if features like re-bar and GPU upload heaps are properly used.

He also talked in terms of decompression in RAM before transfer to VRAM, which again is now a suboptimal solution for the PC.

And as noted in my earlier post, he talked in vague terms about issues of stuttering and frame rate swings on the PC while on the one hand putting that down to "architectural issues" and on the other stating it could have been shader compilation based. So his position was a bit vague, and undefined.

I think much of what he said is correct and relevant to how games have been developed in the past on PC. And how they may yet continue to be developed in sub optimal implementations in the future (lets say he's not filling me with hope for his studio's upcoming release), but it's not really relevant to academic analysis of the platforms actual architectural potential if fully and properly utilized.
 
Quick question, what part of the guys argument are you refuting? I watched a bit of the video too and found nothing he said to be highly contentious? Also, why did you feel the need to post pictures of the two games his studio shipped? What does that have to do with the points he was making and why is it relevant to the discussion? Before I jumped to conclusions, I felt it would be best if I asked for clarification.
I think it's pretty obvious why I posted them. Nothing they're producing is taxing any current I/O architecture. The guy can say whatever he wants... the basic fact is that we're not seeing anything from them which would suggest that they should be having any issues with current development paradigms between platforms they have developed games for. He's basically saying all the same things I could say with absolute basic knowledge of the architectural differences between consoles and PCs.
 
lol.. I'm looking at the two games his studio has shipped..

ss_0610f7ae5d04ad32b963bbc83edfb1ae35e673f2.1920x1080.jpg
ss_f930ce562614afa1698cb7b5fd6a2420c48c6396.jpg


..and I'm wondering why they need 8GB GPUs.. and just how much their games are stressing current IO.. But I guess their "in development" title is an Unreal Engine 5 title... so that makes them experts on engines and architectural differences between platforms. 🤷‍♂️

That said, the first game "Star Renegades" looks awesome as hell, and I wishlisted it. :D

He doesn't mean he only talk with people on his own studios. I have a friend working at Quantic Dreams and he knows people working at Ubi soft and other studios for example. And they talk about their job sometimes.
 
He doesn't mean he only talk with people on his own studios. I have a friend working at Quantic Dreams and he knows people working at Ubi soft and other studios for example. And they talk about their job sometimes.
I've talked to some developers who work at studios and told me stuff too. Doesn't mean I really understand the complexities, nor does it mean I understand the solutions.

To be clear.. I don't have any issue with the guy speaking.. But I would take issue with MLID passing him off as someone who has first hand knowledge.
 
I literally stated in that post, more than once, that the PC architecture is less efficient.
My apologies, I missed that….
But let's not use hyperbolic statements like "infinitely superior". That is not the case at all. The HMA certainly makes it easier to work with from a developer perspective. And it creates more potential performance pitfalls on the PC side. And it can have performance benefits by reducing the need to copy certain working sets back and forth between memory pools. Although the recently released GPU Upload Heaps feature of DX12 should go large way towards mitigating all of those disadvantages when used properly in future.
Imo, it’s infinitely superior and if it wasn’t, Microsoft wouldn’t have bothered bringing GPU upload heaps to dx12. Even with GPU upload heaps, it would still inferior to the consoles because the memory apis on consoles are better/easier to use. This in turn means that when it’s utilized, there’s a far greater chance of a successful implementation than anything with dx12. DX12 launched in July 2015 and almost 8 years later, it’s still debatably worse than dx11. If GPU upload heaps is utilized in a meaningful manner in the next decade, I’ll be pleasantly surprised.
But split memory pools also brings advantages of it's own:

  • Higher potential CPU performance due to having access to a lower latency pool of DRAM
True but, one could argue that the latency benefits are lost due to copying between ram pools.
  • Higher effective VRAM bandwidth due to the lack of memory contention
This can easily be solved by increasing the memory bandwidth on a hUMA system.
  • Potentially higher volumes of memory which if utilised properly could allow for solutions simply not possible on consoles. For example - using the RAM as a ultra low latency compressed staging cache for VRAM streaming (essentially using RAM in place of the SSD on the console and keeping that RAM populated with relevant data via background streaming from SSD.
True but again, Imo the downsides of split memory far outweigh the positives.
 
I think it's pretty obvious why I posted them. Nothing they're producing is taxing any current I/O architecture. The guy can say whatever he wants... the basic fact is that we're not seeing anything from them which would suggest that they should be having any issues with current development paradigms between platforms they have developed games for. He's basically saying all the same things I could say with absolute basic knowledge of the architectural differences between consoles and PCs.
I guessed why you did it but, I wanted to give you the benefit of doubt. This is a sleazy way to argue where you completely ignore the points he’s making and instead go for a personal attack that has nothing to do with his points. You can’t refute his points so you instead attack the individuals work in an attempt to invalidate his points. It’s basically a straw man.

Nothing he said was contentious and the games the company has shipped doesn’t necessarily reflect his knowledge or intelligence. He just happens to work at a game studio that hasn’t shipped that many big games yet.
 
Last edited:
Status
Not open for further replies.
Back
Top