Turbo doładowanie gier już dostępne. Microsoft goni współczesność

directstorage windows 10

DirectStorage zapewnia posiadaczom konsol Xbox Series i wybranych PC z Windowsem 11 ogromnego kopa w wydajności i czasach ładowania. Na szczęście technologia będzie wdrożona również i do Windowsa 10. Częściowo.

DirectStorage to nazwa, która raczej nie brzmi zbyt atrakcyjnie. Jest to jednak niezwykle ważna technologia Microsoftu. Aż dziw, że zadebiutowała najpierw w urządzeniach do gier wideo – konsolach Xbox Series – zamiast w czymś dla klientów biznesowych. W każdym razie DirectStorage to zarówno rewolucja, jak i dość duże nadganianie zaległości.

Co to jest DirectStorage?

DirectStorage to API (interfejs programistyczny dla gier i aplikacji) do obsługi odczytu i zapisu danych z pamięci. PC z Windows 10 i konsole Xbox One korzystają z API zbudowanego wiele lat temu, kiedy pamięci masowe wykorzystywały dużo mniej zaawansowane technologie. Technika przetwarzania danych ze starych dysków talerzowych jest wysoce nieoptymalna dla wysokowydajnej pamięci SSD w szczególności wykorzystującej technologie NVMe i szyny PCIe.

Na czym polegają usprawnienia wprowadzone przez DirectStorage?

Gry wideo optymalizowane pod dyski talerzowe – a więc pod minioną generację konsol – typowo strumieniowały dane z pamięci z przepływnością na poziomie 50 MB/s, w blokach po 64k, co przekłada się na kilkaset odwołań na sekundę do procesora konsoli po nowe dane do przetworzenia. Konsole bieżącej generacji (i nowoczesne gamingowe PC) wykorzystują pamięci NVMe, których przepływność liczona jest w gigabajtach na sekundę. Pamięć Xboxa Series X sprzętowo zapewnia przepływność 2,4 GB/s, co przekłada się na ponad 35 tys. odwołań do bloków po 64k na sekundę.

Wykorzystując dotychczasowe API, aplikacja (czyli gra wideo) musiała każde odwołanie obsłużyć sekwencyjnie. A więc wysłać zapytanie i czekać na odpowiedź. Dopóki tych odwołań było mało, nie było to problemem – każde z nich to relatywnie prosta operacja. Jednak zwiększenie ich liczby tysiące razy zaczyna sprawiać problem.

DirectStorage pozwala na równoległe przetwarzanie odwołań i znaczące skrócenie drogi obiegu danych. Nowe API pozwala twórcom gier w ramach jednej instrukcji zlecić wiele odwołań do pamięci, zamiast każdemu odwołaniu poświęcać osobną instrukcję. Umożliwia też przeniesienie danych mających być przetworzonymi przez procesor graficzny z niemal całkowitym pominięciem pośredniczącego do tej pory w transferze procesora centralnego.

Jak duży ma wpływ wydajność oprogramowania na ogólną wydajność sprzętu?

Podobno ogromny. DirectStorage umożliwia twórcom gier wprowadzenie równoległego pobierania, przetwarzania i wysyłania danych, a także przenoszenia ich bezpośrednio pomiędzy RAM-em a pamięcią układu graficznego. Równocześnie też zapewnia obsługę dekompresji danych. To znacząco odciąża procesor główny urządzenia. Jaki to ma realny wpływ na wydajność sprzętu?

Jak twierdzi Microsoft, typowa gra na starym API rezerwowała sobie większość rdzeni CPU konsoli Xbox Series X do operacji wymiany danych. Z DirectStorage potrzebuje zarezerwować tylko część czasu pojedynczego rdzenia do tych samych operacji, zwalniając resztę zasobów procesora do innych przeliczeń.

DirectStorage trafia na PC. Twórcy gier nie muszą ograniczać się tylko do graczy z Windowsem 11.

Microsoft już dłuższy czas temu zapowiedział skopiowanie DirectStorage z konsol Xbox Series do PC. Do tej pory firma jednak sugerowała, że tylko posiadacze pamięci NVMe z Windowsem 11 na pokładzie skorzystają z atutów nowej technologii. Wymóg NVMe pozostaje w mocy, co zrozumiałe. Nie trzeba będzie jednak aktualizować komputera.

Gry pisane z myślą o DirectStorage będą wymagać Windowsa 10 w wersji 1909 lub nowszej. To niezwykle ważne, bowiem można być pewnym, że duża część graczy prędko nie przesiądzie się na Windowsa 11 – chociażby z uwagi na jego surowe wymagania względem sprzętu. Mało który liczący się programista zachce ograniczyć swoją potencjalną klientelę wyłącznie do używających najnowszego OS-a. To by w efekcie sprawiło, że mało który deweloper implementowałby DirectStorage w swoich grach.

Co to oznacza w praktyce? Z DirectStorage może korzystać każdy, kto ma z pamięcią SSD korzystającą z technologii NVMe oraz osoby z Windowsem 10 1909 lub nowszym. Na efekty trzeba będzie jednak pewnie trochę zaczekać, bo można je będzie dostrzec, gdy pojawią się pierwsze gry na DirectStorage oparte.

Windows 11 – jak twierdzi Microsoft – nadal zapewni najwyższą wydajność w grach wideo za sprawą optymalizacji w stosie pamięci, których Windows 10 już nie otrzyma. Nie zmienia to jednak faktu, że gry te będą działać na starszych systemach. Teraz pozostaje tylko trzymać kciuki, by pamięci NVMe stały się standardem wśród graczy. A więc by gry mogły być projektowane wyłącznie z myślą o ich posiadaczach.

Szybsze przetwarzanie danych z pamięci to bowiem nie tylko szybsze wczytywanie się gier. To również możliwość strumieniowania większej ilości danych z pamięci podczas działania gry, a więc możliwość wyświetlenia dużo większej liczby bardziej złożonych elementów na ekranie. To z kolei otwiera nowe możliwości projektantom gier, którzy będą mogli wprowadzać do nich nowe mechaniki. A nawet jeśli nie, już sam podwyższony realizm wizualny gier sprawia, że to – nomen omen – gra warta świeczki.