Jump to content
udam_u

3D Mark Time Spy - nowy test wykorzystujący API DX12

Recommended Posts

Futuremark właśnie udostępnił do pobrania nowy test "Time Spy" wykorzystujący najnowsze niskopoziomowe API DX12 Microsoftu. W przeciwieństwie do trochę już leciwego testu Firestrike nowy benchmark potrafi wykorzystać asynchroniczne obliczenia GPU, rendering odbywa się z wykorzystaniem wielu wątków oraz istnieje możliwość łączenia różnych kart w trybie "SLIFire" dzięki obsłudze technologii Explicit Multiadapter. Historycznie pojawienie się nowego 3D Marka zawsze symbolizowało zmierzch starej epoki oraz nadejście nowej. Patrząc po ilości tytułów wykorzystujących niskopoziomowe API wydaje się, że tym razem Futuremark lekko zaspał, choć z drugiej strony ze względu na rewolucyjność nowych API zrzucających dużo więcej pracy na programistów ale jednocześnie oddających w ich ręce pełną kontrolę, decyzja o zwlekaniu mogła być słuszna, ponieważ deweloperzy dopiero zapoznawali się z nową technologią i wcześniej nie wiadomo było, które funkcjonalności nowego API staną się kluczowe dla twórców gier (pierwsze pokaz działającego benchmarka odbył się ponad pół roku temu, co się działo przez ten czas?).

 

Aktualnie na rynku są już dostępne tytuły, w których zastosowanie nowych niskopoziomowych API można uznać uczciwie za dojrzałe (Ashes of Singularity oraz DooM). Pozostaje jednak pytanie, czy pojawienie się nowego 3D Marka nie zwiastuje rychłego wysypu tytułów obsługujących nowe, niskopoziomowe interfejsy programistyczne? Pierwsze testy pokazują przewagę rozwiązań AMD nad rozwiązaniami Nvidii. 

RX480 z ponad 15% przewagą wygrywa z GTX970. Czy nowy 3D Mark obiektywnie ocenia wydajność sprzętu pod kątem nadchodzących tytułów i dobre wyniki AMD są  opóźnioną wypłatą, za wkład tej firmy w rozwój niskopoziomowych API? A może jest to tylko nic nie znaczące demko technologiczne, będące zbiorem funkcji, które znalazły się w worku podpisanym DX12, nie mające jednak pokrycia z tym co pokażą deweloperzy w nadchodzących grach?

 

 

(

)

Share this post


Link to post
Share on other sites

U mnie na 980Ti:

 

http://www.3dmark.com/3dm/13218671

 

Co do bencha'a to jak ostatnie od Futuremark tak i ten nie powala grafiką w ogóle. Co do DX12 to czas pokaże jak to się rozwinie. Przewaga AMD jest, wiec Nvidia ma mało czasu na poprawienie tego w nowych kartach. Czyli musi wypuścić szybciej następców 10x0 z poprawioną obsługą asynchronicznych obliczeń.   

  • Upvote 2

Share this post


Link to post
Share on other sites

U mnie na 980Ti:

 

http://www.3dmark.com/3dm/13218671

 

Co do bencha'a to jak ostatnie od Futuremark tak i ten nie powala grafiką w ogóle. Co do DX12 to czas pokaże jak to się rozwinie. Przewaga AMD jest, wiec Nvidia ma mało czasu na poprawienie tego w nowych kartach. Czyli musi wypuścić szybciej następców 10x0 z poprawioną obsługą asynchronicznych obliczeń.   

 

Fakt, nie jest to demko na miarę Nature z 3DM01 lub Mother Nature z 3DM03 ale mamy w końcu benchmark DX12 z bardziej zaawansowaną grafiką niż API overhead test, który co ciekawe obsługuje DX 12 feature level 11_0 aby zapewnić jak największą kompatybilność z aktualnie dostępnym sprzętem.

Złożoność scen wzrosła 3x jeżeli chodzi o geometrie względem Firestrike, także postęp jest. Z mniej ciekawych odkryć benchmark wywala mi się podczas ładowania testu CPU. [: Pascale z tego co widziałem dostają ok 7% przyrostu z włączonym Async. Na AMD jest to ok 12%. Maxwell niestety odnotowuje tylko spadki.

Share this post


Link to post
Share on other sites

Ostanimi czasy pojawiło się wiele wątpliwości odnośnie testu Time Spy. Większość tyczyła się sposobu implementacji Asynchronous Compute. Chodzi o podejrzenie implementacji sprzyjającej produktom Nvidii (stąd przyrost wydajności na Pascalach), która z kolei nie pozwalałaby rozwinąć w pełni skrzydeł Radeonom. Futuremark nie zwlekał długo z udzieleniem odpowiedzi i na swojej stronie wydał oficjalne oświadczenie.

http://www.futuremark.com/pressreleases/a-closer-look-at-asynchronous-compute-in-3dmark-time-spy?_ga=1.72176851.1110393204.1468547815

 

W skrócie z publikacji możemy się dowiedzieć jak wygląda proces tworzenia benchmarka. W jego rozwoju biorą udział najważniejsi gracze na rynku (w tym Nvidia oraz AMD). Tworzony jest jeden build do którego drzewa mają wgląd obaj producenci, mogąc jednocześnie sugerować usprawnienia. Podobno żadnej poprzedniej wersji benchmarka producenci sprzętu nie poświęcili tyle uwagi. W przypadku, gdy występował konflikt interesów pomiędzy firmami z gremium Futuremark producent posiłkował się również opinią developerów gier.

 

Benchmark wykorzystuje tylko jedną "ścieżkę renderowania" dla wszystkich producentów sprzętu. W przeszłości rozważano osobne ścieżki dla poszczególnych vendorów ale porzucono ten pomysł aby zapewnić równe warunki dla wszystkich obecnych oraz przyszłych produktów (które w przypadku optymalizacji ściśle pod jedną architekturę spowodowałyby szybkie zestarzenie się benchmarka).


Dalej opisana jest różnica w delegowaniu zadań pomiędzy DX11 oraz DX12 (gdzie jest to proces podzielony) oraz najważniejsze - jak są wykonywane rozkazy z listy komend podczas delegowania do poszczególnych kolejek rozkazów. W DX12 są dostępne 3 kolejki do których moga być delegowane zadania (Direct, Compute, Copy). Jeżeli chodzi o implementacje obliczeń asynchronicznych to z trzech kolejek rozkazów istniejących w DX12 (Direct, Compute, Copy) w Time Spy wykorzystywane są 2 z nich. Kolejka Copy służąca do streamingu danych nie jest wykorzystywana aby uniezależnić wyniki uzyskiwane w benchmarku na wpływ urządzeń pamięci masowych mających różną wydajność w zależności od tego co użytkownik ma w komputerze zamontowane.
IC839522.png
Rozkazy z poszczególnych list mogą być wykonywane na GPU równolegle ale kluczowe jest tu słowo mogą (mogą ale nie muszą). Generalnie do kolejki Direct (czyli tej odpowiedzialnej za grafikę 3D, 3D queue na slajdzie) może być delegowane zadania z list Direct, Copy oraz Compute. Do kolejki Compute można wysłać zadania z  list Compute oraz Copy a kolejka Copy obsługuje tylko listy Copy. To od producenta sprzętu i jego drivera zależy, czy zadania delegowane do sprzętu zostaną wykonane faktycznie równolegle (sposób preferowany przez karty AMD), czy driver sklei je i deleguje do wykonania jako jedna kolejka Direct (jak robi to w przypadku Maxwelli). W przypadku Pascali zadania są delegowane do kolejki Compute jak w Fury z małym zastrzeżeniem, że driver sam tworzy sobie dodatkowe punkty synchronizacji. :D

 

W benchmarku obliczenia asynchroniczne wykorzystywane są do:

1. Particle Simulation
2. Light culling and tiling

3. Environment refections

4. HBAO

5. Unshadowed surface illumination

 

Poniżej graf z zaznaczeniem jak wygląda synchronizacja obliczeń z poszczególnych kolejek w engine Time Spy.
time-spy-async-queue.jpg

Podsumowując wniosek z publikacji taki: 
1) Futuremark nie chce faworyzować żadnego z producentów sprzętu. 
2) Mimo to, że aplikacja deleguje pracę do wykonania w sposób asynchroniczny, to od drivera zależy w jaki sposób obliczenia zostaną wykonane przez sprzęt (sklejenie do jednej kolejki Direct, czy wykonanie równoległe w kolejkach Direct oraz Compute). Prawdopodobnie dodatkowy koszt sklejania kolejek przez driver powoduje lekki spadek wydajności na Maxwellach.

Mam nadzieje, że przyda się to komuś. (:

EDIT:
Jakby ktoś chciał samemu przeanalizować działanie aplikacji w GPUView, poniżej zamieszczam 3 filmiki mojego autorstwa jak to zrobić.

 

1) Instalacja

 

 

 

 

2) Jak logować zdarzenia Windows, które następnie przegląda się w formie graficznej w GPUView. Logowanie odpala się w konsoli wpisując "log.cmd". Na filmiku odpaliłem logowanie tylko poglądowo, bez uruchomionej w tle aplikacji 3D.  Generalnie aby coś analizować musi być odpalona jakaś gra. Można to zrobić tak, że minimalizujemy aplikacje 3D, odpalamy logowanie w oknie konsoli, przywracamy  okno aplikacji 3D, logujemy kilka sekund działania (pliki z logami osiągają monstrualne rozmiary także polecam logowanie tylko kilka sekund w wybranym miejscu), następnie znowu minimalizujemy aplikacje 3D,

wpisujemy ponownie log.cmd co kończy logowanie i tworzy plik Merged, który nas interesuje.

Podczas pierwszej próby logowania zdarzeń wyskoczył mi błąd 766, nie wiem czy ma to związek z moim komputerem (2 procesory pracujące w trybie NUMA), czy jest to generalny problem tego skryptu. W filmiku jest pokazane jak się uporać z tym problemem.

 

 

 

 

3) Otwieranie pliku Merged w GPUView do analizy
 



Udanej analizy! (: Edited by udam_u
  • Upvote 2

Share this post


Link to post
Share on other sites

Nie od dziś wiadomo ze do 1 benchmarka to łatwo robić wałek  :wink2:

http://pclab.pl/art3068-9.html

I w żaden async na Pascalu nie ma .  To jest kopia maxwella z bardzo symbolicznymi usprawieniami z Volty

 

No to akurat znany epizod w historii Nvidii i nie tylko w 3D Marku ten przekręt był widoczny - w Far Cry również udowadniano zmniejszenie precyzji obliczeń na NV30/NV35. ATI swoją architekturą R300 odskoczyło tak daleko, że tylko posiłkując się nieuczciwymi trikami Nvidia mogła nawiązać walkę w słupkach wydajności (chociaż ATI też swego czasu kombinowało obniżając poziom MIPmap, było to chyba przy generacji R200). Wydaje mi się, że w obecnych czasach takie zagrywki byłyby dużo bardziej ryzykowne niż kiedyś.

Czy w Pascalu jest AC? To zależy jak zdefiniujemy AC. Jeżeli traktujemy to na poziomie API, jako możliwość wykonywania listy zadań w kolejce COMPUTE to widać, że obecnie jest taka możliwość w Pascalach. Jeżeli traktować to na poziomie sprzętowym to...no szczerze nie wiadomo jak to porównywać, ponieważ są to różne architektury i jest to jak porównywanie HT Intela do modułów AMD. Inna jest na pewno zasada działania i musiałaby to przeanalizować i porównać osoba orientująca się w obu architekturach na poziomie o wiele niższym niż to na czym można bazować czytając w internetach. No i oczywiście w jakiejś specyfikacji musiało by być określone jakie warunki sprzęt ma spełniać aby go uznać za AC capable. Dla programistów kluczowe jest, żeby ficzer był dostępny z poziomu API i nie wymagał jakichś karkołomnych operacji, żeby były z niego korzyści (tutaj w przypadku GeForców jest to chyba trochę kłopotliwe - myślę o pamiętnej liście Do's And Dont's Nvidii).  

Edited by udam_u

Share this post


Link to post
Share on other sites

Albo Half Life  2 Gdzie na fx leciał w dx 8 i wygladał jak kupa zreszta jak wszystkie gry na tej serii a na radeonie w dx 9

 

 

To ja ci dam przykład nowej ze dalej to robi  .....  Znacznie gorsze oswietlenie na pascalu np w 45 sekundzie  , 50 , 1:16 1:30

Obie firmy to robią np AMD przycina tekstury na fury-x aby zmieścić 4GB  z  ta jednak   róznica ze nvidia jest królem  xD

Edited by damian25
  • Upvote 1

Share this post


Link to post
Share on other sites

Widać to wyraźnie na tym filmiku - szacun, że to wyłapałeś. Pytanie tylko, czy to celowe zagranie mające na celu zwiększenie wydajności GTX1080, czy tylko bug w sterownikach. Zobacz na przykład filmik z prezentacji Rx480.

 

Grafika wygląda inaczej na sprzęcie Nvidii oraz AMD, okazało się poźniej, że różnica wynikała z tego, że jakiś shader źle działał na sprzęcie Nvidii (bug w driverze). 

 

Poza tym producenci sami też w sterownikach udostępniają opcje optymalizacji. Kiedyś się zdziwiłem wchodząc w ustawienia mojego Radeona (ustawienia globalne), gdzie tryb teselacji bł ustawiony na "Optymalizacja AMD". Nigdy tego ustawienia sam nie zmieniałem, driver po instalacji miał taką wartość domyślnie (oczywiście jest też opcja "ustawienia aplikacji" ale samemu to trzeba przełączyć). Acha jest też opcja "Optymalizacja formatu powierzchni". [: Gdyby teraz porównać obraz z Radeona i GF, możliwe, że dałoby się wyłapać różnice. Nie mamy 100% pewności, że na tym przytoczonym filmiku nie ma podobnej sytuacji (no chyba, że autor specjalnie zwracał na to uwagę i błąd ten jest wykluczony).

Edited by udam_u

Share this post


Link to post
Share on other sites

Widać to wyraźnie na tym filmiku - szacun, że to wyłapałeś. Pytanie tylko, czy to celowe zagranie mające na celu zwiększenie wydajności GTX1080, czy tylko bug w sterownikach.

 

 

Ta gra to kreskówka wiec łatwo wyłapać .Owszem to nie bug a ma na celu zwiekszenie fps i pwoiem ci ze jesli to widac na skompresowanym filmiku z yotube to jest tam z 30% fps na + bo mocno przycieli . Na porównaniu 780ti vs 980ti obraz praktycznie sie nie rózni choc tam mozna znależć ze w odali 780ti lepiej rysuje obraz ale są to już pomijane wartosci .

Ciekawe czy to po prostu nizszy preset czy wykorzystali to mieszaną precyzje na pascalu która pascal dostał od volty .Bo oprócz tego to on chyba sie praktycznie niczym nie rózni xD

Edited by damian25

Share this post


Link to post
Share on other sites

Ta gra to kreskówka wiec łatwo wyłapać .Owszem to nie bug a ma na celu zwiekszenie fps i pwoiem ci ze jesli to widac na skompresowanym filmiku z yotube to jest tam z 30% fps na + bo mocno przycieli . Na porównaniu 780ti vs 980ti obraz praktycznie sie nie rózni choc tam mozna znależć ze w odali 780ti lepiej rysuje obraz ale są to już pomijane wartosci .

Ciekawe czy to po prostu nizszy preset czy wykorzystali to mieszaną precyzje na pascalu która pascal dostał od volty .Bo oprócz tego to on chyba sie praktycznie niczym nie rózni xD

 

Taki "typowy Janusz" jak ja nie zauważy tego, szczególnie jak nie będzie to porównanie jak na tym filmiku i nie będzie podanej sekundy. :D

Taka teoria spiskowa jest możliwa, kto wie może więcej osób zwróci na to uwagę, zrobi się troche szumu w internecie, Nvidia będzie się musiała ustosunkować i gó... wypłynie na wierzch. [:

Edited by udam_u

Share this post


Link to post
Share on other sites

A to zadna teoria spiskowa .

Co za problem wymusic w sterowniku niższy preset . Na w wiedzminie 3 na Ultra w  radeonie jak wymusisz preset  tesellacji z 64 na 32 )której róznicy nie zauważysz na 99% ) to masz 40% fps w góre .

Słuchaj nvidia podaje w specyfiakcji  1070 ze ma 64 rop a pobobno ma 48 .Ona ma to gdzieś a nie ze bedzie sie ustosunkowywać xD

 

 

A tutaj porównanie z 780ti .jak widac obraz w oswietleniu sie nie różni a na pewno nie w sposób znaczący .Natomiast zobacz jak 780ti narysowała  np kratke wentylacyjną na 45 sekundzie

Edited by damian25
  • Upvote 1

Share this post


Link to post
Share on other sites

A to zadna teoria spiskowa .

(...)

Słuchaj nvidia podaje w specyfiakcji  1070 ze ma 64 rop a pobobno ma 48 .Ona ma to gdzieś a nie ze bedzie sie ustosunkowywać xD

(...)

A tutaj porównanie z 780ti .jak widac obraz w oswietleniu sie nie różni a na pewno nie w sposób znaczący .Natomiast zobacz jak 780ti narysowała  np kratke wentylacyjną na 45 sekundzie

 

Gdy ludzie używający kart 970 do obliczeń odkryli, że wydajność spada po zaalokowaniu więcej niż 3,5GB Nvidia wydała oświadczenie w tej sprawie. Nie sądzę, żeby mieli w poważaniu swoich klientów.

 

Szczerze to nie widze różnicy na tej kratce - jedyne co widzę to inne ustawienia kontrastu po cieniach.

Edited by udam_u

Share this post


Link to post
Share on other sites

No cóz .Zycie .Na pclabie np jest taki pajac sideband     który choćby nvidia zrobiła g to mówi ze to Nuttella .Obserwuje go tak od roku . Dostaje kase od nvidii co jest słabe bo szczerzę watpie zeby był tak ułomny  .Poziom frajerstwa level 10 .

Ostatnio to wciska tam że 1080 jest 50% szybsze od 980ti np

Tak na poprawe humoru   hehehe

Edited by damian25

Share this post


Link to post
Share on other sites

No nikt nie moze być takim fajboyem bez dostawania $$$$  Proste ;)

Tu też takich znajdziesz. Jak na każdym portalu, jak popatrzysz pod testami grafik to 30% komentarzy to max 4 osoby. :)

Share this post


Link to post
Share on other sites

Tylko ze on nie jest  fanbojem  a wprowadza celowo w bład .  

Co nvidia wprowadz obecnie to pieje jak kogut nad tym  i to zawsze nawet jak zrobi kupe przy tym xD

On mówi ze g to nutella a to dwie rózne sprawy :mur:

Swiruje oczywiscie bo mam to gdzieś :-) :-)

Share this post


Link to post
Share on other sites

Tylko ze on nie jest  fanbojem  a wprowadza celowo w bład .  

Co nvidia wprowadz obecnie to pieje jak kogut nad tym  i to zawsze nawet jak zrobi kupe przy tym xD

On mówi ze g to nutella a to dwie rózne sprawy :mur:

Swiruje oczywiscie bo mam to gdzieś :-) :-)

Jakiś czas temu na tym portalu napisałem, że Titan z HBM będzie tylko Profesional to mnie zjedli :). Teraz wiem że temu coś wycieli niesprawny kontroler pamięci HBM. Przy tej wielkości rdzenia to będzie wyczyn to chłodzić, może dla tego tak niskie takty jak na Paskala.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...




×
×
  • Create New...