Optimiert der Treiber?
-
Hallo,
ich habe in irgendeinem Forum mal gelesen, wenn ich OpenGL-Code (Fixed Function-Code) schreibe, dass der Grafikkartentreiber die Befehle optimieren kann und zur schnelleren Ausführung Shader erstellt.
Stimmt die Behauptung?
Gibt es da zuverlässige Quellen (links)...brauche das für meine Abschlussarbeit
danke schonmal
-
neue treiber erstellen schader, weil es keine fixed function mehr gibt in der hardware, das ist nicht zwingend eine treiberoptimierung, aber wohl eine hardware optimierung. fixed function TnL wuerde sonst brach liegen, oder die shader laegen brach und das waere suboptimal.
treiber optimieren normale aufrufe nicht, weil man davon ausgehen kann, dass wenn jemand es schnell haben will, er es schon selbst optimiert. in dem fall wuerde der treiber redundante arbeit leisten und es waere vom resultat eher langsammer (zumindestens auf cpu seite).
treiber optimieren shader im hintergrund, erstmal wird ein 08/15 shader erstellt damit du nicht ewigkeiten warten musst beim compilieren, aber dann kann es sein dass der treiber im hintergrund neue shader zusammensteckt. fuer die 100% leistung, wenn der compiler im treiber alles anwendet was da ist, kann er 100x laenger brauchen als fuer das binary mit 90% leistung.
der treiber optimiert normale aufrufe, wenn du displaylists verwendest, weil du nicht mehr optimieren kannst (du sagst ja nur "zeichen die ganze liste"), wenn da etwas nicht zu sehen ist, oder ein mesh besser cache optimiert sein koennte, oder auch wenn die erstellten shader zur emulation von TnL spezielle states reincompiliert bekommen, z.b. alpha test, kann das der treiber das machen (z.b. fuer jeden zeichenaufruf schon den passenden shader optimiert bereitstellen)
sorry, einzige referenz ist bei mir mein kopf
-
Eine Fixed Function Pipeline gibts schon seit ca. 10 Jahren nichtmehr. Die Grafikkarte versteht nur Shader. D.h. der Treiber implementiert die Fixed Function Pipeline auch über Shader.
-
dot schrieb:
Eine Fixed Function Pipeline gibts schon seit ca. 10 Jahren nichtmehr. Die Grafikkarte versteht nur Shader. D.h. der Treiber implementiert die Fixed Function Pipeline auch über Shader.
(wir beide meinem mit fixed functions uebrigens T&L, gibt ja noch viel mehr und das hat die hardware natuerlich, z.b. tesselator)
hardware mit T&L wurde seit geforce NV10 (ende 1999) bis die Geforce5(NV40) rauskam (anfang 2003) verkauft.
-
Okay, dann danke ich euch beiden erstmal für dien Infos!