Nvidia und die Asynchronous Shader

Conceptions

Banned
Registriert
Dez. 2015
Beiträge
1.003
Moin,
es ist jetzt ca. ein halbes Jahr her das durch Ashes of the Singularity eine Diskussion losgetreten wurde bzgl nvidia und der Performance/Verwendung von Asynchronous Shader.
Nvidia brachte bei der Verwendung/Anwendung nicht die erwartete Leistungssteigerung und es wurde spekuliert ob nvidia dies überhaupt kann, obwohl nvidia dies bejahte.

Imho hieß es seitens nvidia das die Hardware dazu in der Lage wäre, es aber derzeit am Treiber liegt und die Funktion über die CPU realisiert wird.
Es würde demnächst neue Treiber geben.

Nun habe ich den Eindruck das diesbezüglich nichts mehr geschehen ist.
Weder seitens nvidia kam ein neuer Treiber, noch eine Ankündigung, noch wurde seitens journalistischer Seite mal wieder bei nvidia nachgefragt (man korrigiere mich falls ich was verpasst habe).

Ich habe das Gefühl das dieses Thema totgeschwiegen wird bis es in Vergessenheit gerät.

Hat jemand einen aktuellen Stand der Dinge?
 
Wäre nichts neues bei Nvidia.

Bis das Thema DX12 marktreif ist, gibt es vermutlich schon Pascal-Karten. Diese werden das Problem wohl nicht mehr haben ...
 
Das Thema ist komplex und als Außenstehender fast unmöglich genau zu beantworten.

Ich erzähle mal etwas von meinem Wissensstand.

Wenn wir von Async Shader reden, meinen wir in dem Zusammenhang immer Compute-Shader, weil es sich um Async Compute dreht, wobei diese Nomenklatur-Sache für die Praxis ungenau ist, ich verwende es dennoch für den Erklärungsversuch hier.

Unter DX11 wird jede Operation und jeder Shader-Typ in eine Universal-Queue (Arbeitsschlange) gepackt.
Unter DX12 gibt es das Feature Multiengine, hier können Entwickler nicht nur eine Universal-Queue verwenden, sondern drei verschiedene.
GFX-Queue (Universal, man kann hier GFX, Compute und Copy Aufgaben reinpacken), Compute-Queue (Compute + Copy), Copy-Queue (Nur Copy).
Das Feature Multiengine MUSS von jeder GPU, die DX12 supporten möchte, unterstützt werden.
Unterstützt heißt aber lediglich, dass es funktioniert, nicht genau wie es die Hardware ausführt.

Und hier liegt schließlich auch der eigentliche Hund begraben.
Entwickler können das Feature Multiengine verwenden, um neben GFX-Queues, noch Compute-Queues zu verschicken.
Intel und Nvidia arbeiten die Aufgaben aber praktisch seriell ab, AMDs GCN kann dank unabhängiger Scheduler (ACEs) Compute-Shader parallel zu GFX-Shader abarbeiten.

Berechnet wird von der CPU in dem Zusammenhang gar nichts, außer das der Treiber der auf der CPU berechnet wird, vielleicht noch irgendwelche Sachen überprüft und anders organisiert.
 
Wenn jede Verschiebung = Lüge ist, kenne ich ein Unternehmen was verdammt oft lügt.
 
Eben das was DX12 Support bedeutet, die API wird unterstützt.
Der API-Support ist variabel in der Anzahl und der Güte der unterstützen Funktionalitäten, aber die Grundanforderungen werden unterstützt, um unter dieser API arbeiten zu können.
 
Ich denke mal, dass in dieser Hinsicht viele Leute viel zu viel in unterstützt Directx12 hineininterpretieren. Denn API Spezifikationen sind immer funktional, dh. bei einer bestimmten Eingabe muss die GPU bzw. der Treiber eine bestimmte Ausgabe erzeugen. Was bzw. wie die GPU die Ausgabe aus der Eingabe erzeugt ist egal und wird von den Spezifikationen nicht vorgeschrieben. Dementsprechend ist auch die Abarbeitungsreihenfolge von Befehlen (also im Speziellen Asynchronous Shaders) für die Unterstützung der API egal sofern sie die richtige Ausgabe erzeugt. Zudem gilt bei APIs mit einem Erweiterungs/Featurelevel-modell immer, dass für die API Unterstützung nur die Kernfunktionalitäten bzw. Grundfunktionalitäten und keine Erweiterungsfunktionalitäten unterstützt werden müssen. Eben das ist auch bei Directx 12 der Fall.
 
Locuza schrieb:
Das Thema ist komplex und als Außenstehender fast unmöglich genau zu beantworten.
Daher beziehe ich mich auch auf die Aussage von nvidia das es derzeit am Treiber liegt, sie aber "demnächst" eine neue Version rausbringen, die das ja beheben will.
Seit Anfang September keinerlei Statement mehr gehört - von keiner Seite.

PS: Macht bitte keinen AMD vs nvidia Thread da daraus. Es ist für meine Frage total irrelevant ob nun AMD auch etwas verschoben hat o.ä.

Edit: @Nai
Nunja, wenn ich mich recht entsinne haben die AotS Entwickler gesagt das der Treiber die Funktion in Hardware als gegeben meldet, aber es nicht umgesetzt wird, und nvidia daraufhin gesagt hat ala "Stimmt, die Funktion muss noch implementiert werden."

Seitdem hat sich nicht viel getan. Genauso wenig wie bei dem DX12 Patch für dieses Dinosaurier Spiel.(Gut das ist auch eine andere Baustelle)
 
Zuletzt bearbeitet:
Ich denke die Sache ist schon erledigt.
Fable Legends verwendet das Feature Multiengine und es gibt keine Probleme auf Nvidia GPUs.
Ein indisches Nvidia PR-Video hat sogar das Feature Async Compute als Leistungssteigerung eingeworfen.
Es wird Nvidia sehr wahrscheinlich wenig bringen, aber ich werte die Aussage mal dahingehend, dass Multiengine bei Fable Legends nicht manuell deaktiviert wurde, wie bei AotS am Anfang (oder immer noch)

Das Dino-Spiel verschiebt DX12 jeden Monat. :lol:
Ich weiß gar nicht wieso das die Entwickler in dem Zusammenhang in den kommenden Release-Notes schreiben.
Sie verwenden die UE4 Engine und haben als Studio nicht die Kapazitäten DX12 eigenständig nach vorne zu bringen, also warten sie bis es Epic macht, aber dort ist der DX12 Pfad immer noch als experimentell deklariert.
Die Roadmap gibt auch an, dass jeden Monat daran gearbeitet wird:
https://trello.com/c/BQFZD0pl/204-dx12-support
 
Beginnt die Diskussion jetzt schon wieder?
Am besten nen Riegel an den Thread und gut ist es.
 
Conceptions schrieb:
Hat jemand einen aktuellen Stand der Dinge?

Ashes of the Singularity läuft auf meiner Nvidia mit 150 FPS nahe dem CPU-Limit.
Wen interessiert es da ob AS Punkte bringen oder nicht, bei 150 FPS?

Nur um dem ganzen mal die Spitze zu nehmen.


 
HisN schrieb:
Ashes of the Singularity läuft auf meiner Nvidia mit 150 FPS nahe dem CPU-Limit.
Wen interessiert es da ob AS Punkte bringen oder nicht, bei 150 FPS?

Jeder der keine 1100€ Grafikkarte im Rechner hat und Leistung gebrauchen kann (99.99%).
Was sollen die Ausflüchte in letzter Zeit? Du warst mal objektiver.

Und es geht auch nicht nur um ein Spiel, sondern um eine extrem nützliche, sinnvolle, leistungssteigernde Grundfunktionalität von DX12.

mfg,
Max
 
max_1234 schrieb:
Was sollen die Ausflüchte in letzter Zeit? Du warst mal objektiver.

Und es geht auch nicht nur um ein Spiel, sondern um eine extrem nützliche, sinnvolle, leistungssteigernde Grundfunktionalität von DX12.

mfg,
Max

Bis jetzt gibt es nur dieses eine Spiel zum testen. Und DX12 und AS werden doch angepriesen als "CPU-Entlastung".
Und es geht im Grund genommen bei DIESER Diskussion darum ob Nvidia das jetzt hinbekommen hat oder nicht. Falls Du das Einstiegsposting, genau so wie ich gelesen hast.

D.h. meine 1000 Euro Grafikkarte ist in diesem Fall überhaupt nicht relevant. Denn meine CPU stemmt die 150 FPS.
Die Frage ist also: Was interessiert mich eine CPU-Entlastung, wenn meine CPU schon 150 FPS stemmen kann bei diesem Spiel?

GAR NIX.


Gedanken um ungelegte Eier.
Das ist für mich Objektiv genug :-)
 
Es geht nicht darum ob du in Spiel X 150 FPS hast, sondern ob sich was am Async Shaders Support getan hat bzw. was der aktuelle Stand hierzu ist.
HisN schrieb:
Falls Du das Einstiegsposting, genau so wie ich gelesen hast.

mfg,
Max
 
Es interessiert mich einfach bei 150 FPS nicht.
Das wäre bei 30 FPS relevant, da wo irgendwas zu holen ist.

Darauf will ich hinaus.
Die Diskussion ist müßig, weil es sich in Regionen abspielt wo es völlig egal ist ob AS nun "gut" oder "schlecht" funktionieren. Selbst wenn sie gar nicht funktionieren bin ich mit 150 FPS völlig zufrieden. Da brauch ich kein FASS aufmachen, das es mit funktionierenden AS eventuell 160 FPS wären.
 
HisN schrieb:
Die Diskussion ist müßig, weil es sich in Regionen abspielt wo es völlig egal ist ob AS nun "gut" oder "schlecht" funktionieren.
Im Grunde sagst du auf die selbst bezogen nur "Meine Karte schafft 150 FPS, ich brauch keine AS".

Das ist schön und auch eindrucksvoll, beantwortet aber nicht eine einzige vom TE gestellte Frage bzw. angesprochene Problematiken.

mfg,
Max
 
Entschuldige bitte dass ich es an meiner Karte festmache, ich hab gerade keine andere zum testen da.
 
EXTREM schrieb:
Beginnt die Diskussion jetzt schon wieder?
Am besten nen Riegel an den Thread und gut ist es.
Auf welcher Grundlage? Weil ich eine berechtigte Frage stellte? Oder forderst du nur Zensur, weil dir die Frage nicht passt.
HisN schrieb:
Ashes of the Singularity läuft auf meiner Nvidia mit 150 FPS nahe dem CPU-Limit.
Wen interessiert es da ob AS Punkte bringen oder nicht, bei 150 FPS?
Und wen interessiert das?
Beantwortet das irgendeine Frage?
Das ist ja schön das dein System diese Werte erreicht, das war aber nicht die Frage.

Ist das ein Trollversuch von jemanden mit soviel Beiträgen?
 
Nein, das ist der Versuch eine Relevanz zu finden. Du willst meinem Verständnis nach über Performance diskutieren.
Nun erklär mit was es für Dich bedeutet das Ashes of Singularität mit 150 FPS läuft.
Wenn Du schon die Frage nach Performance stellst, warum ignorierst Du dann die Antwort? Weil sie Dir nicht in den Kram passt? Vielleicht denkt der mit den vielen Beiträgen nicht mehr in Promille, oder mein Tellerrand ist nicht mehr ganz so eng.
 
Zuletzt bearbeitet:
Sapphire Forum
Zurück
Oben