DirectStorage GPU Decompression/ RTX IO

Discussion in 'Rendering Technology and APIs' started by DavidGraham, Apr 21, 2021.

  1. DavidGraham

    Veteran

    Joined:
    Dec 22, 2009
    Messages:
    3,535
    Likes Received:
    4,195
    So Microsoft wants the GPUs to handle the burden of decompressing game assets, to become the alternative of the dedicated hardware decompressor blocks on Xbox and PlayStation.

    This will require the game to be shipped with a special GPU friendly compression solution, to be then decompressed by the GPU to accelerate loading times and data streaming during gameplay. The solution will work on existing GPUs.

    GPU vendors will determine which of their GPUs can handle that responsibility. NVIDIA already announced support for RTX 2000 and RTX 3000 cards. AMD hinted that RX 6000 will support the feature as well.

    What bothers me is the overhead this will incur on GPUs, the way I see it, is that GPUs can decompress data during loading the levels of the game with no performance penalty, the GPU already sets idle during these moments, however on the fly data streaming will take away some of the GPU resources dedicated to rendering of the game, how will developers balance things out in that regard?

    https://e1cdn.social27.com/events-f...ndowsbfd95322-7e41-4e8d-821e-7adee9f9725c.pdf
     
    PSman1700 likes this.
  2. BRiT

    BRiT (>• •)>⌐■-■ (⌐■-■)
    Moderator Legend Alpha

    Joined:
    Feb 7, 2002
    Messages:
    18,906
    Likes Received:
    21,329
  3. techuse

    Regular Newcomer

    Joined:
    Feb 19, 2013
    Messages:
    771
    Likes Received:
    461
    Still too many unknowns. The near complete lack of actual details makes me think this is still a ways out.
     
  4. JoeJ

    Veteran Newcomer

    Joined:
    Apr 1, 2018
    Messages:
    1,169
    Likes Received:
    1,354
    Question reminds me about experience when figuring out async compute on GCN / Vulkan:
    Started to do it on dedicated compute queues. Results were disappointing at first. Then it turned out only the gfx/compute queue gives max performance, so the dedicated queues are obviously meant for such kind of background tasks.
    Curiously changing queue priorities had no effect at all and seems not implemented.
    Problem: This is not specified by API or even documented by AMD. For NV / Intel i'll have to do similar experiments again, and then hope discovered behavior presists on future HW and drivers.
    So i guess Direct Storage means to address those uncertainties, likely with dedicated queues to run the decompression stuff.
     
  5. DmitryKo

    Regular

    Joined:
    Feb 26, 2002
    Messages:
    902
    Likes Received:
    1,076
    Location:
    55°38′33″ N, 37°28′37″ E
    They specifically mentioned DEFLATE over BCn textures, which is what BCPack on the Xbox seems to do. And in the session chat, they also clarified that DirectStorage is not using peer-to-peer DMA, though they consider this for a future releases.

    So I'm not sure how RTX I/O would be related to DirectStorage, besides implementing a similar lossless decompression step using compute shaders. Looks like another proprietary API to me.
     
    #5 DmitryKo, Apr 21, 2021
    Last edited: Apr 21, 2021
    BRiT and iroboto like this.
  6. DegustatoR

    Veteran

    Joined:
    Mar 12, 2002
    Messages:
    2,242
    Likes Received:
    1,675
    Location:
    msk.ru/spb.ru
    A GPU will be used for decompression as well as rendering. From the GPU point this is just another compute workload which it has to perform to be able to render a scene. Moving this from CPU to GPU should be beneficial on average as GPUs should be considerably faster at this.
    I'd expect GPUs to include specialized h/w decompression units for this work in the future though, similar to video dec/enc we have now.
     
    BRiT likes this.
  7. DavidGraham

    Veteran

    Joined:
    Dec 22, 2009
    Messages:
    3,535
    Likes Received:
    4,195
    So is RTX IO doing something extra over DirectStorage hardware decompression?
     
    PSman1700 likes this.
  8. iroboto

    iroboto Daft Funk
    Legend Regular Subscriber

    Joined:
    Mar 6, 2014
    Messages:
    13,227
    Likes Received:
    16,124
    Location:
    The North
    IMO DirectStorage likely provides the means to move data as effortlessly as possible between nvme to GPU. I think MS may leave it up to the vendors themselves to implement their own decode algorithms that wood best suit their hardware maybe?
     
  9. BRiT

    BRiT (>• •)>⌐■-■ (⌐■-■)
    Moderator Legend Alpha

    Joined:
    Feb 7, 2002
    Messages:
    18,906
    Likes Received:
    21,329
    I'd kind of expect there to at be an open-source general reference implementation for GPUs and then specific versions by AMD/Nvidia/Intel GPU providers.
     
  10. Remij

    Regular Newcomer

    Joined:
    May 3, 2008
    Messages:
    252
    Likes Received:
    411
    It's being previewed by a limited selection of devs in the summer. So probably another year from that point.
     
  11. DegustatoR

    Veteran

    Joined:
    Mar 12, 2002
    Messages:
    2,242
    Likes Received:
    1,675
    Location:
    msk.ru/spb.ru
    The API isn't in beta even, nobody knows yet how it will be released.
    As usual an API must be a common ground between all vendors which will support it.
    It could mean that some features won't make the cut or that there will be support tiers.
     
    PSman1700 and DavidGraham like this.
  12. DmitryKo

    Regular

    Joined:
    Feb 26, 2002
    Messages:
    902
    Likes Received:
    1,076
    Location:
    55°38′33″ N, 37°28′37″ E
    Who knows, the slide with a direct connection between SSD and video RAM didn't make much sense to me.

    Nvidia could probably use peer-to-peer DMA on Linux but this would require major revisions to the WDDM driver model on Windows.
    Exactly. It's almost 8 months from the original RTX I/O announcement, but no further details were made available.
     
    DavidGraham, iroboto and BRiT like this.
  13. pjbliverpool

    pjbliverpool B3D Scallywag
    Legend

    Joined:
    May 8, 2005
    Messages:
    8,579
    Likes Received:
    2,948
    Location:
    Guess...
    Nvidia have claimed that the impact on GPU performance is negligible. It's worth remembering that for in game background streaming the transfer rate is going to be very low by NVMe standards. Maybe 10's to low hundreds of MB/s.

    So if this tech can easily saturate the max bandwidth of "gaming NVMe SSD's" as Microsoft claims, then 200MB/s for example (which I think was the figure being claimed for the UE5 demo) should be no problem at about 3% of the max bandwidth of the fastest SSD's out there.

    I'd also assume when they say their GPU based decompression can easily saturate NVMe drives that they're not basing that on the compute capabilities of a 3090 but rather something a bit more common.
     
    PSman1700 likes this.
  14. eastmen

    Legend Subscriber

    Joined:
    Mar 17, 2008
    Messages:
    12,543
    Likes Received:
    3,481
    Hardware is coming , it will just lag behind by years vs the GPU implementation.
     
  15. DegustatoR

    Veteran

    Joined:
    Mar 12, 2002
    Messages:
    2,242
    Likes Received:
    1,675
    Location:
    msk.ru/spb.ru
    A year more like. The problem isn't in h/w's absence, it's in the need to make it work on what's available currently.
     
    PSman1700 likes this.
  16. eastmen

    Legend Subscriber

    Joined:
    Mar 17, 2008
    Messages:
    12,543
    Likes Received:
    3,481
    They talk about it in the video they put up. By the time hardware is released it will still take years for the majority of people to have purchased and installed it.

    So if we get hardware decoder support in our cpus or in ddr 5 or whatever hardware support may look end up actually being , we might not see a sizable amount of users for years after that. But with the gpu support we may get a few generations of hardware supporting this in software from the get go



    Around 21 mins in
     
    #16 eastmen, Apr 21, 2021
    Last edited: Apr 21, 2021
    Per Lindstrom likes this.
  17. DegustatoR

    Veteran

    Joined:
    Mar 12, 2002
    Messages:
    2,242
    Likes Received:
    1,675
    Location:
    msk.ru/spb.ru
    This is what I'm saying. Lack of h/w support isn't an issue, PC h/w is updated fast. The issue is with the current install base.
     
    PSman1700 likes this.
  18. eastmen

    Legend Subscriber

    Joined:
    Mar 17, 2008
    Messages:
    12,543
    Likes Received:
    3,481
    Yea but depending on the amount of cards this works on the user base may be enough for this first phase . Even if its just Nvidia RTX and AMD RDNA cards it will still be a sizable install base. If it works on the 10x series by nvidia and vega from amd that is bigger even still.

    In the slids it looks like they have what they call sub components in development

    1) Direct Compute based decompressor
    Initial prototype decompression saturate gaming nvme ssds bandwidths
    Open door to further innovate in possible future silicon implementations

    2) Cpu decompressor for assets destined for system memory

    3) Compressor
     
  19. Jay

    Jay
    Veteran Regular

    Joined:
    Aug 3, 2013
    Messages:
    3,531
    Likes Received:
    2,861
    I wouldn't even take what was said as confirmation that will get dedicated decompression on GPUs.

    In console I can see the benefit, in graphics cards that will have a working sharder implementation may not be worth the silicon. Depends on the performance.

    Could see more reason for dedicated silcon on APU's I guess.
     
  20. eastmen

    Legend Subscriber

    Joined:
    Mar 17, 2008
    Messages:
    12,543
    Likes Received:
    3,481
    I'm thinking we will see dedicated silicon on CPUs.
     
Loading...
Similar Threads - DirectStorage Decompression
  1. Kelemit
    Replies:
    20
    Views:
    3,460
  2. Dave Baumann
    Replies:
    42
    Views:
    6,121

Share This Page

  • About Us

    Beyond3D has been around for over a decade and prides itself on being the best place on the web for in-depth, technically-driven discussion and analysis of 3D graphics hardware. If you love pixels and transistors, you've come to the right place!

    Beyond3D is proudly published by GPU Tools Ltd.
Loading...