It was Fabian Giesen in one of his blogs that specifically said the IO helper processors in the PS5 are nothing special and that every SSD controller has them. They are just DMA engines running custom firmware. That's the whole point of DMA - to offload the work of data transfers from the CPU.
"Plus it has other benefits," enthuses Andrew Goossen. "It's less latent and it saves a ton of CPU. With the best competitive solution, we found doing decompression software to match the SSD rate would have consumed three Zen 2 CPU cores. When you add in the IO CPU overhead, that's another two cores. So the resulting workload would have completely consumed five Zen 2 CPU cores when now it only takes a tenth of a CPU core. So in other words, to equal the performance of a Series X at its full IO rate, you would need to build a PC with 13 Zen 2 cores. That's seven cores dedicated for the game: one for Windows and shell and five for the IO and decompression overhead."
Did I say it is special but again you need to do the job? The I/O coprocessor in Xbox and PS5 are probably some low poer ARM CPU.
Yes but PC SSD controllers have them too. Modern Phison controllers have multiple Cortex R5 processors for example. So why is the PC going to be more subject to CPU load than the consoles in this regard? Obviously less efficient API's would make a difference but that's precisely what Direct Storage has been introduced to address.
Because the management of memory is done on CPU. There is a reason Sony PS5 and Microsoft Xbox SSD controller use custom firmware and not off the self firmware.
Direct memory access (DMA) is a feature of computer systems and allows certain hardware subsystems to access main system memory independently of the central processing unit (CPU).
Direct memory access - Wikipedia
en.wikipedia.org
EDIT: On PS5 the data is ready to use without any intervention of the CPU, Nearly the same on Xbox Series it is just using 10% of power of one of the 7 cores avaible for games.
I talk about data check in for example not DMA at all and all other I/O overhead. And the ARM coprocessor don't manage DMA on PS5, there is a DMAC on the complex I/O maybe the same on Xbox. It is good to use DMA but there is more thing to do than this...
Shouldn't be an issue since PS5 Games have 1/2 a CPU Core less available to them, so even using 10% of a CPU Core on Xbox Series still leaves more CPU Core available to the game.
Okay so we've now discounted decompression, the copy operation itself, and the API overhead.
So do you have some real world examples of how the PC is going to be significantly impacted relative to the PS5 for anything else IO related? Something better than the actual real world demo's we have showing extreme IO situations with 0% CPU utilisation?
Also I don;t think you're correct about the series consoles there. The Series consoles hardware decompression block can handle zlib as well as BCPACK as far as I'm aware, meaning it will decompress everything coming from the SSD just like the PS5 will. The CPU shouldn't have to get involved at all.
You are correct, the larger difference is a PS5 has co-processors that handle the tasks that occur after decompression where as Series console will still have to use the CPU.
Michiel Roza:It's even worse for us because we also have the added overhead of the abstraction layer to DX12 and the DXR abstraction layer, which is obviously very lean on the Sony side. So even if you have a more powerful CPU than on the PlayStation 5, you might still end up with a lower frame-rate.
And I am not the only one to said it a Nixxes dev. Thanks for the link, first time I read the interview.
Inside Marvel's Spider-Man Remastered on PC - the Nixxes tech interview
Want to go deep on the porting process for Marvel's Spider-Man Remastered on PC? Digital Foundry talks to developer Nixxes about the conversion.www.eurogamer.net
This is referring to the rendering API, not the storage API. Referring to my earlier post I absolutely acknowledge that there is an overhead on the PC CPU of the thicker rendering API. However the earlier claim that spawned this conversation thread was that "in future title it will cost more on a PC CPU than PS5 CPU to decompress CPU data and manage memory to check in and other stuff." And while I do acknowledge that even with Direct Storage, the overhead of managing IO is going to be marginally higher on PC than PS5, what I don't agree with, is that the overall CPU overhead on PC is going to get relatively worse vs PS5 in the future than what we currently see in Spiderman (a title that doesn't use Direct Storage at all), despite the massively reduced IO management overhead that Direct Storage brings along with the total removal of the need to decompress roughly 80% of the data stream from the SSD. Clearly, in future, the relative overhead is going to reduce once full usage of Direct Storage becomes common place.
Digital Foundry: Even then the game is loading fast. I did a loading test, just between PCs. It is not as fast as PS5, but still it is just under five seconds to load the game from the menu on nearly any modern PC with an NVME drive. It is very fast in comparison to other PC games. Still, what is actually the bottleneck in loading times on PC? Is it the IO-stack there (which even DirectStorage's first version without GPU decompression tries to address) or is it CPU limitations?
Jurjen Katsman: I am not certain if decompression is actually the bottleneck for load times as we did do some things to make decompression go faster, but we backed out on some of those that were hurting the in-game loading (streaming). As in-game (as in streaming while in game, moving around) with those decompression speed-ups in place, we were taking too much CPU away from the game. So we backed that away, and it didn't really meaningfully impact loading screens.
I think other things that do play into it probably is shader compilation that's happening during loading screens, and you mentioned BVH building before, so that is also happening. There's a variety of little things that we do on PC, some of it would be the IO stack... We have some DirectStorage experiments but especially for a loading screen we can use all the CPU for loading, that's what the loading screen is about, right? It's not that suddenly the IO stack change is suddenly going to make it go four times as fast. For in-game purposes, I think that's when when it [Direct Storage] becomes interesting, right when there's this CPU core being fully utilised just to facilitate decompression, freeing up that CPU core if we were able to do that... that would be that's an exciting future, but not where we we're at right now.
I can't see how that is possible when currently right now no game decompresses on anything other than the CPU.Again It will help reduce IO management but Spiderman is a PS4 title. I don't think we can know anything about I/O performance using DirectStorage.
Where did I say it will cost more than now? I didn't give any indication of performance. I just say than in the future like now it will be more heavy to use fast I/O on PC CPU than on PS5 CPU and I can add Xbox Series CPU too.
I can't see how that is possible when currently right now no game decompresses on anything other than the CPU.
There's almost literally no way that a game that takes advantage of DirectStorage... no matter how much streaming bandwidth they require, should be more taxing on the CPU than it currently is right now.
It's going to be interesting when DirectStorage is implemented into future games. We're going to have SSDs capable of 13GB/s+ raw sequential transfer speeds. Literally enough bandwidth to fill a 16GB GPU in 1 second or less.
For initial upfront loading, both should be able to load almost instantly. GPUs can literally throw their entire weight behind decompressing that data instantly. Meanwhile I can't honestly see even the best PS5 streaming scenarios causing any issues for GPUs to decompress in real-time as you play.
DirectStorage is going to be a multiplier of System RAM to VRAM PCIe bandwidth depending on the compression rate. That means reduced pressure on the PCIe bus, and faster less latent transfers.
Is it ever going to be as efficient as PS5 architecturally? Nope. Not any time soon anyway... however once again, I feel raw bandwidth and processing capability of all the major components will easily more than make up for that inefficiency in the meantime.
But currently no game use fast I/O on PC, I just say than in the future it will continue than I/O will be more heavy on PC CPU than consoles CPU. I don't do any comparison with the current situation.