В марте 2021 года Microsoft официально запустила API DirectStorage, который позволяет твердотельному накопителю NVMe ПК обходить процессор и память и напрямую передавать данные в видеопамять, что может значительно сократить время загрузки игры. В октябре 2022 года Microsoft выпустила DirectStorage 1.1, представив функцию «распаковки активов» для поддержки распаковки ресурсов графическим процессором. К апрелю 2023 года Microsoft выпустила DirectStorage 1.2, добавила новый API для запроса пути, выбранного во время выполнения, исправила некоторые ошибки и оптимизировала производительность. В июле прошлого года Microsoft добавила новый API под названием «EnqueueRequests» через DirectStorage 1.3.

Microsoft выпускает общедоступную предварительную версию DirectStorage 1.4

Теперь Microsoft выпустила общедоступную предварительную версию DirectStorage 1.4, представив новую функцию под названием «Zstandard (сокращенно Zstd)». В качестве опции для игровых ресурсов операционной системы Windows этот алгоритм сжатия использует открытый стандарт и может улучшить степень сжатия, ускорить загрузку и обеспечить более плавную передачу игровых ресурсов. Кроме того, Microsoft также представила первоначальную предварительную версию библиотеки условий игровых активов (GACL).

Microsoft работает с основными поставщиками графических процессоров, включая AMD, Intel, Nvidia и Qualcomm, для совместной разработки возможностей Zstandard. В этой версии Microsoft добавила поддержку Zstd в структуру многоуровневой декомпрессии, охватывающую функции декомпрессии ЦП и графического процессора. Это позволяет разработчикам выбирать лучшее решение для выполнения на основе текущих рабочих нагрузок, в то время как партнеры Microsoft по графическому процессору работают над будущей оптимизацией оборудования для Zstd.

DirectStorage 1.4 также продолжает работу EnqueueRequests версии 1.3 и добавляет глобальную поддержку D3D12 CreatorID. Указав CreatorID через DStorageSetConfiguration2, D3D12 CreatorID можно связать с внутренней очередью команд D3D12, управляемой DirectStorage для каждого устройства. Этот механизм позволяет группировать очередь команд D3D12 для точной обработки рабочих нагрузок DirectStorage, тем самым улучшая предсказуемость и оптимизируя планирование выполнения графического процессора.

Библиотека условий игровых ресурсов предназначена для использования с существующими конвейерами обработки контента, что может повысить степень сжатия Zstd для игровых ресурсов до 50 %, сохраняя при этом низкие затраты на распаковку во время выполнения при использовании DirectStorage. Эта предварительная предварительная версия включает технологию условной обработки без потерь и с потерями.