Raytracing mit Navi, Vega und Polaris: Linux-Grafiktreiber umgeht Beschleunigungseinheiten

PCGH-Redaktion

Kommentar-System
Teammitglied
Jetzt ist Ihre Meinung gefragt zu Raytracing mit Navi, Vega und Polaris: Linux-Grafiktreiber umgeht Beschleunigungseinheiten

Durch einen Patch für den Linux-Grafiktreiber Mesa kann Raytracing nun auf manchen Radeon-Grafikkarten ohne Beschleunigungseinheiten verwendet werden. Dadurch sind entsprechende Grafikeffekte auch auf Navi-, Vega- und Polaris-GPUs lauffähig, wenn man mit dem dadurch entstehenden Performance-Bedarf klar kommt.

Bitte beachten Sie: Der Kommentarbereich wird gemäß der Forenregeln moderiert. Allgemeine Fragen und Kritik zu Online-Artikeln von PC Games Hardware sind im Feedback-Thread zu veröffentlichen und nicht im Kommentarthread zu einer News. Dort werden sie ohne Nachfragen entfernt.

lastpost-right.png
Zurück zum Artikel: Raytracing mit Navi, Vega und Polaris: Linux-Grafiktreiber umgeht Beschleunigungseinheiten
 
Also
1. Was bringt es das per Shader zu berechnen wenn eh keine spielbaren FPS (unter 30) dabei rumkommen ?
Hat man ja auch gesehen als Nvidia Shader raytracing für die gtx1000 GPUs freigegeben hat...

2. Bei 99% der spiele sieht man sowieso keinen Unterschied ob raytracing an ist oder nicht.
Es sieht maximal leicht anders aus.
Merken tut man es daran daß sich die FPS halbieren
 
Ein schöner proof of Concept, denn mehr ist es nicht.
Die Performance die RT Einheiten in Software (Shadern) nachzubilden, läßt die Performance um den Faktor 10 fallen.

Also, wenn man mit RDNA2 in Hardware 50fps hat, sind es mit Softwareraytracing noch 5fps.

Die eigentliche News kam aber mit dem Mesa Update davor!
Vulkan unter Linux mit RDNA2 unterstützt nun Raytracing unter Wine.

Also, Windowsspiele auf Linux spielen, genau so wie unter Windows.... RT=ON !!!
Konnte ich bereits mit The Ascent testen. Perfomance wie unter Windows!
 
Also, Windowsspiele auf Linux spielen, genau so wie unter Windows.... RT=ON !!!
Konnte ich bereits mit The Ascent testen. Perfomance wie unter Windows!
Cool dass es geht bei gleicher Performance! Allerdings gibt es mehr DX12 als Vulkan Games, somit kann man nicht komplett umsteigen und "braucht" weiterhin ein Windows wenn man alle Games bei voller Performance zocken will.

Ansonsten, joah, Software RT halt. Bietet die UE5 Engine ja auch bereits per Lumen als Pfad an. Hardware RT bleibt trotzdem überlegen, dedizierte Einheiten sind einfach schneller als Emulatoren.
 
Cool dass es geht bei gleicher Performance! Allerdings gibt es mehr DX12 als Vulkan Games, somit kann man nicht komplett umsteigen und "braucht" weiterhin ein Windows wenn man alle Games bei voller Performance zocken will.

Ansonsten, joah, Software RT halt. Bietet die UE5 Engine ja auch bereits per Lumen als Pfad an. Hardware RT bleibt trotzdem überlegen, dedizierte Einheiten sind einfach schneller als Emulatoren.

Nein, unter Linux wird DX9,10,11,12 und Vulkan unter Wine unterstützt. Die DX Wrapper unter Linux mapped DX nach Vulkan. Damit kann man auch DX12 RT Spiele unter Wine spielen.
 
Nein, unter Linux wird DX9,10,11,12 und Vulkan unter Wine unterstützt. Die DX Wrapper unter Linux mapped DX nach Vulkan. Damit kann man auch DX12 RT Spiele unter Wine spielen.
Ohne Performance Einbußen? Eher nicht.

https://www.resetera.com/threads/le...-counterstrike-borderlands-3-and-more.284876/

DXVK is the linux implementation of DX11
VKD3D is the linux implementation of DX12 (it's still in it's fairly early days)

DX11 Emulation läuft teilweise besser als nativ unter Windows. Cool. Aber wenn man die DX12 Emulation anschaut, oh boy, da verliert Wine 25-50% FPS...
 
Mich würde mal interessieren, wie die RADEON VII damit performt ?
Die "Rohleistung" hätte sie ja. Nur ob dabei 30 FPS + dabei raus kommen ?!? :schief:

MfG Föhn.
 
Es zeigt erstmal, das die RT-Cores oder wie man die immer marketingtechnisch bezeichnen möchte für die Technologie nur in sofern wichtig sind, das sie die Leistung nicht von den Shadern abziehen.

Um es mal für den Laien deutlich zu machen:
Eine aktuelle Grafikkarte - hier nehme ich mal die RTX 3060Ti als Referenz - hat 4.864 Shader, aber "nur" 38 RT-Cores, während die GTX 1070 dagegen "nur" 1.920 Shader und 0(!) RT-Cores besitzt. (Ungeachtet der Unterschiede in Speicher, Bandbreite, Taktraten, etc.)

Also kann die erzielte Leistung nicht wirklich berauschend sein außer, das es auch ohne RT-Cores möglich ist.

Um, jetzt mal den Faden weiter gesponnen, in FullHD, 2k, 4k im RT die selbe Performance zu erreichen wie ohne RT müssten RT-Karten mehr als das 10-Fache an RT-Cores haben. 4k funktioniert ja zur Zeit nur deshalb, weil man mit der Auflösung trickst und nur wenige Elemente überhaupt über die RT-Cores berechnet werden. ;-)
 
Es zeigt erstmal, das die RT-Cores oder wie man die immer marketingtechnisch bezeichnen möchte für die Technologie nur in sofern wichtig sind, das sie die Leistung nicht von den Shadern abziehen.

Um es mal für den Laien deutlich zu machen:
Eine aktuelle Grafikkarte - hier nehme ich mal die RTX 3060Ti als Referenz - hat 4.864 Shader, aber "nur" 38 RT-Cores, während die GTX 1070 dagegen "nur" 1.920 Shader und 0(!) RT-Cores besitzt. (Ungeachtet der Unterschiede in Speicher, Bandbreite, Taktraten, etc.)

Also kann die erzielte Leistung nicht wirklich berauschend sein außer, das es auch ohne RT-Cores möglich ist.

Um, jetzt mal den Faden weiter gesponnen, in FullHD, 2k, 4k im RT die selbe Performance zu erreichen wie ohne RT müssten RT-Karten mehr als das 10-Fache an RT-Cores haben. 4k funktioniert ja zur Zeit nur deshalb, weil man mit der Auflösung trickst und nur wenige Elemente überhaupt über die RT-Cores berechnet werden. ;-)

Ich verstehe Deine Argumentation nicht ganz, dedizierte Einheiten sollten immer schneller sein als eine Emulation über dafür nicht spezialisierte Einheiten. Dass es "nur" eine handvoll RT-Cores im Vergleich zu Shadern auf aktuellen Grafikkarten gibt liegt einfach daran dass die Chipfläche begrenzt ist und RT nicht in allen Spielen eingesetzt wird. Das ist ganz klar eine Design-Entscheidung.

Nvidia hätte das Verhältnis Shader / RT-Cores auf Ampere auch umgekehrt aufbauen können, mehr RT-Cores als Shader. Zur Zeit bringt das aber eher Nachteile in der Performance da ausnahmslos alle Spiele (Quake 2 per Pathtracing ist eine Tech-Demo, kein Spiel) auf einen hybriden Ansatz setzen: Rasterization + RT-Effekte. Somit benötigt man viele Shader und nur einige RT-Cores.

Die Anzahl an RT-Cores wird jetzt mit jeder Generation steigen, bis irgendwann mehr RT-Cores als Shader auf den Karten sind.
 
Es zeigt erstmal, das die RT-Cores oder wie man die immer marketingtechnisch bezeichnen möchte für die Technologie nur in sofern wichtig sind, das sie die Leistung nicht von den Shadern abziehen.

Um es mal für den Laien deutlich zu machen:
Eine aktuelle Grafikkarte - hier nehme ich mal die RTX 3060Ti als Referenz - hat 4.864 Shader, aber "nur" 38 RT-Cores, während die GTX 1070 dagegen "nur" 1.920 Shader und 0(!) RT-Cores besitzt. (Ungeachtet der Unterschiede in Speicher, Bandbreite, Taktraten, etc.)

Also kann die erzielte Leistung nicht wirklich berauschend sein außer, das es auch ohne RT-Cores möglich ist.

Um, jetzt mal den Faden weiter gesponnen, in FullHD, 2k, 4k im RT die selbe Performance zu erreichen wie ohne RT müssten RT-Karten mehr als das 10-Fache an RT-Cores haben. 4k funktioniert ja zur Zeit nur deshalb, weil man mit der Auflösung trickst und nur wenige Elemente überhaupt über die RT-Cores berechnet werden. ;-)

Die 3060 Ti hat aber auch nur 2432 + 2432 Shader, letzere sind in ihrer Nutzungsmöglichkeit nur eingeschränkt möglich (entweder-oder), es bedarf eine Anpassung der Spieleengine und der Spiele selber, um überhaupt udn dann möglichst viele Shader davon überhaupt nutzen zu können.
Das erklärt ja auch die teilweise starken Schwankungen in den Spielen.
Mal sind die Karten extrem viel schneller, mal nicht.
Aus marketingträchtigen Gründen ist es natürlich besser, wenn man das dem Kunden verschweigt und einfach eine gemeinsame dicke Zahl auf die Packung druckt.
Das hat ja bei der GTX 970 mit 3,5GB+0,5GB (mordsmäßig langsam) äh ich meine 4GB RAM auch wunderbar funktioniert.
Zudem sind Shader nicht gleich Shader.
Von Hersteller zu Hersteller sowieso nicht, aber auch von hauseigenen Produkten wird ja ständig was verändert.
Die Leistung und auch Effizienz kann sich also mitunter im Extremfall grundlegend stark unterscheiden.
Die Sache mit den RT Cores ist auch ein zweischneidiges Schwert.
Manhat das Problem, wieviel Platz auf dem Chip man dafür zu opfern bereit ist.
Verbaut man viele dieser sehr effizienten kleinen Kerne, so läuft Raytracing natürlich gleich viel fluffiger, vor allem inn Hinblick zur Konkurrenz.
Aber hat man dann noch genug Fläche für die normalen Shader, um auch genügend Rohleistung für alle Bereiche aufzufahren?
Sollte die Berechnung von Raytracing dann nur über diese kleinen Kerne möglich sein, verpufft womöglich auch noch viel der ansonsten vorhandenen Rohleistung, wenn dort eine Überlastung der Pipeline eintritt.
Daher sind dann ja insbesondere die kleinen oder ältere Karten hart getroffen und altern sehr sehr schnell, weil einfach zu schnell die Puste ausgeht.
Daher ist AMD's Ansatz vielleicht gar nich tmal so schlecht, dass man gar nicht diesen Tanz auf dem Dratseil Akt vollführen muss.
Man muss halt aber trotzdem zusehen, wie die Shadereinheiten dann diese Effekte auch schnell genug hinbekommen, damit man durch mehr Shader nicht nur eine sehr hohe Rohleistung erzielt, sondern gleichzeitig auch eine ordentliche RT Performance hinlegt.
Allerdings mus sman vielleicht auch im Auge behalten, wie man vielleicht in 10 oder erst 20 Jahren dann komplette Welten in 3D mit RT darzustellen gedenkt.
Womöglich mus sman dann komplett auf hochspezielisierte RT Cores wie NVidia setzen, weil ja die normalen Shader dann quasi obsolet sind.
Oder die Shader entwickeln sich nach und nach in diese Richtung, so dass man irgendwann die letzten Zöpfe an Ausführungseinheiten innerhalb der Shader nur noch abknipsen muss.
Ich bin gespannt, wie sich das entwickelt.
 
Wie sieht es denn aus, wenn sich eine Grafikkarte (z.B. Vega64) um Raytracing kümmert und ne 2. um den Rest? Die 4096 Shader der Vega müssten doch einiges an Leistung haben.
 
Wie sieht es denn aus, wenn sich eine Grafikkarte (z.B. Vega64) um Raytracing kümmert und ne 2. um den Rest? Die 4096 Shader der Vega müssten doch einiges an Leistung haben.
So funktioniert kein aktueller SLI- / Crossfire-Verbund. Man stelle sich die Timing-Probleme vor wenn auf einer Karte Rasterization und auf der anderen Karte RT mit den Daten der ersten Karte laufen soll. :schief:
Daher ist AMD's Ansatz vielleicht gar nich tmal so schlecht, dass man gar nicht diesen Tanz auf dem Dratseil Akt vollführen muss.
Man muss halt aber trotzdem zusehen, wie die Shadereinheiten dann diese Effekte auch schnell genug hinbekommen, damit man durch mehr Shader nicht nur eine sehr hohe Rohleistung erzielt, sondern gleichzeitig auch eine ordentliche RT Performance hinlegt.
Allerdings mus sman vielleicht auch im Auge behalten, wie man vielleicht in 10 oder erst 20 Jahren dann komplette Welten in 3D mit RT darzustellen gedenkt.
Womöglich mus sman dann komplett auf hochspezielisierte RT Cores wie NVidia setzen, weil ja die normalen Shader dann quasi obsolet sind.
Oder die Shader entwickeln sich nach und nach in diese Richtung, so dass man irgendwann die letzten Zöpfe an Ausführungseinheiten innerhalb der Shader nur noch abknipsen muss.
Ich bin gespannt, wie sich das entwickelt.
Das wird auf jeden Fall spannend. Allerdings sehe ich AMD's Ansatz eher als Notlösung, da gibt es ja pro Compute-Unit einen Rayaccelerator. Heißt die Skalierung der RT-Leistung ist hart gekoppelt mit der Anzahl an CUs. Nvidia kann hier aktuell viel flexibler skalieren durch eigenständige Cores auf dem Chip.

Hier ist ein super Artikel dazu: https://www.hardwaretimes.com/why-a...on-rx-6000-a-comparison-of-ampere-and-rdna-2/

1632475186768.png


Leider ohne Vergleich zu den rendertimes auf RDNA2.
 
Zuletzt bearbeitet von einem Moderator:
Das ist ja auch eher als Zusatzkarte gedacht, so wie damals mit der Physx-Karte.
Das ändert nichts an der Timing-Problematik. Es gibt ja einen Grund warum sich Zusatzkarten in diesem Bereich nicht durchgesetzt haben.

Wir sprechen hier von Nanosekunden in denen die Kommunikation innerhalb der GPU Renderpipeline stattfindet, allein der Leitungsweg von einer Steckkarte zu einer anderen direkt "nebenan" auf dem Board würde die gesamte Kommunikation massiv verlangsamen. Siehe auch DDR5, wenn ich mich richtig erinnere rücken die Steckplätze da auch näher an die CPU damit die Übertragungsraten überhaupt funktionieren.
 
Ohne Performance Einbußen? Eher nicht.

https://www.resetera.com/threads/le...-counterstrike-borderlands-3-and-more.284876/



DX11 Emulation läuft teilweise besser als nativ unter Windows. Cool. Aber wenn man die DX12 Emulation anschaut, oh boy, da verliert Wine 25-50% FPS...

Der Test ist ein Jahr alt und veraltet. Kein Projekt wird momentan mehr gepushed als Proton-Wine und DXVK und VKD3D. Laut Valve wird Linux Gaming im Dezember zu 100% mit Windows gleichziehen.

Control wird übrigens erst seit April supportet: https://github.com/HansKristian-Work/vkd3d-proton/releases
 
Zuletzt bearbeitet von einem Moderator:
Der Test ist ein Jahr alt und veraltet. Kein Projekt wird momentan mehr gepushed als Proton-Wine und DXVK und VKD3D. Laut Valve wird Linux Gaming im Dezember zu 100% mit Windows gleichziehen.

Hast Du einen neueren Test? Ansonsten sehe ich meine Quelle nicht als widerlegt an, 1 Jahr ist jetzt nicht "uralt". Und was Valve so sagt, joah, sind halt Prognosen.

Ich meine: wäre cool wenn es so kommt, aber aktuell muss man noch (teils massive) Abstriche in der Performance machen.

Kommt auch für Linux DirectStorage / Sampler Feedback Streaming? Ohne die neuen DX12 Features zeitnah zu haben macht eine Umstellung, in meinen Augen, wenig Sinn.
 
Hast Du einen neueren Test? Ansonsten sehe ich meine Quelle nicht als widerlegt an, 1 Jahr ist jetzt nicht "uralt". Und was Valve so sagt, joah, sind halt Prognosen.

Ich meine: wäre cool wenn es so kommt, aber aktuell muss man noch (teils massive) Abstriche in der Performance machen.

Kommt auch für Linux DirectStorage / Sampler Feedback Streaming? Ohne die neuen DX12 Features zeitnah zu haben macht eine Umstellung, in meinen Augen, wenig Sinn.

Direct Storage, bringt an einem PC, der viel Speicher hat, nichts! Erst wenn der GPU Speicher nicht mehr ausreicht, kann DS noch ein paar fps rausholen, durch schnellers reinladen von Texturen. Schnelle shooter die sowieso kaum Speicher nutzen auf der GPU, profitieren davon gar nicht.

Direct Storage bringt nur etwas an neuen Konsolen, die eine schnelle SSD haben und wenig GPU-RAM.

Ich erstelle am WE mal ein paar benchmarks mir meinem Linux System. Konnte jetzt auch keine aktuellen finden.
 
Also
1. Was bringt es das per Shader zu berechnen wenn eh keine spielbaren FPS (unter 30) dabei rumkommen ?
Hat man ja auch gesehen als Nvidia Shader raytracing für die gtx1000 GPUs freigegeben hat...

2. Bei 99% der spiele sieht man sowieso keinen Unterschied ob raytracing an ist oder nicht.
Es sieht maximal leicht anders aus.
Merken tut man es daran daß sich die FPS halbieren
Bringt höchstens was für Spiele, die ohne Ray Tracing garnicht erst laufen, wie Metro Exodus Enhanced Edition. Dann müsste man die Settings allerdings so stark runterschrauben, dass es schlechter aussieht als die meisten Spiele ohne Ray Tracing.

Vielleicht kommen in Zukunft ja noch Budget-GPUs ohne dedizierte Ray Tracing Beschleunigung, die davon profitieren können.
 
Zurück