r   e   k   l   a   m   a
r   e   k   l   a   m   a

Poziom wsparcia to nie wszystko. NVIDIA ma problemy z wydajnością w DirectX 12

Strona główna AktualnościSPRZĘT

DirectX 12 obiecał gwałtowny skok wydajności dla gier – i ta obietnica wystarczyła, by czołowi producenci GPU zaczęli się licytować poziomem zapewnianego wsparcia. Do tej pory liderem wydawała się tu NVIDIA, jako jedyna zapewniająca w aktualnie oferowanej architekturze Maxwell 2. generacji poziom wsparcia 12_1, podczas gdy AMD pozostawało na poziomie 12_0, zaś Intel – 11_1. Sprawa może jednak wcale nie być taka prosta. Pierwsze realne testy zbudowanej na silniku Nitrous gry Ashes of Singularity, pokazały, że pod DX 12 sprzęt Nvidii zyskuje znacznie mniej niż sprzęt AMD.

Przeprowadzone w serwisie ExtremeTech testy z wykorzystaniem kart GeForce 980Ti oraz Radeon Fury X pokazały, że o ile pod kontrolą DX 11 karta AMD wypada w Ashes of Singularity znacznie gorzej (o 30-40%) od karty Nvidii, to już pod DX 12 sytuacja radykalnie się zmienia. Najsilniejszy z Radeonów nie tylko zrównał się w wynikach z najsilniejszym z GeForce, ale w niektórych wypadkach go wyprzedził – widać to w rozdzielczościach 4K, przy maksymalnym obciążeniu.

Autorzy testów, szukając wyjaśnienia sytuacji, zwracali uwagę na radykalnie odmienne podejścia obu producentów GPU do współpracy z deweloperami. Strategia Nvidii była znacznie korzystniejsza w erze DX 11, wysokopoziomowego interfejsu który nie odnosi się bezpośrednio do którejkolwiek architektury. Bardzo dużo można było zrobić w kwestii ręcznej optymalizacji na poziomie samych sterowników pod kątem określonych gier, nie wspominając już o grach korzystających dodatkowo z middleware GameWorks. W erze DX 12 już tak bawić się jednak nie można, wiele z dotychczasowych optymalizacji po prostu nie będzie działało. Z kolei dobre wyniki karty AMD wynikają właśnie z tego, że nowe DirectX nie zmusza do tworzenia specyficznych optymalizacji pod daną grę na poziomie sterownika. Czy jednak to naprawdę wszystko?

r   e   k   l   a   m   a

Reakcja Nvidii na benchmarki była natychmiastowa, można ją określić jako próbę zdyskredytowania zarówno samej gry, jak i uzyskanych wyników, zrzucenia problemu na błędy w grze, wskutek których wykorzystanie antyaliasingu MSAA prowadziło do spadku wydajności. Producent gry, studio Oxide, zarzuty zielonych nie tylko odrzucił, ale zwrócił uwagę właśnie na niedoskonałości sterownika Nvidii. To rozpoczęło prawdziwą burzę, która ujawniła bardzo ciekawe kwestie ograniczeń samej architektury Maxwell.

Zaczęło się od forum dyskusyjnego Overclock.net, gdzie programista ze studia Oxide przyznał, że Maxwell nie wspiera natywnie mechanizmu Async Compute. Został on więc wyłączony na prośbę Nvidii, ponieważ korzystanie z niego pogarszało wyniki. Mechanizm ten pozwala na jednoczesne przenoszenie danych dla grafiki i dla obliczeń oddzielnymi kanałami. W obecnej architekturze kart Nvidii dysponujemy jednym pasmem dla grafiki i 32 pasmami dla obliczeń, jednak przekazanie danych dla obliczeń możliwe jest dopiero po zmianie kontekstu pracy karty. Z kolei architektura GCN w kartach AMD oferuje jedno wspólne pasmo dla grafiki i obliczeń oraz dodatkowe osiem pasm po osiem niezależnych torów dla obliczeń.

I właśnie to umożliwia wydajne uruchomienie asynchronicznych shaderów, czyli równoległe wykonywanie zadań dla GPU – działają one bezpośrednio na asynchronicznych silnikach obliczeniowych (ACE) Radeonów, co w warunkach stawiającego na paralelizację interfejsu grafiki Microsoftu pozwala im na łatwe osiągnięcie wyższej niż Maxwelle wydajności.

AMD oczywiście nie omieszkało publicznie skrytykować tej słabości konkurenta. Na łamach reddita jeden z czerwonych napisał: NVIDIA zapewnia o „pełnym” wsparciu DX 12, ale wygodnie ignoruje fakt, że architektura Maxwell jest całkowicie niezdolna do asynchronicznych obliczeń bez powolnego zmieniania kontekstu. Tymczasem GCN wspierało asynchroniczne shadery od samego ich powstania, w nadziei i oczekiwaniu, że gry zaczną wykorzystywać takie obciążenia robocze.

Oczywiście trzeba pamiętać, że AMD nie może jeszcze ot tak sobie zignorować swoich problemów z wydajnością pod DX 11. Nowe API grafiki Microsoftu jeszcze długo nie zdominuje rynku, choćby z tego powodu, że jest interfejsem przeznaczonym wyłącznie dla Windows 10, a popularność tego systemu wśród graczy wciąż nie jest tak duża, by zaryzykować tworzenie gier tylko pod DX 12. Na dłuższą metę trendy jednak AMD sprzyjają – w ciągu ostatniego miesiąca popularność Windows 10 na Steamie wzrosła o ponad 13 punktów procentowych (obecnie 16,39% użytkowników tej platformy korzysta z 64-bitowego Windows 10). Jeśli więc AMD przetrzyma te swoje najbliższe trudne kwartały do wydania większej liczby gier korzystających z Direct X 12, to jego sytuacja na trudnym rynku GPU powinna być znacznie lepsza niż dzisiaj.

© dobreprogramy
r   e   k   l   a   m   a
r   e   k   l   a   m   a

Komentarze

r   e   k   l   a   m   a
r   e   k   l   a   m   a
Czy wiesz, że używamy cookies (ciasteczek)? Dowiedz się więcej o celu ich używania i zmianach ustawień.
Korzystając ze strony i asystenta pobierania wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki.