• Welcome to TechPowerUp Forums, Guest! Please check out our forum guidelines for info related to our community.
  • The forums have been upgraded with support for dark mode. By default it will follow the setting on your system/browser. You may override it by scrolling to the end of the page and clicking the gears icon.

Directstorage and GPU decompression of assets

Joined
Dec 12, 2020
Messages
1,755 (1.07/day)
I understand how directstorage can reduce CPU usage when transferring assets to a CPU, but what if the GPU is already at high usage when trying to grab more assets? Or is there supposed to be dedicated hardware on GPUs for decompressing assets?
 
There is no dedicated hardware on the GPU specifically for DirectStorage like what the consoles have but according to Microsoft GPUs are very efficient at decompressing when a compression format designed for GPUs is used. If your GPU is already at high utilization there's a chance that direct storage may provide no benefit or even reduce performance but I think that's a pretty extreme case that's unlikely. Chances are the GPU overhead of direct storage is extremely low, otherwise it doesn't make a lot of sense.
 
Why would someone with 32GiB+ of system RAM WANT to load compressed assets? Why not just store the uncompressed assets in system RAM and then xfer them across the PCIe bus as needed?
Decompressing assets can't be done in zero time, whether it ultimately saves time over xferring uncompressed assets from system RAM is something I'd like to see proof of.
 
Why would someone with 32GiB+ of system RAM WANT to load compressed assets? Why not just store the uncompressed assets in system RAM and then xfer them across the PCIe bus as needed?
Decompressing assets can't be done in zero time, whether it ultimately saves time over xferring uncompressed assets from system RAM is something I'd like to see proof of.

The problem with storing uncompressed assets in the main system memory is that the latency is terrible and this in turn holds up the rest of the graphics pipeline. In effect games already do this but only when your GPU VRAM is completely full. Spillover from the VRAM is stored in the main system memory. When this happens it results in horrible performance and 1% lows and should be avoided at all costs.
 
In my experience playing a game with GPU at full load tends to be a much better experience vs when a CPU bottleneck is hit. So its still likely to be a win, and I expect GPU saturation to mostly only be a problem for those who play without vsync 30/60fps.
 
No NVME SSD on the fact of this planet has superior latency to DDR4 or DDR5 RAM. System RAM has far less latency and far more bandwidth than any NVME SSD.

In my experience playing a game with GPU at full load tends to be a much better experience vs when a CPU bottleneck is hit. So its still likely to be a win, and I expect GPU saturation to mostly only be a problem for those who play without vsync 30/60fps.
But in modern AAA titles I'm not CPU limited even on my old 9700k, but I AM obviously GPU limited in games like Metro Exodus: Enhanced Edition.
 
Back
Top