I've actually always wondered about game loading and just what exactly it's doing at specific times vs others. For example, on PC you can use RTSS and view the frametimes of course, and most games will show the frametimes go erratic and stall, and then continue through at fast framerates, then settle down.
During these loading screens, there will often be an animated logo spinning or some other kind of visual flourish, or a loading bar to show progression. And these animations almost always stutter, or hitch, as the frametimes do.. of course. If the main/render thread/s are stalled waiting for some process to complete, obviously. But what processes actually makes it stall? Shader compilation? CPU asset decompression? Moving decompressed texture/geometry data to VRAM? All 3 probably and more probably.. However, I always wondered why developers "tied" that spinning logo, or animated flourish, with the main thread. I don't know why, but it always bothered me lol.. Like.. why can't they just have a logo spinning nicely, and do the loading in the background without having it tied to the loading so that it doesn't stutter.
That always annoyed me haha. And I've noticed that in consoles it will happen sometimes, but not too often. On PC it happens far more often and it can be distracting. I'm wondering if it's a result of the memory setup of PC having split pools maybe?
Consoles don't have shader compilation, the shader are precompile, no CPU assets decompression and unified memory. CPU and GPU just need to initialize the level/zone, entities, AI. The game engine is already initiated during the load from the console/PC OS to the game menu.
Memory latency is also a factor. It’s one of the most important aspects of cpu performance. PS5 has more cache, but I don’t know how much improved latency to ram is.
The Jaguar are linked to GDDR5 memory latency is high too.