Още през март 2022 г. официално дебютира DirectStorage 1.0 API на Microsoft, което позволява преки взаимодействия между GPU и устройството за съхранение, като по такъв начин се намалява натоварването на стека за съхранение, в който са пряко ангажирани процесора и основната памет. В тази версия обаче липсваше една страхотна функция, която е налична за конзолите, а именно, декомпресия на активи. След хладната реакция на разработчиците на игри относно DirectStorage 1.0, Microsoft най-накрая актуализира API-то, представяйки въпросната функция в DirectStorage 1.1.
С тази функция вашият GPU може не само директно да извлича гейм активи от устройството за съхранение (SSD, което използва или NVMe, или AHCI протоколи), но също така да ги изтегля в тяхното естествено съхранено компресирано състояние. След това тези активи се декомпресират от GPU с помощта на изчислителни шейдъри и декомпресираните активи остават във видео паметта. Това пряко ще повлияе на времето за зареждане на играта, тъй като декомпресията на активи вече не включва в схемата процесора (CPU). Влиянието на тази функция върху броя на кадрите на играта ще бъде минимално, тъй като идеята за това API е основана на ускоряване на времето за зареждане на играта, а не на самата игра. Активите на играта са организирани парчета от данни като например текстури, файлове с 3D модели, музика, звукови ефекти, или почти всички отделни части от съдържанието, които съставляват 3D сцени.
Компресирането/декомпресирането на файлове остава тежко изчислително натоварване, което се възползва от паралелизма и именно тук GPU и неговата по-бърза памет помагат значително. След като съответните активи бъдат ангажирани във видео паметта, останалите данни от контейнерите с активи се изчистват от видео паметта, за да се освободи място за останалата част от натоварването на паметта на играта. Microsoft в своя технологичен демонстрационен пример показа как активите на 3D сцена се зареждат за 0,8 секунди с DirectStorage 1.1, в сравнение с 2,36 секунди без него. Това е само синтетичен пример, можете да си представите въздействието върху много по-големи AAA игри, които отнемат десетки секунди за зареждане на нива, дори и с NVMe SSD. Забавянето тук не е в устройството за съхранение, а CPU, който се опитва да декомпресира съответните активи.
Заедно с DirectStorage 1.1, Microsoft въвежда GDeflate, формат за компресиране на файлове за гейм активи, разработен от NVIDIA, и работи с всички производители на графични процесори за компютри, включително AMD и Intel, за добавяне на поддръжка за този файлов формат чрез актуализации на графичните драйвери. Форматът е оптимизиран за силно паралелни методи на компресия и декомпресия върху голям брой нишки, които ги прави по-оптимизирани за GPU. Това не означава, че непременно всички игри трябва да използват GDeflate, за да се възползват от GPU ускореното декомпресиране на активи спрямо DirectStorage 1.1. Това е просто допълнителна оптимизация за разработчиците на игри, работещи по нови проекти. Корекцията на вече пуснати игри, за да имат GDeflate, би включвала преразпределяне на цялото натоварване на активите на играта.
Microsoft планира да пусне DirectStorage 1.1 за разработчиците на игри към края на 2022 г. Първите игри, пуснати или обработени с поддръжката на DirectStorage 1.1, трябва да започнат да излизат през 2023 г.
Източник: Techpowerup








Успях да прочета малко подробности и да си представя, с моята богата фантазия, какъв проблем има. Явно все още не могат да се справят с плюенето на грешки от обработката (декомпресия) на прочетените от SSD файлове. Така че, се налагат многобройни интензивни повторни прочитания от SSD, за да се декомпресират отново тези от файловете, които са били повредени при обработката и съответно не са минали pass. Някой лаик като мен(мислех си че дайрект сторидж чете гейм сцената буквално като един цял image файл на един път и с това занимавката със SSD, относно конкретната сцена на дайрект сторидж свършва напълно, а явно не е така), преди да се задълбочи в материята, би сгрешил, като запита нещо от рода на:Какво от това, нали за живота на SSD е важен броят презаписвания на клетките. Да ама не съвсем. Макар и износването да не е толкова съществено като от Chia, все пак извънредният Block Read Disturb увеличава риска от това SSD да почне да дава дефекти. Интензивната и постоянна работа, също предизвиква и температурни проблеми с по-бързите съвременни м.2 към PCIe 4.0 SSD, какво ли би било със сериите, които са към PCIe 5.0 тогава, за които ни подготвят че ще греят много дори при нормално ползуване.
Впрочем, това се знае публично още от лятото.
Има нещо от това в тази статия:
https://www.tomshardware.com/features/the-directstorage-advantage-phison-io-ssd-firmware-preview
Сигурно има и други материали по въпроса, в това число и по-нови. Какво написах лаик съм, няма как да се заровя в червата на проблема и само си въобразявам глупости. :)
Примерно, че програмистите и на Майкрософт и на екипа на Физън, са нещо малко некадърни. Хахаха. А може и дизайнерите на „железата“, а може би всички вкупом.
Нека позная: това ще е само за win 11…
Значи ше ускоряваме времето за зареждане на игратa, ще падне цялостният фремрейт и памет консумация и ще бъде добавен с извличане компресия и трансфер процесорен CPU, графичен GPU, и дисков SSD overhead , но как ще върви самата игра тц, не ни грее . Вашътамама Микромеко неграмотнотъпа и безполезнаите Хайдарабатски неваксинирани клоуни. Ще си купя аз карта за 30000 лв за да може индийски мауглита да се*рете из декомпресират от GPU с помощта на изчислителните ми шейдъри и и да ми пълните видео паметта с процесорно и дисково интензивни боклуци
До Гого, тънката работа е да купуваш по начесто SSD та видеокарти и процесори, защото цялостната концепция е тотално безумно усложняване в конвейра с добавяне на жестоко износване и натоварване в SSD,GPU ядрата, шейдърите и тн, които да правят абсолютно несвойственни за тях неща. Нищо общо с прокламираното освобождаение на ресурс (дори да има такова е дивотия да имаш 32 GBRAM и да искаш да я освободиш за ‘стържеш ‘по 5 пъти тежките текстури из SSD и нищо общо с бързодействие или каквото и да било забързване в игри. Наобратно ще се добави добър % забавяне и много добът % натоварване за GPU и SSD така ,че да може с всяко следващо поколение нова игра да кажем АБЕ КУПИ СИ НОВ PC.
The data skips system memory entirely, going from SSD to GPU directly.Reading acces from memory is 1000x better than the best SSD.
The DirectStorage APL require to rewrite the Game from cratch.To speed up loading times by making data go straight from the SSD to the GPU are you fucken kidding me. Traditionally our data get read and decompressed by CPU, then sent uncompressed ready to the GPU.Now CPU can’t possibly manage to decompress the huge data flow required by newer games resently quickly enough, so the CPU has become a bottleneck.It prevents loading times from getting any faster so DirectStorage on theory will allow developers to skip the CPU and Ram and send the compressed data straight from the SSD to the GPU instead,and tell the GPU to handle decompression.First it needs Windows 11, desond Game with the right APL third an SSD and a crazy GPU beefy enough to decompress data in the background without slowing down the rest of the game too much.Good luck
Накратко. Няколко добрият начин, ползвам, работи, няма грешка:
Специализиран хардуерен декодер в чип, както в PS5. Някой ще каже, ама това е скъпо. Аз ще кажа, глупости. Това е чип с десетки пъти по-малко елементи от вашият съвременен централен процесор, или графичен процесор. Може, и се литографира със значително по-евтин литографски процес, няма никаква нужда от 7, 5, или 3 нанометра. По същество е хардуерно пресъздаден алгоритъм, или набор алгоритми. От едната страна влиза компресираната информация от другата излиза декомпресирана, не ангажира почти нищо от останалите компоненти на компютъра. Ефективност като машина за мелене на месо. Меле без милост.