Jak działa wielowątkowość DirectX 11 na kartach AMD Radeon i NVIDIA GeForce - test porównawczy

Jak działa wielowątkowość DirectX 11 na kartach AMD Radeon i NVIDIA GeForce - test porównawczy

Wielowątkowość API DirectX 11 na kartach AMD i NVIDIA - test

Optymalizacja sterowników kart graficznych AMD Radeon oraz NVIDIA GeForce pod kątem wydajności procesorów to kwestia niewątpliwie ciekawa, jak i budząca spore emocje wśród zwolenników rywalizujących ze sobą obozów. Jak wiadomo, w grach opartych na API DirectX 11 w sytuacjach, gdy wąskim gardłem jest CPU, najczęściej lepiej radzą sobie GPU zielonych, czemu typowo towarzyszy wyższe obciążenie jednostki centralnej. Dzisiejszy artykuł będzie się skupiał na tym ostatnim aspekcie, wokół którego narosło niemało teorii na temat przyczyn tego stanu rzeczy. W tym celu na tapet trafiła gra Watch Dogs 2, która posiada pewną cechę sprawiającą, że idealnie nadaje się do takiego porównania. Jaką dokładnie, dowiecie się niebawem, ale zanim przejdziemy do części praktycznej, na początek trochę informacji odnośnie działania wielowątkowości DirectX 11.

W dzisiejszym teście porównamy, jak działa wielowątkowość DirectX 11 na kartach AMD i NVIDIA. Zobaczmy, jakie są różnice w tej kwestii między producentami.

Jak działa wielowątkowość DirectX 11 na kartach AMD Radeon i NVIDIA GeForce - test porównawczy

 Osiągi CPU we współpracy z kartami GeForce/Radeon - test porównawczy

Kilka słów na realizacji wielowątkowości w API DirectX 11

Na temat DX 11 MT bardzo dobre materiały przygotowali Intel oraz Microsoft, do których odsyłam dociekliwych, a w tym miejscu przybliżone zostaną podstawy tej techniki. Podczas standardowego renderingu tworzony i używany jest tylko tzw. kontekst natychmiastowy (ang. Immediate Context), w ramach którego odbywa się komunikacja z GPU. Z kolei w wariancie wielowątkowym dodatkowo mamy tzw. konteksty odroczone (ang. Deferred Contexts), w których z wykorzystaniem wielu rdzeni tworzone są tzw. listy komend (ang. Command Lists). Gdy zbiór poleceń dla karty graficznej jest gotowy, następuje przesłanie go do GPU poprzez kontekst natychmiastowy, a całość ma na celu eliminację wąskiego gardła pojedynczego wątku, które często mocno obniża wydajność renderingu. Przy czym, żeby ten mechanizm nazwany Driver Command Lists (w skrócie DCL) w ogóle zadziałał, w sterowniku musi być zaimplementowane jego wsparcie (na obrazku jest to oznaczone jako Optional Hardware Acceleration). I tutaj pojawia się istotna różnica między oprogramowaniem AMD oraz NVIDII, gdzie to pierwsze takowego nie posiada, w przeciwieństwie do zielonych. Stąd właśnie bierze się rozbieżność w obciążeniu procesora, gdyż karty GeForce mogą skorzystać z wielowątkowości DirectX 11, podczas gdy Radeony nie.

Jak działa wielowątkowość DirectX 11 na kartach AMD Radeon i NVIDIA GeForce - test porównawczy

 AMD Ryzen 7 5800X3D - test najszybszego CPU do gier dla socketu AM4

Nie wszystkie źródła podzielają oficjalne stanowisko

Biorąc pod uwagę zawartość powyższego akapitu i źródła, na których jest oparty, można by w sumie powiedzieć, że sprawa jest wyjaśniona. Ale jednak nie do końca, bo poza oficjalną wersją jest też teoria nieoficjalna, którą de facto można nazwać spiskową. Mianowicie według niektórych DCL to tylko zasłona dymna, ewentualnie element opcjonalny dla twórców gier, gdyż NVIDIA tak naprawdę w swoich sterownikach zaimplementowała automatyczne rozbijanie renderingu na wiele wątków, bez potrzeby interwencji twórców danego tytułu. Rzeczą związaną z tym wynalazkiem zielonych miałby być większy narzut sterownika, tłumaczący wyższe obciążenie CPU we współpracy z GPU tego producenta. Tego typu stwierdzenia po raz pierwszy pojawiły się w tym filmie dostępnym na YouTube i na chwilę przy nim zostając, twórca swoją teorię oparł w dużej mierze na przypuszczeniu, że NVIDIA począwszy od generacji Kepler usunęła ze swoich układów graficznych sprzętowego planistę (ang. scheduler). Problem tylko w tym, że ta niby informacja, zaczerpnięta z serwisu AnandTech, dotyczyła zupełnie czego innego - uproszczenia planisty poprzez użycie dodatkowych informacji dostarczanych przez kompilator, a nie całkowitej jego eliminacji. W zasadzie mogłoby się więc wydawać, że cały wywód jest wątpliwy, ale mimo tego ów film do dzisiaj nie narzeka na brak wyznawców, a poza tym, jak to mówią, w każdej plotce może być ziarnko prawdy, ergo trzeba to zbadać.

Obserwuj nas w Google News

Pokaż / Dodaj komentarze do: Jak działa wielowątkowość DirectX 11 na kartach AMD Radeon i NVIDIA GeForce - test porównawczy

 0