> > > > Futuremark für Asynchronous Compute im 3DMark Time Spy detailliert aus

Futuremark für Asynchronous Compute im 3DMark Time Spy detailliert aus

DruckenE-Mail
Erstellt am: von

Im Zusammenhang mit der Implementation von Asynchronous Compute im Time-Spy-Benchmark hat Futuremark nach Bekanntwerden der Art und Weise wie dort auf bestimmte Prozesse zurückgegriffen wird, bereits mit einem Statement reagiert. Konkret geht es um den Vorwurf, Asynchronous-Compute-Prozesse seien nicht korrekt umgesetzt und bevorteilen damit den einen oder anderen Hersteller.

Genauer gesagt geht es darum, dass bei Verwendung einer Grafikkarte mit Maxwell-GPU von NVIDIA kein Asynchronous Compute angewendet wird, selbst wenn dies aktiviert und laut Hersteller auch möglich sein soll. Stattdessen sorgt der Treiber dafür, dass ein alternativer Renderpfad angewendet wird, was die Ergebnisse in gewisser Weise verfälscht. Unsere Ergebnisse zeigen dies auch in gewisser Form bzw. ein zu erwartendes Verhalten, denn für Asynchronous Compute gingen wir nicht mehr davon aus, dass NVIDIA diese mit der Maxwell-Architektur korrekt wird ausführen können.

Verteilung der Prozesse im 3DMark Time Spy
Verteilung der Prozesse im 3DMark Time Spy

Auch sollen die Aussagen von Futuremark für Verwirrung gesorgt haben, denn laut der Entwickler ist Time Spy der erste echte DirectX-12-Benchmark, der von Beginn an dahingehend optimiert wurde. Allerdings verwendet Time Spy nur das DirectX-Feature-Level 11_0 und bedient sich nur in Teilen im Feature-Level 12_0. Dies ist für das besagte Async Compute aber auch Explicit Multi Adapter der Fall.

Nun aber zur Veröffentlichung von Futuremark, die in allen Details auf die Implementation und Ausführung von Direct und Compute Queues eingehen soll. Dabei werden in Schaubildern bzw. Auswertungen der Queues auch die Unterschiede zwischen der GeForce GTX 1080, GeForce GTX 970 und Radeon RX 480 herausgestellt.

Laut Futuremark ist Asynchronous Compute der wichtigste Bestandteil von DirectX 12 und entsprechend groß ist der Einfluss dieser Funktionen im Time-Spy-Benchmark. Bei der Implementation habe man mit allen beteiligten Unternehmen zusammengearbeitet – AMD, Intel, Microsoft, NVIDIA und einige mehr.

Die Umsetzung sei in allen Fällen gleich und es gibt keine herstellerspezifische Optimierung. Daher seien auch die Ergebnisse sehr gut vergleichbar und bevorteilen keine bestimmte Hardware. Ob die Compute Queue aber seriell oder parallel ausgeführt würde, sei nicht die Entscheidung des Benchmarks, sondern des Treibers und hierher rühren laut Futuremark auch die Unterschiede in der Auswertung und Beurteilung des Benchmarks. Futuremark sei nicht in der Lage, bestimmten Prozessen ein spezifisches Verhalten oder bestimmte Bedürfnisse anzuheften. Demnach sei es auch nicht möglich, Einfluss auf die Abarbeitung durch den Treiber und letztendlich die Hardware zu nehmen.

Direct und Compute Queue bei der GeForce GTX 970, GeForce GTX 1080 und Radeon R9 Fury

Futuremark möchte dies auch mit einer detaillierten Analyse belegen, die wir versucht haben nachzuvollziehen. Erstellt wurde die Analyse mit einem Programm namens GPUView. GPUView stellt die Pakete dar, die in die Queues einsortiert und abgearbeitet werden. Horizontal getrennt dargestellt werden eventuell vorhandene Direct- und Compute-Queues.

Für die GeForce GTX 970 stellt sich dies wie folgt dar:

Prozess- und Queue Verhalten der GeForce GTX 970 (links mit Asynchronous Compute, rechts mit deaktiviertem Asynchronous Compute)Prozess- und Queue Verhalten der GeForce GTX 970 (links mit Asynchronous Compute, rechts mit deaktiviertem Asynchronous Compute)

Prozess- und Queue Verhalten der GeForce GTX 970 (links mit Asynchronous Compute, rechts mit deaktiviertem Asynchronous Compute)

Links ist GPUView mit aktiviertem Asynchronous Compute zu sehen, rechts mit deaktivierter Einstellung. In beiden Fällen aber ist das Verhalten grundsätzlich identisch, denn aus der dedizierten Compute Queue wird der Compute-Prozess seriell durch den Treiber an die Hardware-3D-Queue weitergeleitet. Auch wenn GPUView zwei separate Queues andeutet (gemischt mit Direct- und Compute-Prozessen), so werden diese letztendlich in einer einzige Hardware-Queue zusammengeführt.

Das Verhalten der Radeon R9 Fury unterscheidet sich hingegen maßgeblich:

Prozess- und Queue Verhalten der Radeon R9 Fury (links mit Asynchronous Compute, rechts mit deaktiviertem Asynchronous Compute)Prozess- und Queue Verhalten der Radeon R9 Fury (links mit Asynchronous Compute, rechts mit deaktiviertem Asynchronous Compute)

Prozess- und Queue Verhalten der Radeon R9 Fury (links mit Asynchronous Compute, rechts mit deaktiviertem Asynchronous Compute)

Hier sind zwei dedizierte Queues zu sehen, die von der Kontext-Seite (dem Spiel und in diesem Fall vom Time-Spy-Benchmark) in zwei Hardware-Queues überführt werden. Die dazugehören Prozesse können parallel ausgeführt werden. Anders sieht dies aus, wenn Asynchronous Compute abgeschaltet wird. Dann ist nur noch eine Queue zu sehen, sowohl auf der Kontext-Seite wie auch in der Hardware-Queue. Die Hardware bzw. der Treiber hat bei ausgeschaltetem Asynchronous Compute auch keine Möglichkeit aus einer Queue eine zusätzliche mit Compute-Prozessen zu erstellen. Der Time-Spy-Benchmarks gibt vor, wie die Grafikkarten die Prozesse abzuarbeiten hat. Eine Einflussnahme durch den Treiber oder die Hardware soll damit ausgeschlossen sein.

Um den Unterschied zur GeForce GTX 970 darzustellen, ein Blick auf das Verhalten der GeForce GTX 1080:

Prozess- und Queue Verhalten der GeForce GTX 1080 (links mit Asynchronous Compute, rechts mit deaktiviertem Asynchronous Compute)Prozess- und Queue Verhalten der GeForce GTX 1080 (links mit Asynchronous Compute, rechts mit deaktiviertem Asynchronous Compute)

Prozess- und Queue Verhalten der GeForce GTX 1080 (links mit Asynchronous Compute, rechts mit deaktiviertem Asynchronous Compute)

Grundsätzlich sehen wir ein ähnliches Bild wie bei der Radeon R9 Fury, allerdings werden die Queues bei NVIDIA bereits etwas anders verarbeitet – daher auch der leichte Unterschied in der Darstellung. Es wird aber deutlich, dass die GeForce GTX 1080 eine zusätzliche Compute-Queue verwendet, aus der heraus Direct- und Compute-Prozesse gleichzeitig ausgeführt werden können. Bei ausgeschaltetem Asynchronous Compute ist auch die korrespondierende Compute-Queue verschwunden.

Social Links

Kommentare (7)

#1
customavatars/avatar8983_1.gif
Registriert seit: 19.01.2004

Flottillenadmiral
Beiträge: 4579
"Futuremark für Asynchronous Compute im 3DMark Time Spy detailliert aus" fehlt da nicht ein Verb im Titel? :D
#2
Registriert seit: 26.02.2013
Berlin
Obergefreiter
Beiträge: 86
Was ich mich immer noch frage: wenn Ihr ja wisst, dass bei Maxwell nichts mehr für Async Compute kommt, warum packt Ihr als Journalisten den Verantwortlichen nicht die Pistole auf die Brust und fragt nach, wann der angebliche Async Compute Treiber denn nun kommt?

Ohne jetzt hier wieder einen Grabenkrieg anfangen zu wollen, aber es ist doch sehr offensichtlich das bezüglich Maxwell absolut gelogen wurde.
#3
customavatars/avatar226085_1.gif
Registriert seit: 07.08.2015
Athen
Oberbootsmann
Beiträge: 939
Mir gefällt nicht, daß der Artikel nicht zum Punkt kommt und nicht aufklärt ob der NVtreiber mit Maxwells nun cheatet indem er das Queue-Verhalten ändert oder nicht.

Auch würde ich gerne wissen ob Fury oder 1080 effektiver mit der Queue sind :D


Kann das Treiberverhalten nicht festlegen indem man 3dmark.exe in explorer.exe umbenennt? :D :D :D
#4
customavatars/avatar179024_1.gif
Registriert seit: 29.08.2012

Fregattenkapitän
Beiträge: 3031
Zitat ProphetHito;24774779
Mir gefällt nicht, daß der Artikel nicht zum Punkt kommt und nicht aufklärt ob der NVtreiber mit Maxwells nun cheatet indem er das Queue-Verhalten ändert oder nicht.


Man sieht auf dem Bild meiner Meinung nach, dass auf der Hardware der GTX 970 alles in einer Queue landet. Die GTX 1080 und die Fury haben dagegen in der Compute Queue(COMPUTE_1/COMPUTE_0) gleichzeitig noch Daten. Daraus ist zu schließen, dass bei der GTX 970 hardwarebasiert keine simultanen Berechnungen im Sinne von Async Compute durchgeführt werden.
#5
customavatars/avatar17977_1.gif
Registriert seit: 16.01.2005
HH\Wandsbek\Hinschenfelde
Korvettenkapitän
Beiträge: 2432
Zitat ProphetHito;24774779
Mir gefällt nicht, daß der Artikel nicht zum Punkt kommt und nicht aufklärt ob der NVtreiber mit Maxwells nun cheatet indem er das Queue-Verhalten ändert oder nicht.

Auch würde ich gerne wissen ob Fury oder 1080 effektiver mit der Queue sind :D


Kann das Treiberverhalten nicht festlegen indem man 3dmark.exe in explorer.exe umbenennt? :D :D :D


Sollte er Cheaten, dann ists Müll, wobei wenn ich mir den 3D Markt Wert der 980 Ti ansehe siehts arg nach Cheating aus. Was ich noch zu klären wissen möchte von Futuremark, warum deren Benchmark das Gegenteil von dem Widerspiegelt was die DX12 Titel mit ASnync Computing zeigen. Da fragt man sich dann eben doch, ob nicht ein anderer Rendepfad benutzt wird
#6
Registriert seit: 07.03.2013

Fregattenkapitän
Beiträge: 2950
Der Artikel erklärt es doch ziemlich genau!
Und Spiele mit DX12 sind immer noch selten und wenn der eine, oder der andere Hersteller besser ist. Wäre ja erstmal die Frage, wie genau das im Spiel implementiert wurde... Denn nicht grundsätzlich, wenn man eine Spielebench sieht, der das selbst bevorzugte Ergebnis bringt, bedeutet das auch, das jetzt DX12, genauer Async C. richtig eingebunden wurde...
#7
Registriert seit: 29.09.2011
Bochum
Oberbootsmann
Beiträge: 768
1a Überschrift :haha:
Um Kommentare schreiben zu können, musst Du eingeloggt sein!

Das könnte Sie auch interessieren:

4x MSI GeForce GTX 1080 GAMING X 8G stellen neuen 3DMark-Weltrekord auf

Logo von IMAGES/STORIES/MONTHS_THUMBS/0F12E0C7697BCC2EA09B7A1C1040B565

Nachdem wir heute bereits über einen Taktrekord der ASUS ROG Strix GeForce GTX 1080 OC mit 2.645 MHz berichtet hatten, will auch MSI auf sich aufmerksam machen und vermeldet einen Weltrekord im 3DMark mit 4-Way-SLI. Natürlich verwendet MSI dabei vier GeForce GTX 1080 GAMING X 8G und ein MSI X99A... [mehr]

Aktualisierte Version von FRAPS soll in Kürze erscheinen

Logo von IMAGES/STORIES/GALLERIES/REVIEWS/2013/FCAT/FCAT-LOGO

FRAPS ist sicherlich allen ein Begriff, die schon einmal die Leistung seines Systems außerhalb von synthetischen Benchmarks und vordefinierten Benchmark-Szenen mit entsprechender Auswertung messen wollten. FRAPS klingt sich dazu an einer bestimmten Stelle in die Rendering Pipeline ein und kann... [mehr]

Futuremark 3DMark 2016 Beta mit VR-Benchmark

Logo von FUTUREMARK

Futuremark hat per Steam eine Beta-Version des aktuellen 3DMark veröffentlicht. In diesem Beta-Test sollen neuen Funktionen und Updates für zukünftige Versionen des 3DMark getestet werden, die im Jahre 2016 Einzug halten werden. Bereits im Juni diesen Jahres wurde ein VR-Benchmark angekündigt,... [mehr]

Futuremark 3DMark Time Spy als DirectX-12-Benchmark verfügbar (Update)

Logo von FUTUREMARK

Im Verlaufe der Nacht hat Futuremark Time Spy, einen DirectX-12-Benchmark für den 3DMark, veröffentlicht. Angekündigt wurde diese Veröffentlichung bereits vor Monaten und zuletzt vor wenigen Tagen wurden ein erster offizieller Trailer und einige Screenshots gezeigt. Wer den Futuremark 3DMark... [mehr]

Trailer und Screenshots zum DirectX-12-Benchmark des 3DMark

Logo von FUTUREMARK

Bereits Ende des vergangenen Jahres tauchten erste Szenen und Informationen zum neuen DirectX-12-Test des 3DMark von Futuremark auf. Bisher beschränken sich die Ambitionen von Futuremark zur neuen Grafik-API auf einen Overhead-Test, der allerdings die echte DX12-Leistung des Systems nicht abbilden... [mehr]

Futuremark für Asynchronous Compute im 3DMark Time Spy detailliert aus

Logo von FUTUREMARK

Im Zusammenhang mit der Implementation von Asynchronous Compute im Time-Spy-Benchmark hat Futuremark nach Bekanntwerden der Art und Weise wie dort auf bestimmte Prozesse zurückgegriffen wird, bereits mit einem Statement reagiert. Konkret geht es um den Vorwurf, Asynchronous-Compute-Prozesse seien... [mehr]