A Microsoft még az elmúlt év tavaszán részletezte a PC-s DirectStorage API-t, amelynek később elérhetővé vált az első publikus fejlesztőkörnyezete. Utóbbi nem volt teljes funkcionalitású, hiszen a dekódolás GPU-s gyorsítását nem biztosította, de a kezdeti munkát meg lehetett vele indítani.
A vállalat most bejelentette, hogy az idei év végén kiadják a DirectStorage 1.1-et, ami annyiban különbözik a most hozzáférhető 1.0-s verziótól, hogy biztosítja a dekódolás GPU-s gyorsítását. Emellett persze a futtatási környezet alapvető optimalizálásokat is tartalmaz, amivel a DirectStoraget megkezdheti a tényleges terjedését.
A dekódolás GPU-s gyorsítása kapcsán extraként érkezik a GDeflate, amit a Microsoft az NVIDIA-val közösen fejlesztett. Ez egy olyan fájltömörítési formátum, ami nagymértékben az adatpárhuzamos dekódolásra van optimalizálva. Bár maga a DirectStorage 1.1 nem teszi kötelezővé ennek a használatát, de számolni kell azzal, hogy a GPU-k számára nem mindegy milyen kódolt formátumban kerül az adattartalom leszállításra a felhasználók PC-ire. Bizonyos formátumok esetében a GPU kevésbé hatékony a dekódolási munkát tekintve, amitől persze a DirectStorage még működni fog, csak egy jobban optimalizált formátummal működhetne hatékonyabban is. A GDeflate előnye, hogy nem gyártóspecifikus, teljesen a szabvány igényihez szerint van tervezve, vagyis akármilyen modern GPU-hoz ideális, így hosszabb távon ez lehet majd a vezető formátum PC-n. Persze eleinte nem kizárható, hogy kevésbé lesz alkalmazva a programokban, ugyanis ha a fejlesztők már kiválasztották azt a formátumot, amire a tartalmat kódolják, akkor arról nem feltétlenül lehet olcsón átállni.
GPU-val dekódolt GDeflate és CPU-val dekódolt Zlib teljesítménykülönbsége
A DirectStorage 1.1 API rendszerkövetelményei viszonylag alacsonyak. Az optimális teljesítmény érdekében legalább egy PCI Express 3.0-s NVMe SSD-t érdemes beszerezni. Itt az sem gond, ha ez két sávon működik, de minél nagyobb a támogatott adatátviteli tempó, annál jobb eredmények várhatók. Ami kritikus fontosságú az az NVMe protokoll megléte, mert az új I/O API ezzel működik optimálisan. A GPU-k esetében alapkövetelmény lesz DirectCompute API, mivel ezen keresztül dolgozik a kitömörítő algoritmus, de ez aligha lesz megugorhatatlan lépcső a felhasználóknak, hiszen a compute shadert, ezen belül is a szükséges shader modell 6.0-s verziót nagyon-nagyon régóta támogatják a GPU-k. Van azonban egy fontosabb tényező, mivel a a DirectStorage API jóval hatékonyabb lesz a DirectX 12 Ultimate-tel, ezen belül is az azt támogató, sampler feedback funkciót kezelő hardverekkel, ugyanis ez a két rendszer egymást egészíti ki.
A sampler feedback kapcsán fontos kiemelni, hogy nem csak a sebesség kap kulcsszerepet, hanem a GPU memóriájába is főleg olyan adatok kerülnek, amelyekre az adott képkocka számítása szempontjából mindenképpen szükség van, így a meglévő VRAM-mal hatékonyabban lehet bánni. A sampler feedback kapcsán két opció lehetséges, mivel ennek van egy TIER_0_9-es és egy TIER_1_0-s szintje. A DirectStorage API mindkettőt elfogadja, de csak az utóbbi szintnek megfelelő hardverek garantálják a funkció minden textúracímzési módban való működését, aminek az lesz az előnye, hogy a TIER_1_0-t támogató hardvereken sokkal takarékosabban bánnak majd a VRAM-mal a TIER_0_9-hez viszonyítva.
A fentiek mellett a DirectStorage 1.1 továbbra is lehetővé tesz CPU-s dekódolást, ez önmagában nem szűnik meg, mert bizonyos tartalmak a rendszermemóriába kerülnek. Ennek különösebb követelménye nincs, de minél több mag van a processzorban, annál jobb teljesítmény várható. Megjegyzendő még, hogy a Windows 10 és 11 között is lesz különbség, mivel utóbbi operációs rendszer tárolómodellje már eleve úgy lett kialakítva, hogy igazodjon a DirectCompute API-hoz.
Ez így alapvetően sok információ lehet, de érdemes megérteni, hogy a DirectStorage 1.1 nem egy olyan API, amit csak a modern hardverekre terveztek. Ennek a lényege, hogy vegye át a korábbi modell helyét, vagyis ha van egy minimum shader modell 6.0-t támogató GPU (szinte bármelyik DirectX 12-es grafikus vezérlő ilyen) a rendszerben, akkor a DirectStorage 1.1-et támogató játékok már futni fognak, akkor is, ha a felhasználónak csak HDD-je van. Sőt, a Microsoft natív DirectStorage 1.1-es implementációt sem követel a grafikus meghajtón belül, ha ugyanis ilyet nem talál a futtatási környezet, akkor van egy alapvető működést biztosító fallback mód DirectCompute-ban írva.
Egy DirectStorage 1.1-et támogató program futtatásához tehát elég szinte akármelyik DirectX 12-es grafikus vezérlő, viszont a jó teljesítményhez már komolyabb holmi kell, és a fő indikátor itt a processzormagok száma, a sampler feedback implementáció szintje, az NVMe adattároló sebessége, illetve a GPU nyers számítási kapacitása, kiegészítve a natív meghajtóoldali támogatással, illetve optimális esetben a Windows 11-gyel. Minél combosabb ezek alapján egy PC, annál jobban fog működni a Microsoft új API-ja.