PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : DirectX 9.1: Sein oder nicht sein?


deekey777
2004-01-08, 14:47:26
Vor einiger Zeit sorgte die Meldung, dass nVidia gemeinsam mit Microsoft an DX9.1 arbeite, welches die CineFX/II-Architektur unterstützen soll und damit auch die PS 2.0-Leistung um bis zu 60% verbessern werde, was aber durch die neuen Deto 50.xx gar nicht nötig sein soll. Gestern las ich auch, dass niemand mehr etwas von DirectX 9.1 hören will.
Also was jetzt kommt es oder nicht?

PeterLustig
2004-01-08, 14:52:27
dx 9.1 is totaler humbug und wird nich erscheinen.
wurde hier schonmal diskutiert.
leider wurde dieses "Gerücht" von 9.1 durch diverse medien verbreitet z.b. die technickspezialisten von der gamestar :D
wie ges. is blödsinn...

Xmas
2004-01-08, 15:01:33
Original geschrieben von deekey777
Vor einiger Zeit sorgte die Meldung, dass nVidia gemeinsam mit Microsoft an DX9.1 arbeite, welches die CineFX/II-Architektur unterstützen soll und damit auch die PS 2.0-Leistung um bis zu 60% verbessern werde, was aber durch die neuen Deto 50.xx gar nicht nötig sein soll. Gestern las ich auch, dass niemand mehr etwas von DirectX 9.1 hören will.
Also was jetzt kommt es oder nicht?
Das ist nicht DX9.1, sondern ein weiteres Profil (PS_2_a) für den DirectX HLSL Compiler, welches bereits im Sommer im Zuge eines SDK-Updates ausgeliefert wurde.

Coda
2004-01-08, 17:47:56
Vor allem ist das Humbuck weil OpenGL CineFX durch eine propriätere OpenGL Extension von nVidia unterstützt wird und selbst dort niemals 60% drin sind. Also totaler Quatsch.

Ich mein das haben irgendwelche nVidioten erfunden um damit rumflamen zu können.

Und die meisten Benchmarks benützen sowieso kein HLSL.

aths
2004-01-08, 18:07:52
Zum Thema DX9.1 werde ich wahrscheinlich morgen einen Kurzartikel schreiben :/

deekey777
2004-01-08, 19:00:55
Original geschrieben von aths
Zum Thema DX9.1 werde ich wahrscheinlich morgen einen Kurzartikel schreiben :/

Genau, mach mal!

Odal
2004-01-11, 09:34:17
so da ich kein neues Thema zum artikel aufmachen wollte schreib ich hier rein.....


Es sei denn, Nvidia verbessert den Recompiler erheblich, und traut sich, FX12-Hardware für DirectX-Pixelshader zu verwenden. FX12-Rechenleistung ist nämlich in rauen Mengen vorhanden. Allerdings ist es nicht so einfach, FX12-Units rechnen zu lassen, wenn eigentlich FP24-Genauigkeit gefordert wird - DirectX selbst erlaubt das auch nicht


bedeutet das das es theoretisch moeglich waer, treibermaessig die, von der DirectX API, geforderten FP24 Berechnungen in FP12 auszufuehren? Also das der Treiber diese praktich als FP12 von der Hardware ausfuehren laesst und und wieder ins FP24 Format umwandelt. Ich entsinne mich irgendwo gelesen zu haben das Qualitative Unterschiede zw. FP12 und FP24 praktisch gering sind.
Wenn das ginge, wieviel Performanceschub waer dort zu erwarten?
Es war doch so das NVidia aufs FP12 gesetzt hat und dummerweise DirectX9 als anforderung FP24 (oder wars FP16) oder groesser hat. Falls es technisch moeglich waer, muesste doch endlich die NVidia Hardware das leisten wozu sie gebaut wurde. Dadurch das vieles in FP32 gerechnet werden muss, geht doch sehr viel Performance verlohren, oder irre ich da?

dann mal los 3D Center Gurus ;) ich erwarte antworten

Demirug
2004-01-11, 11:03:03
Original geschrieben von Odal
so da ich kein neues Thema zum artikel aufmachen wollte schreib ich hier rein.....



bedeutet das das es theoretisch moeglich waer, treibermaessig die, von der DirectX API, geforderten FP24 Berechnungen in FP12 auszufuehren? Also das der Treiber diese praktich als FP12 von der Hardware ausfuehren laesst und und wieder ins FP24 Format umwandelt. Ich entsinne mich irgendwo gelesen zu haben das Qualitative Unterschiede zw. FP12 und FP24 praktisch gering sind.
Wenn das ginge, wieviel Performanceschub waer dort zu erwarten?
Es war doch so das NVidia aufs FP12 gesetzt hat und dummerweise DirectX9 als anforderung FP24 (oder wars FP16) oder groesser hat. Falls es technisch moeglich waer, muesste doch endlich die NVidia Hardware das leisten wozu sie gebaut wurde. Dadurch das vieles in FP32 gerechnet werden muss, geht doch sehr viel Performance verlohren, oder irre ich da?

dann mal los 3D Center Gurus ;) ich erwarte antworten

Es gibt doch einen Thread für den Artikel: http://80.237.203.42/vbulletin/showthread.php?s=&threadid=117490

Es gibt Fälle bei denen man keinen unterschied zwischen FX12 und FP32 sehen kann. Es gibt aber auch Fälle bei denen man es sieht.

DX9 Shader (>= 2.0) müssen wenn nicht anders angegeben mit mindestens FP24 gerechnent werden. Entwickler dürfen diese Forderung auf FP16 reduzieren wenn sie der Meinung sind das ihnen das reicht.

Kompliziert ist es nun aber automatisch im Treiber herauszufinden wo welches Format ausreicht. Nimmt man da auch nur einmal zuviel FX12 schreit wieder jeder Cheat.

Odal
2004-01-12, 12:01:54
naund man koennte doch das dann optional im treiber aktivieren lassen. Und per dafault eben deaktiviert.
Ich wuerd dann schon gern mal ab und an auf FP12 schalten koennen falls irgendwann in der zukunft die leistung nimmer reicht.

Keel
2004-01-12, 16:06:29
Original geschrieben von Odal
naund man koennte doch das dann optional im treiber aktivieren lassen. Und per dafault eben deaktiviert.
Ich wuerd dann schon gern mal ab und an auf FP12 schalten koennen falls irgendwann in der zukunft die leistung nimmer reicht.
Nicht FP12, sondern FX12.
Aber dein Gedankengang interessiert mich auch, diese Frage habe ich mir so ähnlich auch schonmal gestellt.

@ Demirug

Ist es möglich, im Treiber einen Schalter einzubauen, mit dem man die Rechengenauigkeit der GraKa forcen kann? Also quasi wie ein PS- und VS-Limiter? Denn in einigen Jahren interessieren einen bestimmte Effekte eh nicht mehr, dann kommt es nur noch auf Speed an, und bei FX12 sollte ein NV35 ja noch durchaus abgehen.
Und dazu noch: Was würde dann mit Effekten passieren, die eine höhere Rechengenauigkeit erfordern? Würden diese einfach nicht dargestellt werden oder würde es Bildfehler geben?

Demirug
2004-01-12, 16:20:02
Original geschrieben von Keel
@ Demirug

Ist es möglich, im Treiber einen Schalter einzubauen, mit dem man die Rechengenauigkeit der GraKa forcen kann? Also quasi wie ein PS- und VS-Limiter? Denn in einigen Jahren interessieren einen bestimmte Effekte eh nicht mehr, dann kommt es nur noch auf Speed an, und bei FX12 sollte ein NV35 ja noch durchaus abgehen.
Und dazu noch: Was würde dann mit Effekten passieren, die eine höhere Rechengenauigkeit erfordern? Würden diese einfach nicht dargestellt werden oder würde es Bildfehler geben?

Bildfehler vom einfachem Banding bis hin zu übelen Pixelflimmern.

Der Vertexshader rechnet immer mit FP32 selbst HT&L rechnete schon damit. Alles andere wäre dort auch nicht vertretbar.

Ein Schalter würde letzten Endes nichts bringen. Die Stellen im Shader die mehr als FX12 brauchen benötigten diese heute wie auch in Zukunft und was bringt einem Speed wenn man dann nur noch Müll auf dem Bildschrim hat. Auf der anderen Seite gilt aber auch das dort wo FX12 auchreicht tut es das heute genau wie morgen auch.

Es gibt ein ganz schmales Band wo sich ein Wechsel auf eine geringere Genauigkeit in einem Rahmen bewegt wo die Bildqualität zwar bereits nachlässt aber nicht so weit das es unspielbar wird. Nur müsste ein Treiber mit einem Schalter dieses Band auch noch erkennen.

Keel
2004-01-12, 17:22:21
Thx @ Demirug!
Original geschrieben von Demirug
Der Vertexshader rechnet immer mit FP32 selbst HT&L rechnete schon damit. Alles andere wäre dort auch nicht vertretbar.
Oh, hier liegt wohl ein kleines Missverständnis vor. Das was du schreibst, ist mir durchaus bewusst. Ich meinte in meinem Post den Schalter, der die PS- und VS-Versionen, nicht -rechengenauigkeiten forcen kann.

Demirug
2004-01-12, 17:27:11
Original geschrieben von Keel
Thx @ Demirug!

Oh, hier liegt wohl ein kleines Missverständnis vor. Das was du schreibst, ist mir durchaus bewusst. Ich meinte in meinem Post den Schalter, der die PS- und VS-Versionen, nicht -rechengenauigkeiten forcen kann.

Den gibt es bei nVidia AFAIK schon. Man kann den Treiber über einen Registryeintrag zwingen nur eine bestimmte Shaderversion zu melden. Damit würde man aber dann ja neue Effekte komplett deaktivieren (was ein Spiel auch erlauben sollte) und nicht innerhalb des Effekts dort wo es vertrettbar ist die Genauigkeit absenken.

Bei den VS lassen sich die höheren Versionen sowieso gut nutzen um die CPU zu entlasten.