If all you are doing is moving data from the SSD to system memory, and that data is properly configured to take advantage of the interface and compression hardware, then yeah. Well, maybe. But when you are running a game, it's not that simple. Just because you can move 5GB of models and texture into main memory doesn't mean they don't have to be placed into the game state. That stuff isn't handled by the I/O stack. Think of the I/O stack like a dump truck hauling things. If you haul some pre-fab'd concrete slabs, you can drop them off and make a concrete platform quick. If you are hauling crushed stone, you can move it just as fast but it's going to require some work to make anything except a pile of stones when it gets to it's destination.What? On PS5 and properly using the custom I/O the CPU is completely bypassed.
Some context from someone who knows a bit about this (large twitter thread):If all you are doing is moving data from the SSD to system memory, and that data is properly configured to take advantage of the interface and compression hardware, then yeah. Well, maybe. But when you are running a game, it's not that simple. Just because you can move 5GB of models and texture into main memory doesn't mean they don't have to be placed into the game state. That stuff isn't handled by the I/O stack. Think of the I/O stack like a dump truck hauling things. If you haul some pre-fab'd concrete slabs, you can drop them off and make a concrete platform quick. If you are hauling crushed stone, you can move it just as fast but it's going to require some work to make anything except a pile of stones when it gets to it's destination.
Does the game use Sampler Feedback Streaming on Xbox?
Random thought/question:Pretty sure there is no shipping game that is utilizing SFS nor the Velocity Architecture, yet.
So, I/O on XBS systems are still mostly just brute force loading assets from the drive.
Regards,
SB
That got me interested, so I had a look.Some context from someone who knows a bit about this (large twitter thread):
You using the direct storage api's?That got me interested, so I had a look.
Heres my game from a cold boot, I think its mostly IO (Of course its gonna be a combination of everything)
I think I can knock a couple of seconds off it, I'm gonna look more into it. I do have a faster SSD so its prolly gonna be slower on other PCs (and quicker on others), none of my PCs have a HDD so can't see what happens there, I suppose you can't emulate a HDD with a SDD?
Dont think so, just what ever unity uses.You using the direct storage api's?
The versions tested were 1.0.1.0 on the Xbox Series consoles and 1.003.000 on PS5. These version numbers correspond to 2.0.1 in-game. Patch 2.1.1 doesn't appear to change performance.
The footage here is from Quality Mode which targets 60fps on all three consoles. All three consoles also have a Framerate Mode that lowers the resolution and disables v-sync which makes it difficult to analyse the frame rate. The Framerate Mode only outputs at 60hz on PS5 and VRR doesn't seem to work on the Xbox Series consoles in Framerate Mode.
PS5 and Xbox Series X in Quality Mode both use a dynamic resolution with the highest native resolution found being 3840x2160 and the lowest resolution found being approximately 2304x1296. Pixel counts at 2304x1296 appear to be uncommon on both consoles. Both consoles in Quality Mode use temporal upsampling to reconstruct a 3840x2160 resolution when rendering natively below this resolution.
Xbox Series S in Quality Mode uses a dynamic resolution with the highest native resolution found being 1920x1080 and the lowest resolution found being 1280x720. Native resolution pixel counts at 1920x1080 seem to be common on Xbox Series S in Quality Mode. Xbox Series S in Quality Mode uses temporal upsampling to reconstruct a 1920x1080 resolution when rendering natively below this resolution.
PS5 and Xbox Series X in Framerate Mode render at a native resolution of 1920x1080.
Xbox Series S in Framerate Mode renders at a native resolution of 1600x900
Those loading times are really irritating on PS5. So I guess the cuts to the CPU are in a place that are heavily used for decompression, as PS5 titles don't need those on the CPU. Everything else really makes no sense. Yes the CPU in the series x has a bit higher clocks, but just a bit. While loading the PS5 CPU should also always reach their highest clockrates, as the GPU has not much to do.
- The game runs in backward compatibility mode on all 3 consoles.
- On S Series, the maximum resolution has been increased from 900p to 1080p (on Xbox One it was limited to 900p).
- Series X and PS5 use dynamic resolutions just like PS4 Pro and One X. The resolution in Series X usually reaches 2160p, while PS5 reaches 1620p.
- Series X has a more unstable framerate due to resolution. At times of greatest stress, it can drop 10FPS below the PS5/Series S.
- Loading times are faster on Xbox Series as is always the case with backward compatible titles.
XSX and ps5 are using dynamic res scaling XSX (1692-2160p) and PS5 (1242-1620p). During normal gameplay fps seems to be very solid on all platforms.
During the heavy battle scenes all consoles drops frames with xsx dropping noticeably lower than ps5 (low 50).
While loading the PS5 CPU should also always reach their highest clockrates, as the GPU has not much to do.
The versions tested were 1.5.5.2663 on Xbox Series consoles and 1.55 on PS5. There may be time of day and weather variance in some clips.
PS5 uses a dynamic resolution with the highest native resolution found being 2880x1620 and the lowest native resolution found being approximately 1824x1026. Native resolution pixel counts at 2880x1620 seem to be uncommon on PS5. PS5 uses temporal upsampling that can reconstruct a 2880x1620 resolution when rendering natively below this resolution.
Xbox Series X uses a dynamic resolution with the highest native resolution found being 3840x2160 and the lowest native resolution found being 2432x1368. Native resolution pixel counts at 3840x2160 seem to be rare on Xbox Series X. Xbox Series X uses temporal upsampling that can reconstruct a 3840x2160 resolution when rendering natively below this resolution.
Xbox Series S uses a dynamic resolution with the highest native resolution found being 1920x1080 and the lowest native resolution found being 1280x720. The cutscenes are capped at 30fps on Xbox Series S and the only resolution found during cutscenes was 1920x1080. Xbox Series S uses temporal upsampling that can reconstruct a 1920x1080 resolution when rendering natively below this resolution.
I guess the question was more what is possible. E.g. it would be possible to give the game some kind of feedback "prepare to be hibernated in the next few seconds" and the game would than release resources (like raw textures etc) from it's memory to reduce it), than after resuming it could reload those parts (e.g. what SF tells is needed). But overall this makes things much more complicated and is more the "savegame" kind of solution. Quick Resume is more the brute force method so it can work with almost everything.QuickResume is hibernation of the entire game's memory. If SFS has runtime state it would be part of that memory.
Just because you need less memory for a scene (when using SFS) it doesn't mean the game really uses less. Game will just fill the memory with other stuff. Not really randomly, but than developers have the room to actually use more memory than before, so that might make some features that weren't possible before possible now.Random thought/question:
How will SFS affect Quick Resume?
Presumably, if you're playing a game that utilizes SFS and then exit that game, whatever is in memory gets caches to the SSD. But all the texture data that's getting cached will be in bits and pieces since that's what SFS does. Is Quick Resume able to just load that cached data and it picks up where it left off or are they going to have to load the full texture data in addition to what is cached so that SFS can kick in again since it needs rendered frames to work?
Doesn't PS5 cap frequency in BC mode? That's probably what's happening here.There shouldn't be any downclocking going on while loading. If not the GPU is doing some tasks we dont know about. Anyway, bad optimized title to begin with on all platforms.
Not for newer and patched gamesDoesn't PS5 cap frequency in BC mode? That's probably what's happening here.
I suspect what may be at least part of the reason why he sees such drops is his CPU though, on the PC this title has a pretty large CPU bottleneck with frequent CPU spikes - it can't maintain 60fps at 1080p on my 1660 with periodic stutters that coincide with single-core CPU spikes of 80%+ when they occur on my I5-9400. I can get mid 40's at 1440p better than console settings inside Meridian/Mothers Heart too, but that's on a 1660 - his 2070 should actually be quite a bit better, but that Zen-1 architecture CPU could be holding him back.oc rtx 2070 in 1440p ps4pro settings (tough without checkerboad which also hit performance) can drop to mid 40s in city, ps5 in bc mode no drops