ev4x
Lt. Junior Grade
- Registriert
- Juni 2012
- Beiträge
- 479
@Jagdwurst Guck dir mal den Screenshot von Mu Wupp in Beitrag #55 an da wird das ganz gut beschrieben warum AMD schneller und Nvidia langsamer bei der Engine ist
Folge dem Video um zu sehen, wie unsere Website als Web-App auf dem Startbildschirm installiert werden kann.
Anmerkung: Diese Funktion ist in einigen Browsern möglicherweise nicht verfügbar.
Steht doch alles im Text, weil XeSS schlechter aussieht als DLSS und wir dann einen unfairen Vergleich haben bei dem Intel GPUs ihre Mehrperformance durch schlechtere Bildqualität holencrustenscharbap schrieb:Ich muss noch was nach haken: Wieso wurde bei Intel 100% Renderauflösung und bei Nvidia AMD DLSS/FSR Quality benutzt? Und das Spiel kann sogar XeSS. Wieso nutzt man das nicht? Sollte Intel doch bestimmt ~20fps mehr geben.
ev4x schrieb:
Jagdwurst schrieb:is ja alles english ☹️
Sagst dann wohl auch zur UE5, oder ? Die engine ist auf AMD optimiert, war sie immer schon, RT ist neu und braucht wohl noch Zeit bis das auch in dieser läuft, die FPS ohne RT ist selbst eine 7600 Nativ noch spielbar, und das AMD mit 8GB schlechter ist wie Nvidia kann eben auch am Upscalling liegen denn das darf die 7600 nicht eine Nvidia aber wohlDrFreaK666 schrieb:Bei der Kack-Engine ist alles möglich.
Eines der wichtigsten Merkmale der Engine, die in den neuen Call-of-Duty-Titeln verwendet wird, ist, dass sie stark „bindless“-orientiert ist. Das bedeutet, dass Shader nahezu jede Textur, jeden Buffer und jede Raytracing-Struktur aus einem großen Descriptor-Pool erhalten. Dieser Ansatz ermöglicht es dem Spiel, eine enorme Menge an Ressourcen schnell und flexibel zu verwalten. Allerdings belastet dieses Design die Descriptor-Verarbeitung der GPU erheblich.Jagdwurst schrieb:is ja alles english ☹️
Ich hab dir das mal von ChatGPT übersetzen lassen ist eventuell nicht 100% korrekt aber ich hoffe du kannst das jetzt lesenJagdwurst schrieb:is ja alles english ☹️
Eines der wichtigsten Merkmale der Engine, die in den neuen Call-of-Duty-Titeln verwendet wird, ist, dass sie stark bindless-orientiert ist. Das bedeutet, dass die Shader nahezu jede Textur, jeden Buffer und jede Raytracing-Struktur aus einem großen Descriptor-Pool erhalten. Dieser Ansatz ermöglicht es dem Spiel, eine enorme Menge an Ressourcen schnell und flexibel zu verwalten. Allerdings belastet dieses Design die Descriptor-Verarbeitung der GPU erheblich.
In der neuesten Version der Engine ist diese bindless Architektur eng mit Upscaling-Technologien verknüpft. Die Engine unterstützt diese nicht nur, sondern integriert sie tief in die Rendering-Pipeline, was zu einer großen Anzahl schneller Ressourcenzugriffe pro Frame führt. Außerdem verwendet die Engine eine hybride Raytracing- und Raster-Pipeline mit Multi-Level-Culling, wodurch Tausende von TLAS/BLAS-Objektstrukturen gleichzeitig verwaltet werden. Auch diese Bindings laufen über die Descriptor-Pools.
Dieses Design ist notwendig, weil ein traditionelleres, weniger bindless-orientiertes Vorgehen – wie es bei den meisten Engines noch üblich ist – zu deutlich schlechterer Leistung bei Black Ops 7 führen würde.
Descriptor-lastige Engines wie Black Ops 7 können auf unterschiedlicher Hardware ungewöhnliches Leistungsverhalten erzeugen. Ähnliche Engines existieren bereits auf dem Markt, etwa Ubisofts Anvil-Next-Engine, die in Assassin’s Creed Shadows verwendet wird. In Zukunft werden wahrscheinlich mehr Engines diesem Ansatz folgen, da es schwierig ist, grafische Qualität anders weiter zu steigern. GTA 6 zum Beispiel wird vollständig bindless und descriptor-lastig entwickelt.
Die descriptor-lastige Natur hat große Auswirkungen darauf, wie Hardware Shader ausführt, weil ein einzelner GPU-Shader in Subgruppen mit bis zu 128 Aufrufen laufen kann. Texture-Instruktionen können bis zu zwei Vec4-Operationen haben, also zwei Mal 32 Bytes, kombiniert mit einer 16-Byte-Sampler-Operation. Das ergibt insgesamt 80 Bytes, die — auf eine typische GPU mit 32 oder 64 Lanes projiziert — 2560 oder 5120 Bytes ergeben. Das ist bereits eine enorme Datenmenge für eine Verarbeitungseinheit. Auf 64 Lanes überschreitet das Datenvolumen bereits eine 4-KB-CPU-Page!
Die Hardware behandelt dies sehr spezifisch, da es keine universelle Lösung für die effiziente Verarbeitung solcher Datenmengen gibt. NVIDIA speichert alles in großen Tabellen: eine Tabelle für Bilder und eine für Sampler. Diese Tabellen sind in der Hardware gecached, und ein 32-Bit-Block wird als ein 12-Bit-Sampler-Index und ein 20-Bit-Texture-Index übertragen. Dadurch enthält jeder Block zwei Kontexte, und das Umschalten dieser Kontexte ist sehr aufwendig. Das verlangsamt NVIDIA-GPUs, und je mehr eine Spiele-Engine auf dieser Methode basiert, desto schlechter wird die Leistung.
AMD geht hier anders vor. Zusätzlich zu Vector-Engines besitzen sie Scalar-Engines, die es ermöglichen, den gesamten Descriptor in die Scalar-Register zu laden. Die Hardware greift dann nur einmal darauf zu, wenn die volle Subgruppe die Daten benötigt. Dadurch sind Descriptor-Bindings praktisch kostenlos, da keine teuren Kontextwechsel wie bei NVIDIA notwendig sind. Daher sind AMD-GPUs weitgehend immun gegen Leistungsabfälle durch diese Engine-Arten.
NVIDIA versucht dies durch Optimierungen auf Treiberebene mit zusätzlichen Instruktionen zu kompensieren, was jedoch nicht effizient erfolgen kann, da dies die Latenz und die Wahrscheinlichkeit größerer Framedrops erhöht. Der NVIDIA-Treiber versucht, in diesen komplexen Umgebungen ein Gleichgewicht zu finden, um eine akzeptable Leistung zu erhalten und gleichzeitig Framedrops zu minimieren (was jedoch nicht vollständig möglich ist). Aber aufgrund der Hardwarearchitektur selbst gibt es wenig Spielraum für Verbesserungen. Es ist wichtig zu beachten, dass sich NVIDIAs Binding-Modell seit fast 20 Jahren kaum verändert hat — es stammt aus den 2000ern. AMD hingegen hat seine Hardware in den 2010ern entworfen und sich daher von diesem veralteten tabellenbasierten Modell entfernt.
Nur dann, wenn die neue Generation eben besseres Supersampling bietet, und dann gehört es eben auch zur „Leistung“ der Karte, dass sie mit weniger Renderauflösung auskommen kannrocka81 schrieb:Die Benchmarks sind zum Vergleich über verschiedene Generationen immer nutzloser.
Jede Generation wird mit anderer Auflösung, Supersampling Methoden getestet
Mit 1080p und DLAA hättest du hier auch nicht viel mehr FPS als mit 1440p und DLSS Q, um zu sehen wo das CPU Limit liegt, wird hier 720p + DLSS P nötig sein.Icke-ffm schrieb:DLSS/FSR/XeSS Nativ sowie maximale Details als „CPU“ Test seperat dazu nehmen.
so das man zumindest sehen kann bei welcher GPU das CPU limit einsetzt
Der absurde Abstand ist eine Ausnahme, dass die 9070XT gelegentlich schneller als die 5070ti ist, ist keine Ausnahme.therealcola schrieb:Ja schön auf Konsole optimiert deshalb ist 9070XT Ausnahmsweise mal schneller als ne 5070ti. Wuhu![]()
Ihr könnt die Testsequenz doch einfach auf euren Youtube Kanal hochladen 🤔Wolfgang schrieb:Warum die Testsequenz nicht mehr hochgeladen wird? Die hat sich quasi nie einer angesehen, es hat aber immer gut Zeit gekostet (ich bin nicht der Video-King). Darum mache ich das nicht mehr und stecke die Zeit lieber in etwas anderes.
Ich kann die Begründung nicht nachvollziehen.Wolfgang schrieb:Ich bin da gedanklich hin und hergesprungen, konnte mich aber nie ganz entscheiden. Darum habe ich es so gelassen, wie wir es in den meisten anderen Spielen machen würden.
Wenn der Entwickler will, dann macht er auch eine 6700XT schneller als eine 5080. Und jetzt?CastorTransport schrieb:Die "billige" 9070 XT zeigt es der 5080 in 1440p aber mal... Sogar mit HW-RT vorne im 1%...
Ist folgendes nicht sinnvoller, um festzustellen, ab wann in der Testszene eine CPU-Limit auftritt:Icke-ffm schrieb:@Wolfgang
Da Ihr ja eh keine FHD Tests mehr macht, wie sieht es denn aus, wenn Ihr diese als CPU test mit in die Game tests mit einbaut ? Sprich FHD/CPU test maximale Rechenleistung mit dem 9800x3d eben ohne Qualität sondern nur maximale GPU Leistung. DLSS/FSR/XeSS Nativ sowie maximale Details als „CPU“ Test seperat dazu nehmen.
so das man zumindest sehen kann bei welcher GPU das CPU limit einsetzt, Abseits der Optischen Qualität, aber da wäre dann zumindest die GPU Rechenleistung vergleichbar. so das man zumindest sehen kann ob eine Intel/AMD oder Nvidia GPU mehr von einem schnellem Prozessor profitiert, den CPU tests werden immer mit 5090 im CPU limit und 720p erstellt. Ein Test in 1080p Nativ Zeigt dann die GPU Leistung zumindest mit der schnellsten CPU.
Sagst dann wohl auch zur UE5, oder ? Die engine ist auf AMD optimiert, war sie immer schon, RT ist neu und braucht wohl noch Zeit bis das auch in dieser läuft, die FPS ohne RT ist selbst eine 7600 Nativ noch spielbar, und das AMD mit 8GB schlechter ist wie Nvidia kann eben auch am Upscalling liegen denn das darf die 7600 nicht eine Nvidia aber wohl
Jede Generation? Es sind insgesamt 8 GPU-Generationen (3x AMD, 3x Nvidia und 2x Intel) in dem Artikel vertreten und es gibt 2 verschiedene Testverfahren. Da sind wir von "jede Generation testet ihr anders" aber weit entfernt. Davon abgesehen dass man bei verschiedener Bildqualität irgendwann eben zwangsweise anders testen muss, damit es noch halbwegs fair und praxisrelevant ist.rocka81 schrieb:Die Benchmarks sind zum Vergleich über verschiedene Generationen immer nutzloser.
Jede Generation wird mit anderer Auflösung, Supersampling Methoden getestet