Jump to content

Recommended Posts

Posted
3 hours ago, dstar said:

Ganz ehrlich, unter Vulkan ist die VR Performance und vor allem die Optik bei mir mit der Pi erheblich schlechter als mit OpenGl. Locker bis zu -15%

Ganz schlimm ist es mit OrbX z.B. um Edingburgh. Da bin ich von 38 auf stotternde 29 FPS gefallen.

Mit der Index scheint es dagegen wieder nen guten Schub, weit über 20% nach vorn zu geben.

 

Also es kann besser werden, ist aber kein muss.

 

Echt jetzt? Toll, also doch wieder nur Marketingsprüche... 

http://www.csg-2.net/ | i7 7700k - NVIDIA 1080 - 32GB RAM | BKR!

Posted

Als jemand der ein wenig Ahnung von der Materie hat, würde ich gerne ein wenig zur Aufklärung beitragen, da hier an einigen Ecken offenbar ein wenig Sachen miteinander vermischt werden.

 

Simpel runter gebrochen sind Vulkan, DirectX und OpenGL für den Programmierer "nur" ein Satz an Funktionen die eine bestimmte Aufgabe zum Erstellen von Bildern erfüllen. Wie diese Funktionen implementiert sind, hängt meines Wissens nach vom Treiber ab, also von dem Hersteller eurer Grafikkarte. Das heißt, eine gewisse Funktion kann auf ner Nvidia Karte rasend schnell sein und auf einer AMD Karte eine lahme Schnecke. Wenn Vulkan selbst an einer Ecke also langsam ist, hängt das eher mit der Umsetzung des Treibers als mit Vulkan selbst zusammen.

 

Jetzt kommt hinzu, dass einzelne Funktionen der API nicht auf magische Weise komplexe Szenen erzeugen, sondern dass der Programmierer, der die Grafik-Engine schreibt, die Funktionen auch sinnvoll kombinieren muss (dass ist sehr komplex). Vulkan hat den Vorteil, dass es im Gegensatz zu OpenGL mehr direkte Kontrolle über die GPU zur Verfügung stellt. Aber mit dieser zusätzlichen Kontrolle muss ich als Programmierer auch was anfangen können. Dazu brauche ich aber erst einmal ein gutes Verständnis darüber wie alles zusammenspielt. Ob Vulkan jetzt schneller ist hängt also maßgeblich davon ab wie gut die Grafik-Engine geschrieben ist. Ich kann auch in einem Porsche nicht sonderlich schnell fahren wenn ich nicht weiß wie ich den Gang wechsle.

 

Es stimmt zwar das ein Vorteil von Vulkan Multi-Threading Unterstützung ist, aber ich würde mir da jetzt nicht den heiligen Gral drunter vorstellen, denn im Grunde sollte das für die Performance so gut wie keine Relevanz haben. Der Grund hierfür ist, dass eine gute Grafik-Engine versucht, die Kommunikation zwischen GPU und CPU minimal zu halten. Wen das genauere interessiert, der kann ja mal nach "OpenGL AZDO" googeln. AZDO steht für "Approaching zero driver overhead" und beschreibt eine Reihe von Techniken, die versucht die Anzahl der OpenGL Funktionsaufrufe zu minimieren bzw. zu optimieren, denn die bringen das Problem mit sich, dass GPU und CPU immer wieder miteinander synchronisiert werden müssen und aufeinander warten was zu übermäßigem Leerlauf führt. Zudem braucht jeder Funktionsaufruf CPU Leistung. Lange Rede kurzer Sinn, wenn ich meine Grafik Engine hoch optimiert habe, reicht eine CPU zumeist mehr als aus um das Rendern zu verwalten. Nagelt mich nicht auf die genaue Zahl fest, aber ich habe irgendwo mal gelesen, dass sich mit Vulkan im Gegensatz zu einer hoch optimierten OpenGL Engine noch mal 10% mehr raus kitzeln ließen (Also kein riesen Sprung). Das ist allerdings schon etwas her und wird vermutlich mit wachsender API Erfahrung noch besser werden. 

 

Was bedeutet das nun für DCS? Ich habe von den Mods (glaube es war NineLine) schon den ein oder anderen Kommentar gelesen, dass man von Vulkan selbst nicht zu viel erwarten sollte, da es nur ein Werkzeug in einer Werkzeugkiste ist. Das Hauptproblem liegt sicherlich im Alter des gesamten Codes und das dieser ursprünglich nicht für Multi-Prozessor Setups ausgelegt war (das ist völlig unabhängig von der Grafik-API). Im Grunde wäre sicher ein Rewrite am Besten für die Performance, ist aber angesichts der großen Codebase einfach nicht machbar. Also muss halt Teil für Teil angepasst werden und das vermutlich mehrfach, was dauert und nur kleine Leistungsschübe bringt. Also erwartet nicht den großen Wurf über Nacht.

 

Vermutlich ist einer der Vorteile des kommenden Vulkan-Updates, dass einige Code-Teile gleich mit überarbeitet werden. Die Multi-Threading Fähigkeit von Vulkan kann sicherlich dabei helfen, da ich mir keine Gedanken darüber machen muss, wie ich dem Prozessor der mit der GPU kommuniziert die nötigen Daten zuspiele, aber wie zuvor gesagt, das sollte eigentlich nicht das Hauptproblem sein.

 

Da ich nichts mit dem DCS Code zu tun habe sind das Vermutungen basierend auf meinen eigenen Erfahrungen. Wenn die alte Render-Engine schlecht geschrieben war, kann man auch durchaus auf mehr hoffen. 😉

 

  • Like 11
  • Thanks 4
Posted (edited)

Danke @Wychmaster, dass du dir die Zeit genommen hast, dass hier mal so ausführlich zu erläutern, denn was du da schreibst trifft es sehr gut!

 

11 minutes ago, Wychmaster said:

Was bedeutet das nun für DCS? Ich habe von den Mods (glaube es war NineLine) schon den ein oder anderen Kommentar gelesen, dass man von Vulkan selbst nicht zu viel erwarten sollte, da es nur ein Werkzeug in einer Werkzeugkiste ist. Das Hauptproblem liegt sicherlich im Alter des gesamten Codes und das dieser ursprünglich nicht für Multi-Prozessor Setups ausgelegt war (das ist völlig unabhängig von der Grafik-API). Im Grunde wäre sicher ein Rewrite am Besten für die Performance, ist aber angesichts der großen Codebase einfach nicht machbar. Also muss halt Teil für Teil angepasst werden und das vermutlich mehrfach, was dauert und nur kleine Leistungsschübe bringt. Also erwartet nicht den großen Wurf über Nacht.

 

Vor allem dieser Punkt ist es, was ich immer wieder versuche den klar zu machen, denn auch die beste Grafikschnittstelle bringt nicht viel, wenn der Engine-Code hoffnungslos veraltet ist! Von daher kann ich nur immer wieder dazu raten den Ball flach zu halten und sich keine großen Hoffnungen auf ein plötzliches Performance-Wunder zu machen, denn das endet nur in Enttäuschung.
 

On 7/2/2021 at 8:24 AM, QuiGon said:

Ich würde mir da ehrlich gesagt nicht zu viel Hoffnung machen. Das technische Grundgerüst von DCS ist um Welten älter als das des MSFS und daher wesentlich schwieriger zu modernisieren/optimieren.

 

Edited by QuiGon

Intel i7-12700K @ 8x5GHz+4x3.8GHz + 32 GB DDR5 RAM + Nvidia Geforce RTX 2080 (8 GB VRAM) + M.2 SSD + Windows 10 64Bit

DCS Panavia Tornado (IDS) really needs to be a thing!

Tornado3 small.jpg

Posted

Dank an Wychmaster...sehr informativ 👍

Lurchi1.pngAH-64D Apache***A10 Tank Killer***F-14 Tomcat***F-16 Viper***F/A-18C Hornet***UH-1H Huey***Mi-24P Hind***F-4E Phantom II***CH-47F***OH-58D Kiowa Warrior***P-51D Mustang***Mosquito FB Mk.VI***BF109 K4 Kurfürst***Supercarrier***WW2 Assets Pack***Maps of Caucasus / Marianas / Syria / Gulf / Nevada / Channel / Normandy 2.0 / South Atlantic / Sinai / Afghanistan / Kola / Iraq / Cold War Germany***
Intel Core i9-13900KF*** MSI GeForce RTX 5090 Ventus x3 OC***64GB RAM***Pimax Crystal Super***WinWing Super-Libra mit F-16Ex+TM Warthog Throttle+TM TPR Rudder/Pedals****

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...