"Funktionsweise einer Grafikkarte"

Rookian

Cadet 4th Year
Registriert
Aug. 2007
Beiträge
67
Hi!

Ich wollt unbedingt mal wissen wie DirectX (sagen wir DX7/nicht DX8 9 oder 10!) arbeiten. Ich stelle mir die ganze Zeit die Frage, wann und wie eigentlich in einem Spiel der Arbeitsspeicher genutzt wird, wenn die Grafikkarten doch eigentlich genug VRAM haben. Ich mein wenn ich mir ein 2D Spiel programmierer wird doch bestimmt nix im SystemRAM an Daten abgelegt, wenn ich den VRAM nutze oder oO? Wie sah das damals bei den Grafikapplikationen aus - inwiefern haben diese den Systemspeicher nutzen müssen? Welchen Vorteil hat es überhaupt seine Daten in den System RAM zu schmeißen, wenn dieser doch vieel langsamer ist als der VRAM?

Wenn man sich mal heutige Hardwarespezifikationen anschaut wird dies deutlich:
System RAM ca. 12GB/s (DDR3)
Video RAM ca. 100GB/s (8800Ultra)

Hier noch eine kleine Zusammenstellung von mir ;)
1998-2003: 13fache Grafikspeicherbandbreite
1998-2003: 5fache Systemspeicherbandbreite

1998-2003: 8fache Größe des Grafikspeichers
1998-2003: 8fache Größe des Systemspeichers

1998-2003: 4fache GPU Taktkung
1998-2003: 9fache CPU Taktung

Ich hoffe ihr könnt mich mit Wissen beglücken *g*

MfG

Rookian
 
Rookian schrieb:
Ich stelle mir die ganze Zeit die Frage, wann und wie eigentlich in einem Spiel der Arbeitsspeicher genutzt wird, wenn die Grafikkarten doch eigentlich genug VRAM haben. Ich mein wenn ich mir ein 2D Spiel programmier wird doch bestimmt nix im SystemRAM an Daten abgelegt, wenn ich den VRAM nutze oder oO?

Der Arbeitspeicher wird von der CPU angesprochen. Beim Spiel werden dort Daten, die für das Spiel wichtig sind gehalten. Viel Arbeitsspeicher geht dabei für die Spielewelt (auch map genannt) drauf. Ob das Spiel jetzt 2D oder 3D ist, spielt dafür keine Rolle. (Außer der Tatsache, dass eine 3D Spielewelt größer ist und somit mehr Arbeitsspeicher braucht.) Die CPU rendert ja nicht, sondern berechnet wie sich die Figuren durch die Spielewelt bewegen und dafür braucht die CPU den Arbeitsspeicher. Die berechneten Daten werden dann an die GPU weiter gegeben und die GPU rendert dann aus diesen Daten ein Bild. Die GPU selbst braucht für das Rendern wiederum ihr eigenen Speicher, der eben auf der Grafikkarte drauf ist. Wenn man kein Geld für diesen Speicher auf der Grafikkarte hat, kann man der Grafikkarte auch den Arbeitssepcher zuweisen. So das die Grafikkarte für das rendern auch noch den Arbeitsspeicher verwendet. Allerdings sinkt dann die Geschwindigkeit, weil die Grafikkarte im Gegensatz zur CPU auf hohe Bandbreite angewiesen ist, die der Arbeitsspeicher in der Form wie er aktuell verbaut ist, nicht liefern kann.

Rookian schrieb:
Wie sah das damals bei den Grafikapplikationen aus - inwiefern haben diese den Systemspeicher nutzen müssen? Welchen Vorteil hat es überhaupt seine Daten in den System RAM zu schmeißen, wenn dieser doch vieel langsamer ist als der VRAM?

Der einzige Vorteil ist, dass du dir Speicher auf der Grafikkarte sparen kannst. Hast dann allerdings ein Problem mit der Bandbreite und die Geschwindigkeit der GPU wird langsamer. Ist also nur etwas für Low-Cost.
 
Zuletzt bearbeitet:
Sapphire Forum
Zurück
Oben