Miesięczne archiwum: Kwiecień 2016

Test Dark Souls III GTX960

Ustawienia graficzne:

  • Internal – rozdzielczość 1366×768
  • external – rozdzielczość 1920×1080

dark souls 3 gtx960 egpu test ustawienia 1 dark souls 3 gtx960 egpu test ustawienia 2

Benchmark:

Fragment początkowej lokacji na cmentarzu, aż do 2-giego ogniska w Wysokiej Ścianie Lothric.

Wyniki:

  • internal – wykres czerwony
  • external – wykres zielony

dark souls 3 gtx960 egpu test wyniki 1 dark souls 3 gtx960 egpu test wyniki 2

Wnioski i spostrzeżenia:

  • test przeprowadzono na średnich ustawieniach graficznych; jedynym wyjątkiem były tekstury ustawione na maksimum.
  • wykres użycia pamięci vRAM sugeruje, że przy wyższych rozdzielczościach gra korzysta z więcej niż 2GB
  • obciążenie szyny na poziomie 20-40% w przypadku externala oraz 60% w przypadku internala można uznać za dość niskie co sugeruje, że gra nie doczytywała tekstur ze swapa/RAMu bez uprzedniego umieszczenia ich w vRAMIe.
  • uzyskany fps w przedziale 40-60 zarówno na externalu jak i internalu był całkowicie wystarczający do komfortowej rozgrywki. Co ważne – w badanym fragmencie nie wystąpił żaden drastyczny spadek fps.

W przeciwieństwie do testu na GTX560Ti 1GB tym razem Dark Souls 3 okazał się bezproblemowo grywalny na eGPU. Mamy więc po raz pierwszy do czynienia z grą, w której ograniczenie szyny jest ściśle uzależnione od ilości posiadanej pamięci vRAM. Silnik gry w przypadku małej ilości pamięci, nie wymienia starych tekstur lecz „na bieżąco” pobiera nowe ze swapa/RAMu – powoduje to gigantyczne lagi uniemożliwiające rozgrywkę. Posiadanie karty z większą ilością pamięci zapobiega tej sytuacji. Warto mieć to na uwadze przy wyborze karty graficznej do eGPU.

Test Dark Souls III GTX560Ti

Uwaga: poniższy test dotyczy karty GTX560Ti z 1GB pamięci vRAM. Jak wykazał mój test na karcie GTX960 4GB oraz jak raportują posiadacze kart graficznych z min. 2GB pamięci vRAM, problem opisany poniżej występuje znacznie rzadziej, a gra jest całkowicie grywalna na eGPU.

Ustawienia graficzne:

  • Internal – rozdzielczość 1280×720
  • external – rozdzielczość 1280×720

Dark Souls 3 egpu test ustawienia 1 Dark Souls 3 egpu test ustawienia 2

Benchmark:

Bardzo krótki fragment początkowej lokacji na cmentarzu.

W rozdzielczości FullHD gra nie była możliwa ze względu na bardzo niski poziom fps (2-3)

W rozdzielczości FullHD gra nie była możliwa ze względu na bardzo niski poziom fps (2-3). Proszę zwrócić uwagę na poziom obciążenia szyny (parametr GPU Video Bus Load)

W rozdzielczości HD fps uległ poprawie

W rozdzielczości HD fps, jak również parametr GPU Video Bus Load uległ poprawie.

Dark Souls 3 egpu test benchmark 3 Dark Souls 3 egpu test benchmark 4 Dark Souls 3 egpu test benchmark 5

Wyniki:

  • internal – wykres czerwony
  • external – wykres zielony

dark souls 3 egpu test wyniki 1 dark souls 3 egpu test wyniki 2

Wnioski i spostrzeżenia:

  • test przeprowadzono na najniższych dostępnych ustawieniach graficznych. Co więcej, na externalu po raz pierwszy w historii tego bloga zmuszony byłem wykonać test na rozdzielczości HD, gdyż w FullHD było to kompletnie niewykonalne.
  • śledząc krzywą wykresów GPU Video Bus Load oraz FPS można dostrzec klasyczne ograniczenie wydajności przez szynę (lustrzane odbicie, gdy jeden wykres rośnie drugi o analogiczną wysokość spada)
  • pomimo tego wskaźnik GPU D3D Usage sugeruje pełne wykorzystanie karty graficznej co oczywiście jest bardzo mylące
  • zwracam również szczególną uwagę na dodatkowe wykresy użycia pamięci RAM, pliku stronicowania oraz vRAMu karty graficznej. Łącznie gra wykorzystuje tylko w początkowej lokacji, aż 10GB miejsca na swoje dane
  • uzyskany fps zarówno na inteernalu jak i externalu jest tragiczny; jakiekolwiek ruchy kamery powodują gigantyczne spadki do poziomu 2-3fpsów; w rozdzielczości FullHD szyna „krztusi się” cały czas

W związku z powyższym, na chwilę obecną (tj. wersję 1.03) gra na kartach graficznych z 1GB pamięci jest całkowicie niegrywalna zarówno na internalu jak i externalu. Wykresy użycia pamięci sugerują, że gra wykorzystuje bardzo duże bitmapy tekstur, które nie mieszczą się w 1GB vRAM karty graficznej i są „odkładane” do pamięci RAM oraz pliku stronicowania. Stamtąd w razie konieczności (np. przy ruchu kamery w inną stronę) są pobierane, przesyłane magistralą PCI-E do karty graficznej która renderuje wyłącznie bieżący obraz. Na poparcie tej tezy wspomnę również o występującym w grze efekcie tkz. „texture pop-in” czyli sytuacji gdy widzimy nakładanie wysokiej rozdzielczości tekstur na nisko oteksturowane obiekty otoczenia.