PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Schade, daß bei Source der "DX8.2"-Pfad fehlt?


MadManniMan
2004-08-27, 07:56:12
...zu dieser Überlegung bin ich durch folgenden Ausschnitt aus Leos aktuellen News gekommen:

Gemäß einem Artikel der FiringSquad werden unter dem in der Beta von Counter-Strike: Source befindlichem Valve Stress Test GeForceFX-Karten per default nur mit DirectX8-Shadern gefüttert, während GeForce6- und Radeon-Karten (ab der 9500) DirectX9-Shader abbekommen. Keine feststellbaren Unterschiede in der Bildqualität sowie keinerlei Performance-Unterschiede bei den Benchmarks zwischen DirectX8- und DirectX9-Mode lassen vermuten, daß die GeForceFX-Karten von der Source-Engine derzeit automatisch auf den DirectX8-Modus zurückgestuft werden, auch wenn man mittels Konsolenkommando einen höheren Modus zu erzwingen versucht.
Interessant ist nebenbei, daß bei Radeon 9800XT als auch GeForce 6800GT die Performance im DirectX8-Mode um bis zu 20 Prozent höher war, obwohl bei den Bildqualitäts-Vergleichen dieser Karten auch keine wirklich großen Unterschiede auffielen.

Wir erinnern uns: der sog. DX8.2 Pfad benutzte nur für Shader DX9, die auch wirklich davon profitierten, griff aber sonst auf PS1.4 u.ä. zurück.
Nun stellt sich mir die Frage: würde es weitere Performance bringen, oder rechn0rn sich die Chips mit DX9 an quasi DX8 Effekten eh nicht so sehr ins Schwitzen?

Dies läßt m.E. auch noch weitere Fragen aufkommen: warum dann DX9 pur? Damit man groß und breit Source als DX9 Wunderwerk vermarkten kann(wobei die Engine ja primär auf DX7 hin entwickelt wurde und die Shader mehr oder weniger geschickt "aufgesetzt" wurden. Ich will jedoch nicht behaupten, daß der DX7 Teil so gestaltet wurde, daß alles darüber nur angeflanscht wurde, sondern daß man schon Rücksicht walten ließ, alles recht Modular aufzubauen)?
Oder, um ATi letztendlich doch noch Tribut für die Millionen zu zollen ;) <- Das soll jetzt kein Flame sein, eher die simple Überlegung, daß ATi schon genug hat zurückstecken müssen, ob des HL² Desasters letzten Herbst.

Fragen über Fragen... Gruß MMM

LovesuckZ
2004-08-27, 09:29:37
Nun stellt sich mir die Frage: würde es weitere Performance bringen, oder rechn0rn sich die Chips mit DX9 an quasi DX8 Effekten eh nicht so sehr ins Schwitzen?

Die FX Karten profitieren von DX8 Shadern (Mehr Recheneinheiten) sehr stark und das Registerproblem zeigt sich nicht (so eindeutig).
Es ist schade, dass dieser Pfad nicht eingebaut wurde (wie war das mit "5mal mehr Arbeit fuer die Optimierung der FX Karten [war ja dann eine Luege, wenn der Pfad nie im benchmark vorhanden war...]), da auch der NV40 von "_pp" deutlich haette profitieren (bis zu 50%) koennen ohne dabei Qualitaetsverluste in Kauf nehmen zu muessen.

Oder, um ATi letztendlich doch noch Tribut für die Millionen zu zollen ;)


Sollte bekannt sein, dass HL2 im DX9 Pfad nur SM2.0 einsetzt. Einerseits, weil dies ATi's Optimierungsregel entspricht ("immer das hoechste Shadermodell zu verwenden"), andererseits konnte man die Konkurenzkarten doch sehr stark in der Leistung beschneiden, indem die Schwaechen ausnutzt wurden.
Es wird interessant, ob im DX9 Pfad auch nur ein "_pp" vorhanden sein wird.
Wenn nicht, kann Valve mal erklaeren, wie man fuer die Nvidiakartenoptimiert haette.

MadManniMan
2004-08-27, 09:36:20
Alles in allem bin ich vorerst doch recht enttäuscht von Valve - vor allem, wenn man sich die Shots bei Firingsquad anschaut ;(

Aber wie gehabt: es gibt tatsächlich zusätzlich zu dem Nonsense, den neusten Karten auch die meiste Arbeit aufzuzwingen(klar haben R420 und NV40 die Power, aber warum hier nicht noch ein paar Prozent rausholen :| ), auch noch die Tendenz, nicht für den NV3X zu optimieren. :(

Gast
2004-08-27, 09:56:37
Ist wohl die Revange für Doom3 :P
Wer weis ob das endgültig so beibehalten wird, und nicht in HL2 doch noch andere Renderpfade auftauchen, also ruhig Blut.

Quasar
2004-08-27, 10:02:35
Warum wußte ATi nur schon im März, das many developers will treat _all_ DX9 NV hardware as "low end DX9" hardware, because that's the best way, wie in den Fußnoten der Save the Nanosecond (http://www.ati.com/developer/gdc/Huddy_SaveTheNanosecond.pdf) Präsentation erwähnt wurde, die es mal bei THG in der "kompletten Fassung" (IIRC) zum DL gab.

Auf Seite 25 steht da (auch in der "offiziellen" Version):
We recommend treating low end DX9 Hardware to the DX8 Path.[...]
Vielleicht sogar eine gute Sache - aber die Referenz zu obigem "all DX9 nV Hardware as low end DX9..." ist schon 'lustig'.

Wenn man dann noch die "open-end" Pünktchen des Satzes "But note that because this assertion is based on forecasts and trends it is highly subjective..." betrachtet, könnte man schon auf Gedanken kommen, die nicht so 'nett' sind.

Quasar
2004-08-27, 10:04:46
Sorry, Anhänge vergessen... (sind nur die aus der "offiziellen Version")

Demirug
2004-08-27, 10:09:05
Im Zweifelsfall wird man dann HL2 vormachen müssen das man eine ATI Karte im Rechner hat.

Was die als 2.0 getarneten 1.x Shader angeht so ist das zumindestens vom Workflow erklärbar. Für jeden Shader zu prüfen welche Version ausreicht wäre eben zusätzlicher aufwand gewesen und hätte die Möglichkeiten eines einfachen Batchscripts überstiegen.

Es könnte aber durchaus sein das nVidia den Treiber inzwischen fit genug gemacht hat solche Fälle zu erkennen.

MadManniMan
2004-08-27, 10:14:26
Ich hoffe, daß entweder nV oder aber Valve da eine wirklich gute Lösung findet. Ist denn bekannt, woran Valve gerade soviel Zeit "verschwendet"? Wirklich schade, daß nicht das niedrigst sinnige SM benützt wird ;(

Nun aber nochmal zu meiner anderen Frage: inwieweit würden die laut Valve "richtigen" DX9-Karten - sprich R300+ und NV40+ - vom DX8.2 Pfad profitieren?

Demirug
2004-08-27, 10:26:21
Ich hoffe, daß entweder nV oder aber Valve da eine wirklich gute Lösung findet. Ist denn bekannt, woran Valve gerade soviel Zeit "verschwendet"? Wirklich schade, daß nicht das niedrigst sinnige SM benützt wird ;(

Wie viel Zeit den? Valve hat doch immer nur mit relativen Angaben operiert und niemals eine Angabe in Richtung "Manntage" gemacht. Man wird dort schon gewusst haben warum.

Nun aber nochmal zu meiner anderen Frage: inwieweit würden die laut Valve "richtigen" DX9-Karten - sprich R300+ und NV40+ - vom DX8.2 Pfad profitieren?

Was Value dazu sagt weiss ich nicht. Ich sage allerdings das Karten die mathematisch identische 1.X und 2.0 Shader mit gleicher Geschwindigkeit ausführen können mit dem 8.2 Pfad eher schlechter laufen würden.

Quasar
2004-08-27, 10:27:39
Darüber kann man nur raten - die R3xx und Aufgüsse vermutlich gar nicht, beim nV40 sehe momentan höchstens Probleme mit den Temps - je nach 'Art' der Optimierungsrichtlinien, die Valve hier bei den 'überflüssigen' PS2.0 nutzte, wurde darauf entweder recht wenig geachtet, oder eben recht gut.

Wobei der aktuelle Treiber wohl schon relativ gut unnütze Temps aussortieren können soll.

Demirug
2004-08-27, 10:34:26
Darüber kann man nur raten - die R3xx und Aufgüsse vermutlich gar nicht, beim nV40 sehe momentan höchstens Probleme mit den Temps - je nach 'Art' der Optimierungsrichtlinien, die Valve hier bei den 'überflüssigen' PS2.0 nutzte, wurde darauf entweder recht wenig geachtet, oder eben recht gut.

Es war mal vergesehen für jedes vom Compiler unterstütze Shaderprofil eine DLL mit Shadern zu erzeugen. Für 2.0 und 2.A gab es diese DLLs auch schon. Für 2.B dürfte es sich aber kaum lohnen weil dort die gleichen Shader wie bei 2.0 heraus kommen sollten. Ob man es für 3.0 macht ist dann wohl eine politische Sache.

BesenWesen
2004-08-28, 02:10:32
Wäre recht ärgerlich, wenn es wirklich so kommen sollte...
Vielleicht gibt es ja auch hier wie bei Far Cry die Möglichkeit, den NV3x per Mod in den R3xx Rendermodus zu zwingen und sie mit verminderter Präzision (FP16) rechnen zu lassen. War dort eine gute Lösung, vernünftige Leistung ohne große BQ-Einbußen zu bekommen.