In the short term, live storage ensures that games can retrieve data more efficiently. In the past, for example, a full texture pack was usually retrieved, containing the texture of the monster that should be in the picture, but also of other monsters that don’t appear at all. So the data that was not necessary was recovered. However, with a classic hard drive, recovering a lot of data at once is more efficient than with small read operations.
NVME is better at retrieving small bits of data. Games can take advantage of this by bringing in only the texture of the monster they need to see. However, the traditional Windows code for data recovery focuses on recovering a large amount of data in one go and not on retrieving many small pieces of data in parallel. The overhead for each recovery is significant and there is a limit to the number of things that can be recovered at the same time.
The first version of DirectStorage was intended to make it more efficient to perform many small recovery operations.
There is still a problem with compression. At this point, the extraction is usually done by the CPU. So the texture goes first to RAM, and then to the processor, which decompresses it and writes it back to RAM. This extracted tissue, which is very large, is then copied to the video card.
As a result, the CPU is heavily loaded, especially with the appearance of high-resolution decorations. In addition, this uses a relatively large amount of RAM, because the extracted tissue must be present. But the main problem is that the entire extracted texture must be copied to the video card. This is often the main bottleneck.
You can reduce the CPU load by not saving the packed texture, which some games do, but then it takes longer to fetch the data because the files are bigger. It’s also annoying because games take up a lot of disk space.
Microsoft plans to move the decompression step to the video card in the future. In this case, the filled texture goes to random access memory (RAM) and then goes directly to the video card, which you dump. For this we need support for better compression algorithms in the video card itself. In the long run, I also expect that special hardware will be installed on the video card to unload it.
[Reactie gewijzigd door Ludewig op 6 mei 2022 12:13]