Jump to content
  • Microsoft brings performance boost with new DirectStorage 1.2 even on slower HDDs


    Karlston

    • 841 views
    • 2 minutes
     Share


    • 841 views
    • 2 minutes

    Microsoft has released the latest version of its DirectStorage API. The new version, 1.2, brings some new features as well as bug fixes. There is also performance boost in store thanks to some changes made.

     

    With DirectStorage 1.2, Microsoft is bringing buffered IO mode. The company says it is in response to developers wanting to use the same code path, both on solid-state drives (SSDs) as well as hard disk drives (HDDs). HDDs operate on buffered IO mode since they have much longer seek times. The company writes:

     

    DirectStorage currently opens files in unbuffered mode. This allows us to avoid unnecessary copies, getting the data onto the GPU as quickly as possible. However, we heard from some developers that they’d like to be able to use the same code both on high-speed SSDs as well as legacy hard drives. The legacy hard drives require buffered IO in order to mask the long seek times. For this reason, we added the ability to configure DirectStorage to open files in buffered mode.

     

    Aside from buffered IO, a new GetCompressionSupport API has been introduced which adds the ability to query the decompression path used, whether it is the GPU or the fallback CPU path. The full changelog for DirectStorage 1.2 is given below:

     

    New Features

     

    • Add support for enabling buffered file IO for use on HDDs that may benefit from OS file caching behaviors.
    • Add IDStorageQueue2::GetCompressionSupport API to indicate what path the DirectStorage runtime will take when decompressing a supported GPU decompression format.
    • Update dstorage.h and dstorageerr.h to be covered by the MIT License.
    • Add Microsoft.Direct3D.DirectStorage.winmd, to ease generation of non-C++ bindings to the API.

     

    Bug Fixes

     

    • Add "Reserved1" field to DSTORAGE_REQUEST_OPTIONS. This makes the in-memory layout of the structure more explicit, but doesn't actually change the layout from previous versions.
    • Fix DSTORAGE_REQUEST_DESTINATION_TEXTURE_REGION for 3D textures.
    • Fix scheduling issue that manifested when transferring uncompressed data from memory to buffers

     

    Performance improvements

     

    • Move the copy after GPU decompression onto the compute queue for GPUs where this is faster.

     

    You can find more details on the official blog post here.

     

     

    Microsoft brings performance boost with new DirectStorage 1.2 even on slower HDDs


    User Feedback

    Recommended Comments

    There are no comments to display.



    Join the conversation

    You can post now and register later. If you have an account, sign in now to post with your account.
    Note: Your post will require moderator approval before it will be visible.

    Guest
    Add a comment...

    ×   Pasted as rich text.   Paste as plain text instead

      Only 75 emoji are allowed.

    ×   Your link has been automatically embedded.   Display as a link instead

    ×   Your previous content has been restored.   Clear editor

    ×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...