News Vulkan: Erste Benchmarks der neuen API in Talos Principle

Warum ist OpenGL so langsam? Halb so schnell wie DirectX 11?

Liegt das an der OpenGL Implementierung im Spiel, oder an OpenGL selbst? Letzteres kann ich fast nicht glauben? Hätte dann DirectX in den letzten 5-10 Jahren so massiv OpenGL überholt?
 
Es liegt an der OpenGL Implementierung.
Genau so wie die Vulkan Performance - es ist bisher lediglich ein Wrapper, ein Proof of Concept. Lest doch mal die News bzw. Kommentare.

mfg,
Max
 
Lesen erscheint den meisten Usern hier wohl als überbewertet.
Ich finde es sehr gut, dass es langsam voran geht mit Vulkan (wieso man wohl nichts mehr von Mantle liest?... ;))
Man zeigt, dass Vulkan sich ohne größere Probleme und Optimierung implementieren lässt und selbst dabei nur unwesentlich schlechter läuft als das tot-optimierte DX11.

https://www.youtube.com/watch?v=qZLzz3OOl3A
 
Zuletzt bearbeitet:
Shader werden kompiliert an den Vulkan-Treiber geliefert - einer der Vorteile von Vulkan gegenüber OpenGL. Zum Ressourcen-Management kann ich mich mangels Wissen nicht äußern; viel mehr als SPIR-V in maschinenspezifischen Code, vielleicht mit einer weiteren Intermdiate Representation (bei Intel etwa NIR unter Linux) sollte der Treiber aber nicht tun (der andere große Vorteil von Vulkan gegenüber OpenGL).

Diese interim Repräsentation als hardwareunspezifischen Assembly gibt es ja auch schon bei DX oder CUDA seit Jahren. Ist zwar einfacher zu kompilieren als eine Shader-Hochsprache, weil man sich das gesamte Compiler-Frontend spart. Das ändert aber nichts daran dass je nachdem wie stark der Compiler im Treiber auf eine gegeben GPU optimieren kann, sei es durch "Eigenleistung" oder dadurch, dass für moderne Spiele handoptimierter Code in ihm hinterlegt ist, sich auch die Performance verbessert bzw verschlechtert. Gerade von CUDA weiß ich, dass sich der Compiler auch bei der interim Repräsentation oft ziemlich dämlich anstellt.
 
Zuletzt bearbeitet:
Finde ich als erste Feuertaufe schon mehr als gelungen. Mal kucken wo das noch hinführt. Selbst wenn man Direct X nicht überholen kann, so reicht es dennoch mMn, wenn man z.B. an 90% von DX herankommt, um Linux als Spieleplatform zu pushen. Als Konsument kann ich das nur begrüßen.

Abseits der Leistung, gibt es in Sachen Vram Abweichungen zwischen den APIs? Kann das vllt wer auf die schnelle probieren?
 
Prokiller schrieb:
verstehe den Hype nicht.... was ich daraus lese aus den Tabellen ist einfach nur "schlecht"

Hmm, lass mal sehen: die Treiber sind nigelnagelneu, vom Spielehersteller hat sich ein Männlein 3 Monate hingesetzt und die Engine nach Vulkan gebracht, und das Ding ist jetzt schon schneller als OpenGl jemals war und nur 16% hinter Direct3d 11, auf das das Spiel durch X Entwickler optimiert wurde und wo der Treiber absolut ausgereift ist.

Was ich aus der Tabelle lese ist eigentlich ganz gut.
Ergänzung ()

crvn075 schrieb:
Das GPU-Limit wird mit den immer mehr kommenden 4K Displays aber sowieso nochmal deutlicher. In nicht wenigen Spielen hat eine 980 Ti OC da schon ziemliche Probleme. Wenn es um die Intensivierung des GPU-Flaschenhalses geht, dürfte das imho deutlich mehr wiegen als die Einführung von DX12/Vulkan. Dass sich in Zukunft beide Aspekte auch noch addieren kommt noch oben drauf.

Ich sehe das mit 4k gar nicht so kritisch. Also mir (und vielen anderen) reicht FullHd auf 24" eigentlich aus. 27" ist mir ganz einfach zu groß, und mehr als FullHd brauche ich ehrlich gesagt nicht bei 24", jedenfalls nicht die doppelte Auflösung. IMHO wird 4k bei Monitoren noch einige Jahre nicht der Standard sein.

Davon abgesehen: ja, DX12 und Vulkan verringern die CPU Last, aber sie nutzen auch die GPU besser aus, von daher kann ma damit nur gewinnen....
Ergänzung ()

r4yn3 schrieb:
Abseits der Leistung, gibt es in Sachen Vram Abweichungen zwischen den APIs? Kann das vllt wer auf die schnelle probieren?

Interessant wäre es mal, ich denke aber das sch**** sich weg. Letztendlich dürften die Texturen da das meiste brauchen, kann mir nicht vorstellen dass die API da viel ändert.
 
r4yn3 schrieb:
Finde ich als erste Feuertaufe schon mehr als gelungen. Mal kucken wo das noch hinführt. Selbst wenn man Direct X nicht überholen kann, so reicht es dennoch mMn, wenn man z.B. an 90% von DX herankommt, um Linux als Spieleplatform zu pushen.

Du meinst in Marktdominanz oder was? Wenn man das spiel auf alle 3 Apis optimiert haette (rede von dx11) sollte Vulkan vorne sein und Opengl und dx11 ungefaehr gleich schnell. Also dx11 wird man vom Speed klar ueberholen, wenn du das gemeint hast, alles andere waere ja auch absurd.

Sowohl wurde mit mante bewiesen das dx11 und opengl grottenlahm ist und massive Verschwendung von cpuresourcen stattgefunden hat.

Dazu kommt noch das Valve bewiesen hat das alle spiele wo sie es versucht haben sie unter linux mit opengl schneller liefen wie unter windows mit dx (natuerlich nur mit nvidiatreiber).

Aber wahrscheinlich meintest du Marketshare.
 
Ich gehe stark davon aus das Half Life 3 das erste Spiel ist, dass Vulkan/OpenGL Only sein wird. Das macht sinn denn Vulkan wird auch unter Windows XP laufen wo kein DX12 möglich ist und auch unter Linux. Somit zeigen Sie die Vorteile der Schnittstelle gegen über DX12 bzw. Metal (Apple) auf unterschiedlichen Plattformen ;)
 
blackiwid schrieb:
Du meinst in Marktdominanz oder was? Wenn man das spiel auf alle 3 Apis optimiert haette (rede von dx11) sollte Vulkan vorne sein und Opengl und dx11 ungefaehr gleich schnell. Also dx11 wird man vom Speed klar ueberholen, wenn du das gemeint hast, alles andere waere ja auch absurd.
Er meinte sicher, das Linux gepusht wird wenn Vulkan 90% der Leistung von DX12 erreicht.
 
Eben. Der Gegner muss DX 12 lauten. Zum einen muss man die Performance erreichen, zum anderen muss es häufig zum Einsatz kommen. Ein hätte wäre könnte hilft mir da nicht.

Aber die rasche Implementierung, gemessen an der Manpower, die man hier für Talos Principle brauchte stimmt mich zumindest schonmal zuversichtlich, dass schnell mehr Spiele mit Vulkan erscheinen.
 
@ r4yn3
Abseits der Leistung, gibt es in Sachen Vram Abweichungen zwischen den APIs? Kann das vllt wer auf die schnelle probieren?
Ich gehe mal stark davon aus, dass sich zwar nichts "direkt" aber dennoch "indirekt" etwas am DRAM verbrauch ändern wird, weil sich das automatische Speichermanagement etwas verändert hat. Je nachdem wie das der Programmirer dann umsetzt kann es mal schlechter und mal besser funktionieren.
 
Der Landvogt schrieb:
Er meinte sicher, das Linux gepusht wird wenn Vulkan 90% der Leistung von DX12 erreicht.

Selbst das halte ich fuer zu pesimistisch, valve opengl spiele laufen unter linux zumindest, 110% fps im vergleich zu windows dx versionen. Gut da kann man vielleicht Linux vs Windows die Schuld geben, aber er hat sich ja nicht auf ein OS alleine bezogen. Also ist Opengl schneller als DX11, es waere also ein gewaltiger Rueckschritt wenn DX12 ploetzlich schneller waere wie Vulkan, daher halte ich das fuer ne sehr pesimistische ansicht.

Heck Nvidia hat doch selbst unter Windows bewiesen das man stark zu Mantle aufholen kann mit Opengl, das hat man nicht gemacht mit DX, also die 10% die reines Opengl schneller ist (unter linux) also mehr fps ist die eine Sache das man aber selbst unter Windows mit dem bisherigen Opengl massiv cpuauslastung einsparen kann gegenueber DX11 kommt da noch dazu.

Wenn also Opengl so massiv DX11 in allem ausser Verbreitung wegen faulen Entwicklern oder sonstigem ueberlegen ist heute schon, wieso sollte dann Vulkan ploetzlich so zurueckfallen?
 
Prokiller schrieb:
... was ich daraus lese aus den Tabellen ist einfach nur "schlecht"

oh man, versuch doch mal zur Abwechslung zu lesen...ich liebe diese Konsumenten ohne jedes Verständnis für Technik.
Was Vulkan Plattformübergreifend bieten kann, ist einfach komplett was anderes als das olle Zeug was man jetzt hat. Für ein Techforum begreifen echt nur sehr wenige um was es hier eigentlich geht, traurig fast nur noch Enduser ohne Affinität zu Technik
 
D708 schrieb:
Für mich wäre der Vergleich mit Directx 12 viel interssanter. Ist ja der eigentliche Gegner quasi. Das OpenGL abschmiert verwundert nicht, ist ja auch schon uralt(Technikzeit). Ob Vulkan wirklich bestehen kann gegen Directx 12, steht ja noch aus und solange nehme ich keine Tests ernst mit Vulkan(damit es mir keiner vorher madig machen kann). Der Test ist gut und es ist auch richtig, ihn zudire machen. Für mich bleibt er unnütz.

Was heißt OpenGL ist uralt? Windows ist auch uralt, wenn man sich nur den Namen anschaut. OpenGL offizielle aktuelle Spezifikation der Version 4.5 stammt aus 2014, DX11.2 stammt aus dem Jahre 2013. Und OpenGL 4.5 bietet viele Rendermöglichkeiten, die mal extrem langsam und mal extrem schnell sind. Es ist aber nicht immer leicht den richtigen Weg zu zu wählen, weil sie so konzeptionell anders sind und in OpenGL ein gewisses Überangebot herrscht. Es gibt viele Möglichkeiten es genau falsch zu machen. Aber es gibt auch schon in OpenGL Möglichkeiten wie in Vulkan oder DX12 zu rendern.

Es gibt aber ein grundsätzliches Problem mit OpenGL und (Windows-) Games: Wer sich mit OpenGL beschäftigt macht dies eigentlich eher aus Idealismus, entscheidend für den Erfolg und die Absatzzahlen des Spiels ist es nicht. Im Gegenteil, es verschlingt zusätzliche Ressourcen. Möchte man komplett auf OpenGL setzen und lässt DirectX komplett fallen, wird man schnell gegen gewisse Wände laufen, da man dann feststellt, dass der OpenGL Pfad verbuggt (mit starker Tendenz zu AMD) oder einfach schlechter optimiert ist, da natürlich AMD und nVidia sich auf den DX Pfad konzentrieren.

Generell sollte man die Treiberoptimierungen nicht unterschätzen, die haben inzwischen so riesige Ausmaße angenommen. Die Treiberentwickler schreiben nicht selten ganze Shader-Routinen von konkreten Spielen um (teilweise inkl. Fehlerbehebungen). Deswegen sind die Treiber inzwischen zu einem riesigen Pflickenteppich für diverse Spiele geworden.

Vulkan und DX12 schneiden nun alte Zöpfe ab, beide sind aber auch frisch, ins besondere Vulkan. Und es ist auch nicht gerade einfach mit den Schnittstellen umzugehen. Und natürlich wird auch hier wieder der Fokus der Spiele- und Treiberentwickler auf DirectX liegen, da dort einfach Optimierungen mehr Kunden erreichen. Das wird sich ändern, wenn immer mehr Plattformen Vulkan unterstützen, denn Portabilität bringt dann auch dem Spieleentwickler einiges.
 
Zuletzt bearbeitet:
reappearance schrieb:
Der Vergleich hinkt aber. Vulkan ist der legitime OpenGL Nachfolger.

Vulkan ist genausowenig der Nachfolger für OpenGL wie DirectX 12 der Nachfolger für DirectX 11 ist.

Der Großteil der Entwickler wird weiterhin auf den High Level APIs entwickeln, weil die Entwicklung auf den Low-Level APIs aufwendiger und teurer ist. Vulcan und DX 12 sind für die AAA Entwickler die das letzte bisschen an Leistung brauchen um ihre Mördergrafik hinzubekommen.

Der Rest wird weiter auf den alten APIs entwickeln weil sie schneller und billiger die gewünschten Ergebnisse liefern. Microsoft empfiehlt das ja selbst so. Die Entwickler sollen wenn sie die Leistung von DX 12 nicht unbedingt brauchen lieber auf DX 11.3 zurückgreifen, das zeitgleich mit DX 12 veröffentlicht wurde.
 
Bitte denkt dran: mit DX11 haben alle schon Ewig & 3 Tage Erfahrung. Die kennen die Bottlenecks und die Tips & Tricks, um FPS raus zu kitzeln. Vulkan selber ist Alpha, sehr neu, und die Entwickler haben noch keine Erfahrung damit. Das wird höchstwahrscheinlich 1:1 wie in der Doku (sofern vorhanden) genutzt; ohne eine einzige Optimierung. Ich finde das beachtlich, das man aus dem Stand heraus schon mal OpenGL schlägt und auf halber Strecke zu DX11 liegen bleibt. Da ist noch viel Potenzial, auf beiden Seiten - Vulkan & Spiele.
 
blackiwid schrieb:
Selbst das halte ich fuer zu pesimistisch, valve opengl spiele laufen unter linux zumindest, 110% fps im vergleich zu windows dx versionen. Gut da kann man vielleicht Linux vs Windows die Schuld geben, aber er hat sich ja nicht auf ein OS alleine bezogen. Also ist Opengl schneller als DX11,

Solche Verallgemeinerungen sind klasse, Besonders wenn man das Ergebnis nicht reproduzieren kann (und von einem Hersteller kommt der GNU/Linux als Kurs sieht). Bei den Steam für GNU/Linux Titeln sieht man aber eher das Bild was auch Talos Principile zeichnet, dass OpenGL erheblich langsamer ist. Kann ich nun also sagen das DX11 schneller als OpenGL ist?

Ich finde es auch wieder lächerlich was OpenGL bzw Vulkan für Vorschusslorbeeren ernten. Wenn es wie bei OpenGL laufen wird, wird sich keine Sau dafür wirklich interessieren, da du für jeden (Das gilt auch für NvidiaGL) Hersteller deine Quirks pflegen musst.
OpenGL wird unter GNU/Linux doch nur verwendet, weil es nichts anderes offenes gibt.
 
TCHAMMER schrieb:
Ich gehe stark davon aus das Half Life 3 das erste Spiel ist, dass Vulkan/OpenGL Only sein wird.

Na dann dauert das ja noch 10 Jahre ;) Wird wohl eher darauf ankommen wie schnell und wie gut die großen Engines das supporten, also Unreal, Unity und wie sie alle heißen. Ich denke mal wenn Unity das umsetzt wird man die ersten Spiele mit Vulkan recht schnell sehen...
 
@nille02
Zumal sein Vergleich sowieso totaler Quatsch ist. Ich wüsste kein Spiel von Valve das DirectX 11 nutzt. Die Source Engine ist steinalt. Nur zur Erinnerung, als Half Life 2 rauskam, konnte man noch auf DirectX 7 oder 8 (weiß nicht mehr genau welches) zurückschalten, weil DirectX 9 noch zu neu war. Und soweit ich weiß, laufen auch aktuelle Valve Spiele noch mit DirectX 9 also einer hoffnungslos veralteten API. Da muss es einen nun wirklich nicht wundern dass Valve da mit einer aktuellen OpenGL Implementierung schneller rendert.
 
Zurück
Oben