Blöcke von Rasterisierungsoperationen. Merkmale der nationalen Modernisierung oder woran Sie nicht sparen sollten

Im ersten Teil unseres Grafikkarten-Guides für Einsteiger haben wir uns die wichtigsten Komponenten angesehen: Schnittstellen, Ausgänge, Kühlsystem, GPU und Videospeicher. Im zweiten Teil werden wir über die Funktionen und Technologien von Grafikkarten sprechen.

Grundkomponenten einer Grafikkarte:

  • Ausgänge;
  • Schnittstellen;
  • Kühlsystem;
  • Grafikprozessor;
  • Videospeicher.

Teil 2 (dieser Artikel): Grafiktechnologie:

  • Wörterbuch;
  • GPU-Architektur: Funktionen
    Scheitelpunkt-/Pixeleinheiten, Shader, Füllrate, Textur-/Rastereinheiten, Pipelines;
  • GPU-Architektur: Technologie
    Herstellungsprozess, GPU-Frequenz, lokaler Videospeicher (Größe, Bus, Typ, Frequenz), Lösungen mit mehreren Grafikkarten;
  • visuelle Merkmale
    DirectX, High Dynamic Range (HDR), FSAA, Texturfilterung, hochauflösende Texturen.

Glossar der grundlegenden grafischen Begriffe

Aktualisierungsrate

Wie in einem Kino oder auf einem Fernseher simuliert Ihr Computer Bewegungen auf einem Monitor, indem er eine Folge von Einzelbildern anzeigt. Die Bildwiederholfrequenz des Monitors gibt an, wie oft pro Sekunde das Bild auf dem Bildschirm aktualisiert wird. Beispielsweise entsprechen 75 Hz 75 Aktualisierungen pro Sekunde.

Wenn der Computer Frames schneller verarbeitet, als der Monitor ausgeben kann, können bei Spielen Probleme auftreten. Wenn der Computer beispielsweise 100 Bilder pro Sekunde berechnet und die Bildwiederholfrequenz des Monitors 75 Hz beträgt, kann der Monitor aufgrund von Überlagerungen während seiner Bildwiederholzeit nur einen Teil des Bildes anzeigen. Als Ergebnis treten visuelle Artefakte auf.

Als Lösung können Sie V-Sync (vertikale Synchronisierung) aktivieren. Es begrenzt die Anzahl der Frames, die ein Computer erzeugen kann, auf die Bildwiederholfrequenz des Monitors und verhindert so Artefakte. Wenn Sie V-Sync aktivieren, überschreitet die Anzahl der im Spiel gerenderten Frames niemals die Bildwiederholfrequenz. Das heißt, bei 75 Hz gibt der Computer nicht mehr als 75 Bilder pro Sekunde aus.

Das Wort „Pixel“ steht für „ Bild ture El ement" - ein Bildelement. Es ist ein winziger Punkt auf dem Display, der in einer bestimmten Farbe leuchten kann (in den meisten Fällen wird der Farbton durch eine Kombination aus drei Grundfarben angezeigt: Rot, Grün und Blau). Je nach Bildschirmauflösung ist 1024x768, dann sehen Sie eine Matrix von 1024 Pixel Breite und 768 Pixel Höhe Alle Pixel zusammen ergeben das Bild Das Bild auf dem Bildschirm wird 60 bis 120 Mal pro Sekunde aktualisiert, je nach Art des Displays und der Die vom Ausgang der Videokarte ausgegebenen Daten aktualisieren CRT-Monitore die Anzeige Zeile für Zeile, und flache LCD-Monitore können jedes Pixel einzeln aktualisieren.

Alle Objekte in der 3D-Szene bestehen aus Scheitelpunkten. Ein Scheitelpunkt ist ein Punkt im 3D-Raum mit Koordinaten x, y und z. Mehrere Scheitelpunkte können zu einem Polygon gruppiert werden: meistens ein Dreieck, aber komplexere Formen sind möglich. Das Polygon wird dann texturiert, damit das Objekt realistisch aussieht. Der in der Abbildung oben gezeigte 3D-Würfel hat acht Ecken. Komplexere Objekte haben gekrümmte Oberflächen, die tatsächlich aus sehr vielen Scheitelpunkten bestehen.

Eine Textur ist einfach ein 2D-Bild beliebiger Größe, das einem 3D-Objekt überlagert wird, um dessen Oberfläche zu simulieren. Zum Beispiel hat unser 3D-Würfel acht Ecken. Vor dem Textur-Mapping sieht es aus wie eine einfache Box. Aber wenn wir die Textur anwenden, wird die Box farbig.


Pixel-Shader ermöglichen der Grafikkarte beeindruckende Effekte, wie dieses Wasser in Elder Scrolls: Oblivion.

Heute gibt es zwei Arten von Shadern: Vertex und Pixel. Vertex-Shader können 3D-Objekte modifizieren oder transformieren. Mit Pixel-Shader-Programmen können Sie die Farben von Pixeln basierend auf einigen Daten ändern. Stellen Sie sich eine Lichtquelle in einer 3D-Szene vor, die die beleuchteten Objekte heller leuchten lässt und gleichzeitig Schatten auf andere Objekte wirft. All dies wird durch Ändern der Farbinformationen der Pixel implementiert.

Pixel-Shader werden verwendet, um komplexe Effekte in Ihren Lieblingsspielen zu erzeugen. Beispielsweise kann Shader-Code die Pixel rund um ein 3D-Schwert heller leuchten lassen. Ein anderer Shader kann alle Scheitelpunkte eines komplexen 3D-Objekts verarbeiten und eine Explosion simulieren. Spieleentwickler greifen zunehmend auf komplexe Shader-Programme zurück, um realistische Grafiken zu erstellen. Fast jedes moderne grafikreiche Spiel verwendet Shader.

Mit der Veröffentlichung der nächsten An(API, Application Programming Interface) Microsoft DirectX 10 wird ein dritter Shader-Typ namens Geometrie-Shader veröffentlicht. Mit ihrer Hilfe wird es je nach gewünschtem Ergebnis möglich sein, Objekte zu zerbrechen, zu modifizieren und sogar zu zerstören. Der dritte Shader-Typ kann genauso programmiert werden wie die ersten beiden, aber seine Rolle wird anders sein.

Füllrate

Sehr oft finden Sie auf der Box mit der Grafikkarte den Wert der Füllrate. Grundsätzlich gibt die Fillrate an, wie schnell die GPU Pixel rendern kann. Ältere Grafikkarten hatten eine dreieckige Füllrate. Aber heute gibt es zwei Arten von Füllraten: Pixel-Füllrate und Textur-Füllrate. Wie bereits erwähnt, entspricht die Pixelfüllrate der Pixelausgaberate. Sie errechnet sich aus der Anzahl der Rasteroperationen (ROP) multipliziert mit der Taktfrequenz.

ATi und nVidia berechnen Texturfüllraten unterschiedlich. Nvidia glaubt, dass die Geschwindigkeit durch Multiplizieren der Anzahl der Pixel-Pipelines mit der Taktrate erreicht wird. Und ATi multipliziert die Anzahl der Textureinheiten mit der Taktrate. Grundsätzlich sind beide Methoden richtig, da nVidia eine Textureinheit pro Pixel-Shader-Einheit (also eine pro Pixel-Pipeline) verwendet.

Lassen Sie uns mit diesen Definitionen weitermachen und die wichtigsten GPU-Funktionen diskutieren, was sie tun und warum sie so wichtig sind.

GPU-Architektur: Funktionen

Die Realitätsnähe von 3D-Grafiken hängt stark von der Leistung der Grafikkarte ab. Je mehr Pixel-Shader-Blöcke der Prozessor enthält und je höher die Frequenz, desto mehr Effekte können auf die 3D-Szene angewendet werden, um ihre visuelle Wahrnehmung zu verbessern.

Die GPU enthält viele verschiedene Funktionsblöcke. Anhand der Anzahl einiger Komponenten lässt sich abschätzen, wie leistungsfähig die GPU ist. Bevor wir fortfahren, schauen wir uns die wichtigsten Funktionsblöcke an.

Vertex-Prozessoren (Vertex-Shader-Einheiten)

Wie Pixel-Shader führen Vertex-Prozessoren Shader-Code aus, der Vertices berührt. Da Sie mit einem größeren Vertex-Budget komplexere 3D-Objekte erstellen können, ist die Leistung von Vertex-Prozessoren in 3D-Szenen mit komplexen oder vielen Objekten sehr wichtig. Vertex-Shader-Einheiten haben jedoch immer noch keinen so offensichtlichen Einfluss auf die Leistung wie Pixelprozessoren.

Pixelprozessoren (Pixel-Shader)

Ein Pixelprozessor ist eine Komponente eines Grafikchips, die für die Verarbeitung von Pixel-Shader-Programmen bestimmt ist. Diese Prozessoren führen Berechnungen nur in Bezug auf Pixel durch. Da Pixel Farbinformationen enthalten, können Pixel-Shader beeindruckende grafische Effekte erzielen. Beispielsweise werden die meisten Wassereffekte, die Sie in Spielen sehen, mit Pixel-Shadern erstellt. Typischerweise wird die Anzahl der Pixelprozessoren verwendet, um die Pixelleistung von Grafikkarten zu vergleichen. Wenn eine Karte mit acht Pixel-Shader-Einheiten und die andere mit 16 Einheiten ausgestattet ist, dann liegt es nahe, anzunehmen, dass eine Grafikkarte mit 16 Einheiten komplexe Pixelprogramme schneller verarbeitet. Die Taktrate sollte ebenfalls berücksichtigt werden, aber heute ist die Verdoppelung der Anzahl der Pixelprozessoren in Bezug auf den Stromverbrauch effizienter als die Verdoppelung der Frequenz eines Grafikchips.

Einheitliche Shader

Unified (Einzel-)Shader sind noch nicht in die PC-Welt gekommen, aber der kommende DirectX-10-Standard setzt auf eine ähnliche Architektur. Das heißt, die Codestruktur von Vertex-, Geometrie- und Pixelprogrammen ist dieselbe, obwohl Shader unterschiedliche Aufgaben ausführen. Die neue Spezifikation kann auf der Xbox 360 eingesehen werden, wo die GPU von ATi speziell für Microsoft entwickelt wurde. Man darf gespannt sein, welches Potenzial das neue DirectX 10 mit sich bringt.

Textur-Mapping-Einheiten (TMUs)

Texturen sollten ausgewählt und gefiltert werden. Diese Arbeit wird von den Textur-Mapping-Einheiten erledigt, die in Verbindung mit den Pixel- und Vertex-Shader-Einheiten arbeiten. Die Aufgabe der TMU besteht darin, Texturoperationen auf Pixel anzuwenden. Die Anzahl der Textureinheiten in einer GPU wird oft verwendet, um die Texturleistung von Grafikkarten zu vergleichen. Es ist durchaus anzunehmen, dass eine Grafikkarte mit mehr TMUs eine bessere Texturleistung liefert.

Raster Operator Unit (ROP)

RIPs sind für das Schreiben von Pixeldaten in den Speicher verantwortlich. Die Rate, mit der diese Operation durchgeführt wird, ist die Füllrate. In den frühen Tagen der 3D-Beschleuniger waren ROPs und Füllraten sehr wichtige Eigenschaften von Grafikkarten. Heute ist die Arbeit von ROP immer noch wichtig, aber die Leistung der Grafikkarte wird nicht mehr wie früher durch diese Blöcke begrenzt. Daher wird die Leistung (und Anzahl) des ROP selten verwendet, um die Geschwindigkeit einer Grafikkarte zu bewerten.

Förderer

Pipelines werden verwendet, um die Architektur von Grafikkarten zu beschreiben und geben eine sehr visuelle Darstellung der Leistung einer GPU.

Der Förderer ist kein strenger Fachbegriff. Die GPU verwendet verschiedene Pipelines, die unterschiedliche Funktionen ausführen. Historisch wurde eine Pipeline als Pixelprozessor verstanden, der mit einer eigenen Texture Mapping Unit (TMU) verbunden war. Beispielsweise verwendet die Radeon 9700-Grafikkarte acht Pixelprozessoren, von denen jeder mit seiner eigenen TMU verbunden ist, sodass davon ausgegangen wird, dass die Karte über acht Pipelines verfügt.

Aber es ist sehr schwierig, moderne Prozessoren durch die Anzahl der Pipelines zu beschreiben. Im Vergleich zu früheren Designs verwenden die neuen Prozessoren eine modulare, fragmentierte Struktur. Als Innovator auf diesem Gebiet kann ATi gelten, das mit der X1000-Grafikkartenlinie auf einen modularen Aufbau umgestellt hat, der es ermöglichte, durch interne Optimierung eine Leistungssteigerung zu erreichen. Einige CPU-Blöcke werden mehr verwendet als andere, und um die Leistung der GPU zu verbessern, hat ATi versucht, einen Kompromiss zwischen der Anzahl der benötigten Blöcke und der Die-Fläche zu finden (sie kann nicht sehr stark erhöht werden). In dieser Architektur hat der Begriff „Pixelpipeline“ bereits seine Bedeutung verloren, da die Pixelprozessoren nicht mehr an eigene TMUs angeschlossen sind. Beispielsweise verfügt die ATi Radeon X1600 GPU über 12 Pixel-Shader und insgesamt vier TMUs. Daher kann man nicht sagen, dass es in der Architektur dieses Prozessors 12 Pixel-Pipelines gibt, genauso wenig wie man sagen kann, dass es nur vier davon gibt. Traditionell werden jedoch immer noch Pixel-Pipelines erwähnt.

Unter Berücksichtigung dieser Annahmen wird die Anzahl der Pixel-Pipelines in einer GPU häufig zum Vergleichen von Grafikkarten verwendet (mit Ausnahme der ATi X1x00-Reihe). Wenn wir beispielsweise Grafikkarten mit 24 und 16 Pipelines nehmen, ist es durchaus vernünftig anzunehmen, dass eine Karte mit 24 Pipelines schneller ist.

GPU-Architektur: Technologie

Verfahrenstechnik

Dieser Begriff bezieht sich auf die Größe eines Elements (Transistors) des Chips und die Genauigkeit des Herstellungsprozesses. Die Verbesserung der technischen Prozesse ermöglicht es, Elemente mit kleineren Abmessungen zu erhalten. Beispielsweise erzeugt der 0,18-µm-Prozess größere Merkmale als der 0,13-µm-Prozess, daher ist er nicht so effizient. Kleinere Transistoren arbeiten mit niedrigerer Spannung. Eine Abnahme der Spannung führt wiederum zu einer Abnahme des Wärmewiderstands, wodurch die erzeugte Wärmemenge verringert wird. Durch die Verbesserung der Prozesstechnologie können Sie den Abstand zwischen den Funktionsblöcken des Chips verringern und die Datenübertragung dauert weniger Zeit. Kürzere Entfernungen, niedrigere Spannungen und andere Verbesserungen ermöglichen höhere Taktraten.

Etwas erschwert wird das Verständnis, dass heute sowohl Mikrometer (µm) als auch Nanometer (nm) zur Bezeichnung der Verfahrenstechnik verwendet werden. Eigentlich ist alles ganz einfach: 1 Nanometer entspricht 0,001 Mikrometer, 0,09-Mikrometer- und 90-nm-Fertigungsverfahren sind also ein und dasselbe. Wie oben erwähnt, ermöglicht eine kleinere Prozesstechnologie höhere Taktraten. Wenn wir beispielsweise Grafikkarten mit 0,18-Mikron- und 0,09-Mikron-Chips (90 nm) vergleichen, dann ist es durchaus vernünftig, von einer 90-nm-Karte eine höhere Frequenz zu erwarten.

GPU-Taktrate

Die GPU-Taktgeschwindigkeit wird in Megahertz (MHz) gemessen, was Millionen von Zyklen pro Sekunde entspricht.

Die Taktrate wirkt sich direkt auf die Leistung der GPU aus. Je höher sie ist, desto mehr Arbeit kann pro Sekunde verrichtet werden. Nehmen wir als erstes Beispiel die nVidia GeForce 6600 und 6600 GT Grafikkarten: Der 6600 GT Grafikprozessor läuft mit 500 MHz, während die normale 6600 Karte mit 400 MHz läuft. Da die Prozessoren technisch identisch sind, führt eine Erhöhung der Taktrate um 20 % beim 6600 GT zu einer besseren Leistung.

Aber die Taktrate ist nicht alles. Beachten Sie, dass die Leistung stark von der Architektur beeinflusst wird. Nehmen wir als zweites Beispiel die Grafikkarten GeForce 6600 GT und GeForce 6800 GT. Die GPU-Frequenz des 6600 GT beträgt 500 MHz, aber der 6800 GT läuft nur mit 350 MHz. Lassen Sie uns nun berücksichtigen, dass der 6800 GT 16 Pixel-Pipelines verwendet, während der 6600 GT nur acht hat. Daher liefert ein 6800 GT mit 16 Pipelines bei 350 MHz ungefähr die gleiche Leistung wie ein Prozessor mit acht Pipelines und der doppelten Taktrate (700 MHz). Vor diesem Hintergrund kann die Taktrate zum Vergleich der Leistung verwendet werden.

Lokaler Videospeicher

Der Grafikkartenspeicher hat einen großen Einfluss auf die Leistung. Unterschiedliche Speichereinstellungen wirken sich jedoch unterschiedlich aus.

Videospeicher

Die Größe des Videospeichers kann wahrscheinlich als der am meisten überschätzte Parameter einer Grafikkarte bezeichnet werden. Unerfahrene Verbraucher nutzen die Größe des Videospeichers oft, um verschiedene Karten miteinander zu vergleichen, aber in Wirklichkeit hat die Menge im Vergleich zu Parametern wie Speicherbusfrequenz und Schnittstelle (Busbreite) wenig Einfluss auf die Leistung.

In den meisten Fällen ist eine Karte mit 128 MB Videospeicher fast genauso leistungsfähig wie eine Karte mit 256 MB. Natürlich gibt es Situationen, in denen mehr Arbeitsspeicher zu einer besseren Leistung führt, aber denken Sie daran, dass mehr Arbeitsspeicher nicht automatisch die Geschwindigkeit in Spielen erhöht.

Wo Lautstärke nützlich ist, ist in Spielen mit hochauflösenden Texturen. Spieleentwickler fügen dem Spiel mehrere Sätze von Texturen hinzu. Und je mehr Speicher auf der Grafikkarte vorhanden ist, desto höher kann die Auflösung der geladenen Texturen sein. Hochauflösende Texturen geben dem Spiel eine höhere Definition und Details. Daher ist es durchaus sinnvoll, eine Karte mit viel Speicher zu nehmen, wenn alle anderen Kriterien gleich sind. Denken Sie noch einmal daran, dass die Breite des Speicherbusses und seine Frequenz einen viel stärkeren Einfluss auf die Leistung haben als die Größe des physischen Speichers auf der Karte.

Speicherbusbreite

Die Speicherbusbreite ist einer der wichtigsten Aspekte der Speicherleistung. Moderne Busse haben eine Breite von 64 bis 256 Bit und in einigen Fällen sogar 512 Bit. Je breiter der Speicherbus ist, desto mehr Informationen kann er pro Takt übertragen. Und das wirkt sich direkt auf die Leistung aus. Wenn wir zum Beispiel zwei Busse mit gleichen Frequenzen nehmen, dann überträgt ein 128-Bit-Bus theoretisch doppelt so viele Daten pro Takt wie ein 64-Bit-Bus. Ein 256-Bit-Bus ist doppelt so groß.

Eine höhere Busbandbreite (ausgedrückt in Bits oder Bytes pro Sekunde, 1 Byte = 8 Bits) ergibt eine bessere Speicherleistung. Deshalb ist der Speicherbus viel wichtiger als seine Größe. Bei gleichen Frequenzen arbeitet ein 64-Bit-Speicherbus mit nur 25 % eines 256-Bit-Busses!

Nehmen wir das folgende Beispiel. Eine Grafikkarte mit 128 MB Videospeicher, aber mit einem 256-Bit-Bus bietet eine viel bessere Speicherleistung als ein 512-MB-Modell mit einem 64-Bit-Bus. Es ist wichtig zu beachten, dass die Hersteller bei einigen Karten der ATi X1x00-Serie die Spezifikationen des internen Speicherbusses angeben, uns jedoch die Parameter des externen Busses interessieren. Beispielsweise ist der interne Ringbus des X1600 256 Bit breit, der externe jedoch nur 128 Bit. Und in Wirklichkeit arbeitet der Speicherbus mit 128-Bit-Performance.

Speichertypen

Arbeitsspeicher lassen sich in zwei Hauptkategorien einteilen: SDR (Single Data Transfer) und DDR (Double Data Transfer), bei denen Daten pro Takt doppelt so schnell übertragen werden. Heute ist die SDR-Einzelübertragungstechnologie veraltet. Da DDR-Speicher Daten doppelt so schnell überträgt wie SDR, ist es wichtig zu bedenken, dass Grafikkarten mit DDR-Speicher häufig die doppelte Frequenz angeben, nicht die physische. Wenn beispielsweise DDR-Speicher mit 1000 MHz aufgeführt ist, ist dies die effektive Frequenz, mit der normaler SDR-Speicher betrieben werden muss, um die gleiche Bandbreite bereitzustellen. Tatsächlich beträgt die physikalische Frequenz jedoch 500 MHz.

Aus diesem Grund sind viele Leute überrascht, wenn ihr Grafikkartenspeicher mit 1200 MHz DDR aufgeführt wird, während Dienstprogramme 600 MHz angeben. Sie müssen sich also daran gewöhnen. DDR2- und GDDR3/GDDR4-Speicher arbeiten nach dem gleichen Prinzip, also mit doppelter Datenübertragung. Der Unterschied zwischen DDR-, DDR2-, GDDR3- und GDDR4-Speicher liegt in der Fertigungstechnik und einigen Details. DDR2 kann mit höheren Frequenzen als DDR-Speicher arbeiten, und DDR3 kann mit noch höheren Frequenzen als DDR2 arbeiten.

Speicherbusfrequenz

Wie ein Prozessor läuft der Speicher (oder genauer gesagt der Speicherbus) mit bestimmten Taktraten, gemessen in Megahertz. Hier wirkt sich eine Erhöhung der Taktraten direkt auf die Speicherleistung aus. Und die Frequenz des Speicherbusses ist einer der Parameter, die verwendet werden, um die Leistung von Grafikkarten zu vergleichen. Wenn beispielsweise alle anderen Eigenschaften (Speicherbusbreite usw.) gleich sind, dann ist es ziemlich logisch zu sagen, dass eine Grafikkarte mit 700-MHz-Speicher schneller ist als eine mit 500 MHz.

Auch hier ist die Taktrate nicht alles. 700-MHz-Speicher mit einem 64-Bit-Bus ist langsamer als 400-MHz-Speicher mit einem 128-Bit-Bus. Die Leistung von 400-MHz-Speicher auf einem 128-Bit-Bus entspricht ungefähr der von 800-MHz-Speicher auf einem 64-Bit-Bus. Es sollte auch daran erinnert werden, dass GPU- und Speicherfrequenzen völlig unterschiedliche Parameter sind und normalerweise unterschiedlich sind.

Grafikkartenschnittstelle

Alle Daten, die zwischen der Videokarte und dem Prozessor übertragen werden, passieren die Videokartenschnittstelle. Heutzutage werden drei Arten von Schnittstellen für Grafikkarten verwendet: PCI, AGP und PCI Express. Sie unterscheiden sich in Bandbreite und anderen Eigenschaften. Es ist klar, je höher die Bandbreite, desto höher der Wechselkurs. Allerdings können nur die modernsten Karten eine hohe Bandbreite nutzen, und selbst dann nur teilweise. Irgendwann war die Geschwindigkeit der Schnittstelle kein „Flaschenhals“, sie reicht heute einfach aus.

Der langsamste Bus, für den Grafikkarten hergestellt wurden, ist PCI (Peripheral Components Interconnect). Ohne natürlich auf die Geschichte einzugehen. PCI hat die Leistung von Grafikkarten wirklich verschlechtert, sodass sie auf die AGP-Schnittstelle (Accelerated Graphics Port) umgestiegen sind. Aber selbst die AGP 1.0- und 2x-Spezifikationen begrenzten die Leistung. Als der Standard die Geschwindigkeit auf AGP 4x erhöhte, näherten wir uns der praktischen Grenze der Bandbreite, die Grafikkarten verwenden können. Die AGP 8x-Spezifikation verdoppelte die Bandbreite gegenüber AGP 4x noch einmal (2,16 GB/s), eine spürbare Steigerung der Grafikleistung konnten wir jedoch nicht feststellen.

Der neueste und schnellste Bus ist PCI Express. Neuere Grafikkarten verwenden typischerweise die PCI-Express-x16-Schnittstelle, die 16 PCI-Express-Lanes für eine Gesamtbandbreite von 4 GB/s (in eine Richtung) kombiniert. Dies ist der doppelte Durchsatz von AGP 8x. Der PCI-Express-Bus bietet die genannte Bandbreite für beide Richtungen (Datenübertragung von und zur Grafikkarte). Aber die Geschwindigkeit des AGP 8x-Standards war bereits ausreichend, sodass wir keine Situation gesehen haben, in der der Wechsel zu PCI Express im Vergleich zu AGP 8x einen Leistungsschub gebracht hat (wenn andere Hardwareparameter gleich sind). Beispielsweise funktioniert die AGP-Version der GeForce 6800 Ultra identisch mit der 6800 Ultra für PCI Express.

Heute ist es am besten, eine Karte mit PCI Express-Schnittstelle zu kaufen, sie wird noch einige Jahre auf dem Markt bleiben. Die produktivsten Karten werden nicht mehr mit der AGP 8x-Schnittstelle hergestellt, und PCI-Express-Lösungen sind in der Regel bereits leichter zu finden als AGP-Analoga und sie sind billiger.

Multi-GPU-Lösungen

Die Verwendung mehrerer Grafikkarten zur Steigerung der Grafikleistung ist keine neue Idee. In den Anfängen der 3D-Grafik kam 3dfx mit zwei parallel laufenden Grafikkarten auf den Markt. Aber mit dem Verschwinden von 3dfx geriet die Technologie für die Zusammenarbeit mehrerer Consumer-Videokarten in Vergessenheit, obwohl ATi seit der Veröffentlichung der Radeon 9700 ähnliche Systeme für professionelle Simulatoren herstellt. Vor ein paar Jahren kehrte die Technologie zu den zurück Markt: mit dem Aufkommen von Lösungen nVidia-SLI und wenig später ATi-Kreuzfeuer .

Die gemeinsame Nutzung mehrerer Grafikkarten bietet genügend Leistung, um das Spiel mit hohen Qualitätseinstellungen in High Definition auszuführen. Aber sich für das eine oder andere zu entscheiden, ist nicht einfach.

Beginnen wir damit, dass Lösungen, die auf mehreren Grafikkarten basieren, viel Energie benötigen, daher muss die Stromversorgung stark genug sein. All diese Wärme muss von der Grafikkarte abgeführt werden, daher müssen Sie auf das PC-Gehäuse und die Kühlung achten, damit das System nicht überhitzt.

Denken Sie auch daran, dass SLI/CrossFire ein geeignetes Motherboard (entweder für die eine oder andere Technologie) erfordert, das normalerweise teurer ist als Standardmodelle. Die nVidia SLI-Konfiguration funktioniert nur auf bestimmten nForce4-Boards, und ATi CrossFire-Karten funktionieren nur auf Motherboards mit einem CrossFire-Chipsatz oder einigen Intel-Modellen. Erschwerend kommt hinzu, dass einige CrossFire-Konfigurationen eine spezielle Karte erfordern: die CrossFire Edition. Nach der Veröffentlichung von CrossFire erlaubte ATi für einige Grafikkartenmodelle die Einbeziehung der Technologie der Zusammenarbeit über den PCI Express-Bus, und mit der Veröffentlichung neuer Treiberversionen steigt die Anzahl möglicher Kombinationen. Dennoch bietet Hardware-CrossFire mit der entsprechenden CrossFire Edition-Karte eine bessere Leistung. Aber CrossFire Edition-Karten sind auch teurer als normale Modelle. Derzeit können Sie den CrossFire-Softwaremodus (ohne CrossFire Edition-Karte) auf Radeon X1300-, X1600- und X1800 GTO-Grafikkarten aktivieren.

Auch andere Faktoren sollten berücksichtigt werden. Zwei zusammenarbeitende Grafikkarten sorgen zwar für einen Leistungsschub, aber bei weitem nicht auf das Doppelte. Aber Sie zahlen doppelt so viel Geld. Meistens beträgt die Produktivitätssteigerung 20-60%. Und in einigen Fällen gibt es aufgrund zusätzlicher Rechenkosten für den Abgleich überhaupt keinen Gewinn. Aus diesem Grund rechnen sich Konfigurationen mit mehreren Karten bei billigen Modellen wahrscheinlich nicht, da eine teurere Grafikkarte in der Regel immer ein Paar billiger Karten übertrifft. Generell ist es für die meisten Verbraucher nicht sinnvoll, eine SLI/CrossFire-Lösung zu nehmen. Wenn Sie jedoch alle Qualitätsverbesserungsoptionen aktivieren oder mit extremen Auflösungen wie 2560 x 1600 spielen möchten, wenn Sie mehr als 4 Millionen Pixel pro Frame berechnen müssen, sind zwei oder vier gepaarte Grafikkarten unverzichtbar.

Visuelle Merkmale

Zusätzlich zu den reinen Hardwarespezifikationen können sich verschiedene Generationen und Modelle von GPUs im Funktionsumfang unterscheiden. Beispielsweise wird oft gesagt, dass Karten der Generation ATi Radeon X800 XT mit Shader Model 2.0b (SM) kompatibel sind, während die nVidia GeForce 6800 Ultra mit SM 3.0 kompatibel ist, obwohl ihre Hardwarespezifikationen nahe beieinander liegen (16 Pipelines). . Daher entscheiden sich viele Verbraucher für die eine oder andere Lösung, ohne überhaupt zu wissen, was dieser Unterschied bedeutet. Nun, lassen Sie uns über visuelle Funktionen sprechen und was sie für den Endbenutzer bedeuten.

Diese Namen werden am häufigsten in Streitigkeiten verwendet, aber nur wenige wissen, was sie wirklich bedeuten. Beginnen wir zum Verständnis mit der Geschichte der Grafik-APIs. DirectX und OpenGL sind Grafik-APIs, dh Application Programming Interfaces – offene Codestandards, die für jedermann verfügbar sind.

Vor dem Aufkommen von Grafik-APIs hatte jeder GPU-Hersteller seinen eigenen Mechanismus zur Kommunikation mit Spielen. Entwickler mussten für jede GPU, die sie unterstützen wollten, separaten Code schreiben. Ein sehr teurer und ineffizienter Ansatz. Um dieses Problem zu lösen, wurden APIs für 3D-Grafiken entwickelt, damit Entwickler Code für eine bestimmte API schreiben und nicht für diese oder jene Grafikkarte. Danach fielen Kompatibilitätsprobleme auf die Schultern der Grafikkartenhersteller, die sicherstellen mussten, dass die Treiber mit der API kompatibel waren.

Als einzige Komplikation bleibt, dass heute zwei unterschiedliche APIs verwendet werden, nämlich Microsoft DirectX und OpenGL, wobei GL für Graphics Library (Grafikbibliothek) steht. Da die DirectX-API heutzutage in Spielen beliebter ist, werden wir uns darauf konzentrieren. Und dieser Standard beeinflusste die Entwicklung von Spielen stärker.

DirectX ist eine Schöpfung von Microsoft. Tatsächlich enthält DirectX mehrere APIs, von denen nur eine für 3D-Grafiken verwendet wird. DirectX enthält APIs für Sound, Musik, Eingabegeräte und mehr. Die Direct3D-API ist für 3D-Grafiken in DirectX verantwortlich. Wenn sie über Grafikkarten sprechen, meinen sie genau das, daher sind die Konzepte von DirectX und Direct3D in dieser Hinsicht austauschbar.

DirectX wird regelmäßig aktualisiert, wenn die Grafiktechnologie Fortschritte macht und Spieleentwickler neue Spielprogrammiertechniken einführen. Da die Popularität von DirectX schnell zugenommen hat, haben GPU-Hersteller damit begonnen, neue Produktversionen an die Fähigkeiten von DirectX anzupassen. Aus diesem Grund sind Grafikkarten oft an die Hardwareunterstützung der einen oder anderen DirectX-Generation (DirectX 8, 9.0 oder 9.0c) gebunden.

Um die Sache noch komplizierter zu machen, können sich Teile der Direct3D-API im Laufe der Zeit ändern, ohne dass Generationen von DirectX geändert werden müssen. Beispielsweise gibt die DirectX 9.0-Spezifikation die Unterstützung für Pixel Shader 2.0 an. Das DirectX 9.0c-Update enthält jedoch Pixel Shader 3.0. Obwohl die Karten in der DirectX 9-Klasse angesiedelt sind, unterstützen sie möglicherweise unterschiedliche Funktionssätze. Beispielsweise unterstützt die Radeon 9700 das Shader Model 2.0 und die Radeon X1800 unterstützt das Shader Model 3.0, obwohl beide Karten als DirectX 9-Generation klassifiziert werden können.

Denken Sie daran, dass Entwickler beim Erstellen neuer Spiele die Besitzer alter Computer und Grafikkarten berücksichtigen, denn wenn Sie dieses Benutzersegment ignorieren, werden die Verkäufe geringer sein. Aus diesem Grund sind in Spiele mehrere Codepfade eingebaut. Ein Spiel der DirectX 9-Klasse hat aus Kompatibilitätsgründen höchstwahrscheinlich einen DirectX 8-Pfad und sogar einen DirectX 7-Pfad.Wenn der alte Pfad gewählt wird, verschwinden normalerweise einige virtuelle Effekte, die sich auf neuen Grafikkarten befinden, im Spiel. Aber immerhin kann man auch auf der alten Hardware spielen.

Viele neue Spiele erfordern die Installation der neuesten Version von DirectX, auch wenn die Grafikkarte einer früheren Generation angehört. Das heißt, ein neues Spiel, das den DirectX 8-Pfad verwendet, erfordert immer noch die Installation der neuesten Version von DirectX 9 auf einer Grafikkarte der DirectX 8-Klasse.

Was sind die Unterschiede zwischen den verschiedenen Versionen der Direct3D-API in DirectX? Die frühen Versionen von DirectX – 3, 5, 6 und 7 – waren in Bezug auf die Direct3D-APIs relativ einfach. Entwickler konnten visuelle Effekte aus einer Liste auswählen und dann ihre Arbeit im Spiel überprüfen. Der nächste große Schritt in der Grafikprogrammierung war DirectX 8. Es führte die Möglichkeit ein, die Grafikkarte mit Shadern zu programmieren, sodass Entwickler zum ersten Mal die Freiheit hatten, Effekte so zu programmieren, wie sie es wollten. Von DirectX 8 unterstützte Pixel Shader-Versionen 1.0 bis 1.3 und Vertex Shader 1.0. DirectX 8.1, eine aktualisierte Version von DirectX 8, erhielt Pixel Shader 1.4 und Vertex Shader 1.1.

In DirectX 9 können Sie noch komplexere Shader-Programme erstellen. DirectX 9 unterstützt Pixel Shader 2.0 und Vertex Shader 2.0. DirectX 9c, eine aktualisierte Version von DirectX 9, enthielt die Pixel Shader 3.0-Spezifikation.

DirectX 10, eine kommende Version der API, wird die neue Version von Windows Vista begleiten. DirectX 10 kann nicht unter Windows XP installiert werden.

HDR steht für „High Dynamic Range“, hoher Dynamikumfang. Ein Spiel mit HDR-Beleuchtung kann ein viel realistischeres Bild liefern als ein Spiel ohne HDR-Beleuchtung, und nicht alle Grafikkarten unterstützen HDR-Beleuchtung.

Vor dem Aufkommen von Grafikkarten der DirectX-9-Klasse waren GPUs durch die Genauigkeit ihrer Beleuchtungsberechnungen stark eingeschränkt. Bisher konnte die Beleuchtung nur mit 256 (8 Bit) internen Pegeln berechnet werden.

Als Grafikkarten der DirectX 9-Klasse auftauchten, waren sie in der Lage, Beleuchtung mit hoher Genauigkeit zu erzeugen – volle 24 Bit oder 16,7 Millionen Stufen.

Mit 16,7 Millionen Levels und nachdem der nächste Schritt in der Grafikkartenleistung der DirectX 9/Shader Model 2.0-Klasse gemacht wurde, ist HDR-Beleuchtung auch auf Computern möglich. Dies ist eine ziemlich komplexe Technologie, und Sie müssen sie dynamisch beobachten. Vereinfacht gesagt erhöht die HDR-Beleuchtung den Kontrast (dunkle Farbtöne erscheinen dunkler, helle Farbtöne heller) und erhöht gleichzeitig die Menge an Lichtdetails in dunklen und hellen Bereichen. Ein Spiel mit HDR-Beleuchtung fühlt sich lebendiger und realistischer an als ohne.

GPUs, die der neuesten Pixel Shader 3.0-Spezifikation entsprechen, ermöglichen Beleuchtungsberechnungen mit höherer 32-Bit-Präzision sowie Gleitkommamischungen. Daher können Grafikkarten der SM 3.0-Klasse die spezielle HDR-Beleuchtungsmethode von OpenEXR unterstützen, die speziell für die Filmindustrie entwickelt wurde.

Einige Spiele, die nur HDR-Beleuchtung mit der OpenEXR-Methode unterstützen, laufen nicht mit HDR-Beleuchtung auf Shader Model 2.0-Grafikkarten. Spiele, die nicht auf die OpenEXR-Methode angewiesen sind, funktionieren jedoch auf jeder Grafikkarte mit DirectX 9. Oblivion verwendet beispielsweise die OpenEXR-HDR-Methode und erlaubt die Aktivierung von HDR-Beleuchtung nur auf den neuesten Grafikkarten, die die Shader Model 3.0-Spezifikation unterstützen. Zum Beispiel nVidia GeForce 6800 oder ATi Radeon X1800. Bei Spielen, die die Half-Life 2 3D-Engine verwenden, wie Counter-Strike: Source und das kommende Half-Life 2: Aftermath, können Sie HDR-Rendering auf älteren DirectX 9-Grafikkarten aktivieren, die nur Pixel Shader 2.0 unterstützen. Beispiele sind die GeForce-5-Reihe oder die ATi Radeon 9500.

Denken Sie schließlich daran, dass alle Formen des HDR-Renderings ernsthafte Rechenleistung erfordern und selbst die leistungsstärksten GPUs in die Knie zwingen können. Wenn Sie die neuesten Spiele mit HDR-Beleuchtung spielen möchten, ist eine leistungsstarke Grafik ein Muss.

Vollbild-Anti-Aliasing (abgekürzt als AA) ermöglicht es Ihnen, die charakteristischen "Leitern" an den Rändern von Polygonen zu beseitigen. Beachten Sie jedoch, dass das Vollbild-Anti-Aliasing viele Rechenressourcen verbraucht, was zu einem Rückgang der Bildrate führt.

Anti-Aliasing hängt stark von der Leistung des Videospeichers ab, sodass eine schnelle Videokarte mit schnellem Speicher in der Lage ist, Vollbild-Anti-Aliasing mit geringeren Auswirkungen auf die Leistung zu berechnen als eine kostengünstige Videokarte. Anti-Aliasing kann in verschiedenen Modi aktiviert werden. Beispielsweise liefert 4x Anti-Aliasing ein besseres Bild als 2x Anti-Aliasing, aber es ist ein großer Leistungseinbruch. Während 2x Anti-Aliasing die horizontale und vertikale Auflösung verdoppelt, vervierfacht sie der 4x-Modus.

Alle 3D-Objekte im Spiel sind texturiert, und je größer der Winkel der angezeigten Oberfläche ist, desto verzerrter sieht die Textur aus. Um diesen Effekt zu eliminieren, verwenden GPUs Texturfilterung.

Die erste Filtermethode hieß bilinear und ergab charakteristische Streifen, die für das Auge nicht sehr angenehm waren. Die Situation verbesserte sich mit der Einführung der trilinearen Filterung. Beide Optionen auf modernen Grafikkarten funktionieren praktisch ohne Leistungseinbußen.

Anisotrope Filterung (AF) ist bei weitem die beste Methode, um Texturen zu filtern. Ähnlich wie bei FSAA kann die anisotrope Filterung auf verschiedenen Ebenen eingeschaltet werden. Beispielsweise ergibt 8x AF eine bessere Filterqualität als 4x AF. Wie FSAA erfordert auch die anisotrope Filterung eine gewisse Verarbeitungsleistung, die mit zunehmendem AF-Pegel ansteigt.

Alle 3D-Spiele werden nach bestimmten Spezifikationen gebaut, und eine dieser Anforderungen bestimmt den Texturspeicher, den das Spiel benötigt. Alle nötigen Texturen müssen während des Spiels in den Speicher der Grafikkarte passen, sonst sinkt die Performance dramatisch, da der Zugriff auf die Textur im RAM mit erheblicher Verzögerung einhergeht, ganz zu schweigen von der Auslagerungsdatei auf der Festplatte. Wenn also ein Spieleentwickler mit 128 MB VRAM als Mindestanforderung rechnet, dann sollte das aktive Texturset zu keinem Zeitpunkt 128 MB überschreiten.

Moderne Spiele haben mehrere Textursätze, sodass das Spiel sowohl auf älteren Grafikkarten mit weniger VRAM als auch auf neueren Karten mit mehr VRAM reibungslos läuft. Beispielsweise kann ein Spiel drei Textursätze enthalten: für 128 MB, 256 MB und 512 MB. Es gibt heute nur sehr wenige Spiele, die 512 MB Videospeicher unterstützen, aber sie sind immer noch der objektivste Grund, eine Grafikkarte mit dieser Speicherkapazität zu kaufen. Obwohl die Erhöhung des Arbeitsspeichers kaum bis gar keine Auswirkungen auf die Leistung hat, erhalten Sie eine Verbesserung der visuellen Qualität, wenn das Spiel das entsprechende Texturset unterstützt.

Moderne Grafikprozessoren enthalten viele Funktionsblöcke, deren Anzahl und Eigenschaften die endgültige Rendering-Geschwindigkeit bestimmen, was sich auf den Spielkomfort auswirkt. Anhand der relativen Anzahl dieser Blöcke in verschiedenen Videochips können Sie ungefähr abschätzen, wie schnell eine bestimmte GPU ist. Videochips haben viele Eigenschaften, in diesem Abschnitt werden wir nur die wichtigsten davon betrachten.

Taktfrequenz des Videochips

Die Arbeitsfrequenz einer GPU wird üblicherweise in Megahertz gemessen, also Millionen Zyklen pro Sekunde. Diese Eigenschaft wirkt sich direkt auf die Leistung des Videochips aus - je höher sie ist, desto mehr Arbeit kann die GPU pro Zeiteinheit leisten und eine größere Anzahl von Scheitelpunkten und Pixeln verarbeiten. Ein Beispiel aus dem wirklichen Leben: Die Frequenz des auf dem Radeon HD 6670-Board installierten Videochips beträgt 840 MHz, und der exakt gleiche Chip im Radeon HD 6570-Modell arbeitet mit einer Frequenz von 650 MHz. Dementsprechend unterscheiden sich auch alle Hauptleistungsmerkmale. Aber nicht nur die Arbeitsfrequenz des Chips bestimmt die Leistung, seine Geschwindigkeit wird auch stark von der Grafikarchitektur selbst beeinflusst: dem Design und der Anzahl der Ausführungseinheiten, deren Eigenschaften usw.

In einigen Fällen weicht die Taktfrequenz einzelner GPU-Blöcke von der Frequenz des restlichen Chips ab. Das heißt, verschiedene Teile der GPU arbeiten mit unterschiedlichen Frequenzen, und dies geschieht, um die Effizienz zu steigern, da einige Einheiten mit höheren Frequenzen arbeiten können, andere nicht. Die meisten NVIDIA GeForce-Grafikkarten sind mit solchen GPUs ausgestattet. Nehmen wir aus jüngsten Beispielen einen Videochip im GTX 580-Modell, von dem die meisten mit einer Frequenz von 772 MHz arbeiten, und die universellen Recheneinheiten des Chips haben eine doppelte Frequenz - 1544 MHz.

Füllrate (Füllrate)

Die Füllrate zeigt, wie schnell der Videochip Pixel zeichnen kann. Es gibt zwei Arten von Füllraten: Pixelfüllrate und Texelrate. Die Pixelfüllrate zeigt die Geschwindigkeit, mit der Pixel auf dem Bildschirm gezeichnet werden, und hängt von der Betriebsfrequenz und der Anzahl der ROPs (Rasterisierungs- und Mischoperationseinheiten) ab, während die Texturfüllrate die Texturdaten-Abtastrate ist, die von der abhängt Betriebshäufigkeit und die Anzahl der Textureinheiten.

Beispielsweise beträgt die maximale Pixelfüllrate der GeForce GTX 560 Ti 822 (Chipfrequenz) × 32 (ROP-Einheiten) = 26304 Megapixel pro Sekunde, und die Texturfüllrate beträgt 822 × 64 (Textureinheiten) = 52608 Megatexel/s . Vereinfacht ist die Situation wie folgt: Je größer die erste Zahl, desto schneller kann die Grafikkarte fertige Pixel rendern, und je größer die zweite, desto schneller werden die Texturdaten abgetastet.

Obwohl die Bedeutung der "reinen" Füllrate in letzter Zeit deutlich abgenommen hat und der Geschwindigkeit von Berechnungen gewichen ist, sind diese Parameter immer noch sehr wichtig, insbesondere für Spiele mit einfacher Geometrie und relativ einfachen Pixel- und Vertexberechnungen. Beide Parameter sind also immer noch wichtig für moderne Spiele, aber sie müssen ausgewogen sein. Daher ist die Anzahl der ROPs in modernen Videochips normalerweise geringer als die Anzahl der Textureinheiten.

Anzahl der Recheneinheiten (Shader) oder Prozessoren

Vielleicht sind diese Blöcke jetzt die Hauptbestandteile des Videochips. Sie führen spezielle Programme aus, die als Shader bekannt sind. Darüber hinaus, wenn frühere Pixel-Shader Blöcke von Pixel-Shadern und Vertex-Shader ausgeführt haben - Vertex-Blöcke, dann wurden seit einiger Zeit grafische Architekturen vereinheitlicht, und diese universellen Rechenblöcke waren mit verschiedenen Berechnungen beschäftigt: Vertex-, Pixel-, geometrische und sogar universelle Berechnungen .

Die einheitliche Architektur wurde erstmals im Videochip der Microsoft Xbox 360-Spielekonsole verwendet, dieser Grafikprozessor wurde von ATI (später von AMD übernommen) entwickelt. Und in Videochips für PCs erschienen einheitliche Shader-Einheiten in der NVIDIA GeForce 8800-Karte.Und seitdem basieren alle neuen Videochips auf einer einheitlichen Architektur, die einen universellen Code für verschiedene Shader-Programme (Vertex, Pixel, Geometry usw.) .), und die entsprechenden einheitlichen Prozessoren können beliebige Programme ausführen.

Anhand der Anzahl der Recheneinheiten und ihrer Frequenz können Sie die mathematische Leistung verschiedener Grafikkarten vergleichen. Die meisten Spiele sind jetzt durch die Leistung von Pixel-Shadern begrenzt, daher ist die Anzahl dieser Blöcke sehr wichtig. Wenn beispielsweise ein Grafikkartenmodell auf einer GPU mit 384 Rechenprozessoren in seiner Zusammensetzung basiert und ein anderes aus derselben Linie eine GPU mit 192 Recheneinheiten hat, dann ist das zweite bei gleicher Frequenz doppelt so langsam verarbeiten jede Art von Shadern, und im Allgemeinen wird das gleiche produktiver sein.

Zwar lassen sich allein anhand der Anzahl der Recheneinheiten keine eindeutigen Rückschlüsse auf die Performance ziehen, jedoch ist es zwingend erforderlich, die Taktfrequenz und unterschiedliche Architektur von Bausteinen unterschiedlicher Generationen und Chiphersteller zu berücksichtigen. Allein diese Zahlen können verwendet werden, um Chips innerhalb derselben Linie eines Herstellers zu vergleichen: AMD oder NVIDIA. In anderen Fällen müssen Sie auf Leistungstests in interessanten Spielen oder Anwendungen achten.

Texturiereinheiten (TMUs)

Diese GPU-Einheiten arbeiten mit den Rechenprozessoren zusammen, um Texturen und andere Daten abzutasten und zu filtern, die für die Szenenerstellung und allgemeine Datenverarbeitung benötigt werden. Die Anzahl der Textureinheiten im Videochip bestimmt die Texturleistung – das heißt, die Geschwindigkeit, mit der Texel aus Texturen abgerufen werden.

Obwohl in letzter Zeit mehr Wert auf mathematische Berechnungen gelegt und einige Texturen durch prozedurale ersetzt wurden, ist die Belastung der TMUs immer noch recht hoch, da neben den Haupttexturen auch Samples aus Normal- und Displacement-Maps erstellt werden müssen, wie z sowie Off-Screen-Renderziel-Renderpuffer.

In Anbetracht der Betonung vieler Spiele, auch auf der Leistung von Texturierungseinheiten, können wir sagen, dass die Anzahl der TMUs und die entsprechend hohe Texturleistung auch einer der wichtigsten Parameter für Videochips sind. Dieser Parameter wirkt sich besonders auf die Rendergeschwindigkeit eines Bildes aus, wenn anisotrope Filterung verwendet wird, die zusätzliche Texturabrufe erfordert, sowie bei komplexen Algorithmen für weiche Schatten und neumodischen Algorithmen wie Screen Space Ambient Occlusion.

Rasterization Operations Units (ROPs)

Die Rasterisierungseinheiten führen die Operationen des Schreibens der von der Videokarte berechneten Pixel in Puffer und die Operationen ihres Mischens (Blending) durch. Wie oben erwähnt, wirkt sich die Leistung von ROP-Einheiten auf die Füllrate aus, und dies ist eines der Hauptmerkmale von Grafikkarten aller Zeiten. Und obwohl sein Wert in letzter Zeit ebenfalls etwas abgenommen hat, gibt es immer noch Fälle, in denen die Anwendungsleistung von der Geschwindigkeit und Anzahl der ROPs abhängt. Meistens liegt dies an der aktiven Verwendung von Nachbearbeitungsfiltern und Anti-Aliasing, die bei hohen Spieleinstellungen aktiviert sind.

Wir stellen noch einmal fest, dass moderne Videochips nicht nur anhand der Anzahl verschiedener Blöcke und ihrer Häufigkeit bewertet werden können. Jede Reihe von GPUs verwendet eine neue Architektur, bei der sich die Ausführungseinheiten stark von den alten unterscheiden und das Verhältnis der Anzahl verschiedener Einheiten unterschiedlich sein kann. Beispielsweise können die ROPs von AMD in einigen Lösungen mehr Arbeit pro Takt leisten als die ROPs von NVIDIA und umgekehrt. Gleiches gilt für die Fähigkeiten von TMU-Texture-Units – sie unterscheiden sich in verschiedenen GPU-Generationen verschiedener Hersteller, was beim Vergleich berücksichtigt werden muss.

geometrische Blöcke

Bis vor kurzem war die Anzahl der Geometriebearbeitungseinheiten nicht besonders wichtig. Ein Block pro GPU war für die meisten Aufgaben ausreichend, da die Geometrie in Spielen recht einfach war und der Leistungsschwerpunkt auf mathematischen Berechnungen lag. Die Bedeutung der parallelen Verarbeitung von Geometrie und die Anzahl der entsprechenden Blöcke hat mit der Einführung der Unterstützung für Geometrie-Tessellation in DirectX 11 dramatisch zugenommen. NVIDIA war das erste Unternehmen, das die Verarbeitung geometrischer Daten parallelisierte, als mehrere entsprechende Blöcke in seinen GF1xx-Chips auftauchten. Dann veröffentlichte AMD eine ähnliche Lösung (nur in den Top-Lösungen der Radeon HD 6700-Reihe auf Basis von Cayman-Chips).

Im Rahmen dieses Materials gehen wir nicht auf Details ein, sie finden sich in den grundlegenden Materialien unserer Website für DirectX 11-kompatible Grafikprozessoren. In diesem Fall ist uns wichtig, dass die Anzahl der Geometrieverarbeitungseinheiten die Gesamtleistung in den neuesten Spielen, die Tessellation verwenden, wie Metro 2033, HAWX 2 und Crysis 2 (mit den neuesten Patches), stark beeinflusst. Und bei der Auswahl einer modernen Gaming-Grafikkarte ist es sehr wichtig, auf die geometrische Leistung zu achten.

Videospeicher

Eigener Speicher wird von Videochips verwendet, um die notwendigen Daten zu speichern: Texturen, Scheitelpunkte, Pufferdaten usw. Es scheint, dass je mehr es sind, desto besser. Aber nicht alles ist so einfach, die Leistung einer Grafikkarte anhand der Größe des Videospeichers zu schätzen, ist der häufigste Fehler! Unerfahrene Benutzer überschätzen den Wert des Videospeichers am häufigsten und verwenden ihn immer noch, um verschiedene Modelle von Videokarten zu vergleichen. Es ist verständlich - dieser Parameter ist einer der ersten, der in den Merkmalslisten fertiger Systeme angegeben ist, und er ist groß auf den Schachteln von Grafikkarten angegeben. Daher scheint es einem unerfahrenen Käufer, dass die Geschwindigkeit einer solchen Lösung doppelt so hoch sein sollte, da doppelt so viel Speicher vorhanden ist. Die Realität unterscheidet sich von diesem Mythos darin, dass das Gedächtnis unterschiedlicher Art und Ausprägung sein kann und das Produktivitätswachstum nur bis zu einem bestimmten Volumen wächst und danach einfach aufhört.

So ist in jedem Spiel und bei bestimmten Einstellungen und Spielszenen ein gewisser Videospeicher vorhanden, der für alle Daten ausreicht. Und obwohl Sie dort 4 GB Videospeicher platzieren, gibt es keine Gründe, das Rendern zu beschleunigen, die Geschwindigkeit wird durch die oben beschriebenen Ausführungseinheiten begrenzt, und es wird einfach genug Speicher vorhanden sein. Deshalb arbeitet eine Grafikkarte mit 1,5 GB VRAM in vielen Fällen genauso schnell wie eine Karte mit 3 GB (ceteris paribus).

Es gibt Situationen, in denen mehr Arbeitsspeicher zu einem sichtbaren Leistungszuwachs führt – das sind sehr anspruchsvolle Spiele, vor allem bei ultrahohen Auflösungen und maximalen Qualitätseinstellungen. Solche Fälle treten jedoch nicht immer auf, und die Speichermenge muss berücksichtigt werden, wobei nicht zu vergessen ist, dass die Leistung einfach nicht über einen bestimmten Betrag hinaus ansteigt. Speicherchips haben auch wichtigere Parameter, wie die Breite des Speicherbusses und seine Betriebsfrequenz. Dieses Thema ist so umfangreich, dass wir uns im sechsten Teil unseres Materials ausführlicher mit der Auswahl der Größe des Videospeichers befassen.

Speicherbusbreite

Die Speicherbusbreite ist die wichtigste Eigenschaft, die die Speicherbandbreite (BW) beeinflusst. Eine große Breite ermöglicht es Ihnen, pro Zeiteinheit mehr Informationen vom Videospeicher zur GPU und zurück zu übertragen, was sich in den meisten Fällen positiv auf die Leistung auswirkt. Theoretisch kann ein 256-Bit-Bus doppelt so viele Daten pro Takt übertragen wie ein 128-Bit-Bus. In der Praxis ist der Unterschied in der Rendering-Geschwindigkeit, obwohl er nicht das Zweifache erreicht, in vielen Fällen sehr nahe daran, wobei der Schwerpunkt auf der Bandbreite des Videospeichers liegt.

Moderne Gaming-Grafikkarten verwenden unterschiedliche Busbreiten: von 64 bis 384 Bit (früher gab es Chips mit einem 512-Bit-Bus), je nach Preisklasse und Release-Zeitpunkt eines bestimmten GPU-Modells. Für die billigsten Low-End-Grafikkarten werden am häufigsten 64 und seltener 128 Bit verwendet, für die mittlere Ebene von 128 bis 256 Bit, aber Grafikkarten aus der oberen Preisklasse verwenden Busse von 256 bis 384 Bit Breite. Die Busbreite kann rein aus physikalischen Gründen nicht mehr wachsen - die Größe des GPU-Chips reicht nicht aus, um mehr als einen 512-Bit-Bus zu routen, und er ist zu teuer. Daher wird nun die Speicherbandbreite durch den Einsatz neuer Speichertypen erhöht (siehe unten).

Videospeicherfrequenz

Ein weiterer Parameter, der die Speicherbandbreite beeinflusst, ist die Taktfrequenz. Und die Erhöhung der Speicherbandbreite wirkt sich oft direkt auf die Leistung der Grafikkarte in 3D-Anwendungen aus. Die Speicherbusfrequenz bei modernen Grafikkarten reicht von 533 (1066, mit Verdopplung) MHz bis 1375 (5500, mit Vervierfachung) MHz, dh sie kann sich um mehr als das Fünffache unterscheiden! Und da die Speicherbandbreite sowohl von der Speicherfrequenz als auch von der Breite seines Busses abhängt, hat ein Speicher mit einem 256-Bit-Bus, der mit einer Frequenz von 800 (3200) MHz arbeitet, eine größere Bandbreite im Vergleich zu einem Speicher, der mit 1000 (4000) MHz arbeitet ) MHz mit einem 128-Bit-Bus.

Beim Kauf relativ günstiger Grafikkarten, von denen viele nur mit 128-Bit- oder sogar 64-Bit-Schnittstellen ausgestattet sind, sollte auf die Parameter der Speicherbusbreite, ihre Art und Betriebsfrequenz besonders geachtet werden, was sich negativ auf ihre Leistung auswirkt. Im Allgemeinen empfehlen wir überhaupt nicht, eine Grafikkarte mit einem 64-Bit-Videospeicherbus für einen Gaming-PC zu kaufen. Es ist ratsam, mindestens ein durchschnittliches Niveau mit mindestens einem 128- oder 192-Bit-Bus zu bevorzugen.

Speichertypen

Auf modernen Grafikkarten sind mehrere verschiedene Speichertypen gleichzeitig installiert. Der alte Single-Rate-SDR-Speicher ist nirgendwo zu finden, aber moderne Arten von DDR- und GDDR-Speicher haben deutlich unterschiedliche Eigenschaften. Verschiedene Arten von DDR und GDDR ermöglichen es Ihnen, zwei- oder viermal mehr Daten bei derselben Taktfrequenz pro Zeiteinheit zu übertragen, und daher wird die Zahl der Betriebsfrequenz oft mit dem Doppelten oder Vierfachen angegeben, multipliziert mit 2 oder 4. Wenn also die Frequenz für DDR-Speicher 1400 MHz angegeben ist, dann arbeitet dieser Speicher mit einer physikalischen Frequenz von 700 MHz, aber geben Sie die sogenannte "effektive" Frequenz an, d. h. diejenige, mit der SDR-Speicher arbeiten müssen, um die gleiche Bandbreite bereitzustellen . Das gleiche bei GDDR5, allerdings wird hier die Frequenz sogar vervierfacht.

Der Hauptvorteil neuer Speichertypen ist die Fähigkeit, mit hohen Taktraten zu arbeiten und damit den Durchsatz im Vergleich zu früheren Technologien zu erhöhen. Dies wird durch erhöhte Verzögerungen erreicht, die jedoch für Grafikkarten nicht so wichtig sind. Das erste Board, das DDR2-Speicher verwendete, war die NVIDIA GeForce FX 5800 Ultra. Seitdem hat sich die Grafikspeichertechnologie mit der Entwicklung des GDDR3-Standards, der den DDR2-Spezifikationen nahe kommt, mit einigen Modifikationen speziell für Grafikkarten, erheblich weiterentwickelt.

GDDR3 ist ein grafikkartenspezifischer Speicher mit der gleichen Technologie wie DDR2, jedoch mit verbessertem Verbrauch und verbesserten Wärmeableitungseigenschaften, wodurch Chips mit höheren Taktraten arbeiten können. Trotz der Tatsache, dass der Standard von ATI entwickelt wurde, war die erste Grafikkarte, die ihn verwendete, die zweite Modifikation der NVIDIA GeForce FX 5700 Ultra, und die nächste war die GeForce 6800 Ultra.

GDDR4 ist eine Weiterentwicklung des "Grafik"-Speichers und läuft fast doppelt so schnell wie GDDR3. Die Hauptunterschiede zwischen GDDR4 und GDDR3, die für die Nutzer von Bedeutung sind, sind noch einmal erhöhte Betriebsfrequenzen und ein reduzierter Stromverbrauch. Technisch unterscheidet sich GDDR4-Speicher nicht wesentlich von GDDR3, es ist eine Weiterentwicklung der gleichen Ideen. Die ersten Grafikkarten mit GDDR4-Chips an Bord waren die ATI Radeon X1950 XTX, während NVIDIA überhaupt keine Produkte auf Basis dieses Speichertyps veröffentlichte. Der Vorteil neuer Speicherchips gegenüber GDDR3 besteht darin, dass der Stromverbrauch von Modulen um etwa ein Drittel geringer sein kann. Dies wird auf Kosten einer niedrigeren Nennspannung für GDDR4 erreicht.

Allerdings ist GDDR4 selbst in AMD-Lösungen nicht weit verbreitet. Beginnend mit der RV7x0-GPU-Familie unterstützen Grafikkarten-Speichercontroller einen neuen Typ von GDDR5-Speicher, der mit einer effektiven vierfachen Frequenz von bis zu 5,5 GHz und höher arbeitet (theoretisch sind Frequenzen bis zu 7 GHz möglich), was einen Durchsatz von bis zu 176 GB/s über 256-Bit-Schnittstelle. Während GDDR3/GDDR4 einen 512-Bit-Bus verwenden musste, um die Speicherbandbreite zu erhöhen, ermöglichte der Übergang zu GDDR5 eine Verdoppelung der Leistung bei kleineren Die-Größen und geringerem Stromverbrauch.

Die modernsten Videospeichertypen sind GDDR3 und GDDR5, sie unterscheiden sich in einigen Details von DDR und arbeiten ebenfalls mit doppelter/vierfacher Datenübertragung. Bei diesen Speichertypen werden einige spezielle Technologien verwendet, um die Betriebsfrequenz zu erhöhen. Beispielsweise arbeitet GDDR2-Speicher typischerweise mit höheren Frequenzen als DDR, GDDR3 mit noch höheren Frequenzen, und GDDR5 bietet derzeit die maximale Frequenz und Bandbreite. Preisgünstige Modelle sind jedoch immer noch mit „nicht grafischem“ DDR3-Speicher mit einer viel niedrigeren Frequenz ausgestattet, sodass Sie eine Grafikkarte sorgfältiger auswählen müssen.

Vielleicht sind diese Blöcke jetzt die Hauptbestandteile des Videochips. Sie führen spezielle Programme aus, die als Shader bekannt sind. Darüber hinaus, wenn frühere Pixel-Shader Blöcke von Pixel-Shadern und Vertex-Shader ausgeführt haben - Vertex-Blöcke, dann wurden seit einiger Zeit grafische Architekturen vereinheitlicht, und diese universellen Rechenblöcke waren mit verschiedenen Berechnungen beschäftigt: Vertex-, Pixel-, geometrische und sogar universelle Berechnungen .

Die einheitliche Architektur wurde erstmals im Videochip der Microsoft Xbox 360-Spielekonsole verwendet, dieser Grafikprozessor wurde von ATI (später von AMD übernommen) entwickelt. Und in Videochips für PCs erschienen einheitliche Shader-Einheiten in der NVIDIA GeForce 8800-Karte.Und seitdem basieren alle neuen Videochips auf einer einheitlichen Architektur, die einen universellen Code für verschiedene Shader-Programme (Vertex, Pixel, Geometry usw.) .), und die entsprechenden einheitlichen Prozessoren können beliebige Programme ausführen.

Anhand der Anzahl der Recheneinheiten und ihrer Frequenz können Sie die mathematische Leistung verschiedener Grafikkarten vergleichen. Die meisten Spiele sind jetzt durch die Leistung von Pixel-Shadern begrenzt, daher ist die Anzahl dieser Blöcke sehr wichtig. Wenn beispielsweise ein Grafikkartenmodell auf einer GPU mit 384 Rechenprozessoren in seiner Zusammensetzung basiert und ein anderes aus derselben Linie eine GPU mit 192 Recheneinheiten hat, dann ist das zweite bei gleicher Frequenz doppelt so langsam verarbeiten jede Art von Shadern, und im Allgemeinen wird das gleiche produktiver sein.

Zwar lassen sich allein anhand der Anzahl der Recheneinheiten keine eindeutigen Rückschlüsse auf die Performance ziehen, jedoch ist es zwingend erforderlich, die Taktfrequenz und unterschiedliche Architektur von Bausteinen unterschiedlicher Generationen und Chiphersteller zu berücksichtigen. Allein diese Zahlen können verwendet werden, um Chips innerhalb derselben Linie eines Herstellers zu vergleichen: AMD oder NVIDIA. In anderen Fällen müssen Sie auf Leistungstests in interessanten Spielen oder Anwendungen achten.

Texturiereinheiten (TMUs)

Diese GPU-Einheiten arbeiten mit den Rechenprozessoren zusammen, um Texturen und andere Daten abzutasten und zu filtern, die für die Szenenerstellung und allgemeine Datenverarbeitung benötigt werden. Die Anzahl der Textureinheiten in einem Videochip bestimmt die Texturleistung – das heißt, die Geschwindigkeit, mit der Texel aus Texturen abgerufen werden.

Obwohl in letzter Zeit mehr Wert auf mathematische Berechnungen gelegt und einige Texturen durch prozedurale ersetzt wurden, ist die Belastung der TMUs immer noch recht hoch, da neben den Haupttexturen auch Samples aus Normal- und Displacement-Maps erstellt werden müssen, wie z sowie Off-Screen-Renderziel-Renderpuffer.

In Anbetracht der Betonung vieler Spiele, auch auf der Leistung von Texturierungseinheiten, können wir sagen, dass die Anzahl der TMUs und die entsprechend hohe Texturleistung auch einer der wichtigsten Parameter für Videochips sind. Dieser Parameter wirkt sich besonders auf die Rendergeschwindigkeit eines Bildes aus, wenn anisotrope Filterung verwendet wird, die zusätzliche Texturabrufe erfordert, sowie bei komplexen Algorithmen für weiche Schatten und neumodischen Algorithmen wie Screen Space Ambient Occlusion.

Rasterization Operations Units (ROPs)

Die Rasterisierungseinheiten führen die Operationen des Schreibens der von der Videokarte berechneten Pixel in Puffer und die Operationen ihres Mischens (Blending) durch. Wie oben erwähnt, wirkt sich die Leistung von ROP-Einheiten auf die Füllrate aus, und dies ist eines der Hauptmerkmale von Grafikkarten aller Zeiten. Und obwohl sein Wert in letzter Zeit ebenfalls etwas abgenommen hat, gibt es immer noch Fälle, in denen die Anwendungsleistung von der Geschwindigkeit und Anzahl der ROPs abhängt. Meistens liegt dies an der aktiven Verwendung von Nachbearbeitungsfiltern und Anti-Aliasing, die bei hohen Spieleinstellungen aktiviert sind.

Grundkomponenten einer Grafikkarte:

  • Ausgänge;
  • Schnittstellen;
  • Kühlsystem;
  • Grafikprozessor;
  • Videospeicher.

Grafische Technologien:

  • Wörterbuch;
  • GPU-Architektur: Funktionen
    Scheitelpunkt-/Pixeleinheiten, Shader, Füllrate, Textur-/Rastereinheiten, Pipelines;
  • GPU-Architektur: Technologie
    Herstellungsprozess, GPU-Frequenz, lokaler Videospeicher (Größe, Bus, Typ, Frequenz), Lösungen mit mehreren Grafikkarten;
  • visuelle Merkmale
    DirectX, High Dynamic Range (HDR), FSAA, Texturfilterung, hochauflösende Texturen.

Glossar der grundlegenden grafischen Begriffe

Aktualisierungsrate

Wie in einem Kino oder auf einem Fernseher simuliert Ihr Computer Bewegungen auf einem Monitor, indem er eine Folge von Einzelbildern anzeigt. Die Bildwiederholfrequenz des Monitors gibt an, wie oft pro Sekunde das Bild auf dem Bildschirm aktualisiert wird. Beispielsweise entsprechen 75 Hz 75 Aktualisierungen pro Sekunde.

Wenn der Computer Frames schneller verarbeitet, als der Monitor ausgeben kann, können bei Spielen Probleme auftreten. Wenn der Computer beispielsweise 100 Bilder pro Sekunde berechnet und die Bildwiederholfrequenz des Monitors 75 Hz beträgt, kann der Monitor aufgrund von Überlagerungen während seiner Bildwiederholzeit nur einen Teil des Bildes anzeigen. Als Ergebnis treten visuelle Artefakte auf.

Als Lösung können Sie V-Sync (vertikale Synchronisierung) aktivieren. Es begrenzt die Anzahl der Frames, die ein Computer erzeugen kann, auf die Bildwiederholfrequenz des Monitors und verhindert so Artefakte. Wenn Sie V-Sync aktivieren, überschreitet die Anzahl der im Spiel gerenderten Frames niemals die Bildwiederholfrequenz. Das heißt, bei 75 Hz gibt der Computer nicht mehr als 75 Bilder pro Sekunde aus.

Pixel

Das Wort „Pixel“ steht für „ Bild ture El ement" ist ein Bildelement. Es ist ein winziger Punkt auf dem Display, der in einer bestimmten Farbe leuchten kann (in den meisten Fällen wird der Farbton durch eine Kombination aus drei Grundfarben angezeigt: Rot, Grün und Blau). Bei einer Bildschirmauflösung von 1024×768 sehen Sie eine Matrix mit 1024 Pixel Breite und 768 Pixel Höhe. Zusammen ergeben Pixel ein Bild. Das Bild auf dem Bildschirm wird 60 bis 120 Mal pro Sekunde aktualisiert, abhängig von der Art der Anzeige und den vom Ausgang der Videokarte gelieferten Daten. CRT-Monitore aktualisieren die Anzeige Zeile für Zeile, während LCD-Flachbildschirme jedes Pixel einzeln aktualisieren können.

Scheitel

Alle Objekte in der 3D-Szene bestehen aus Scheitelpunkten. Ein Scheitelpunkt ist ein Punkt im 3D-Raum mit Koordinaten x, y und z. Mehrere Scheitelpunkte können zu einem Polygon gruppiert werden: meistens ein Dreieck, aber komplexere Formen sind möglich. Das Polygon wird dann texturiert, damit das Objekt realistisch aussieht. Der in der Abbildung oben gezeigte 3D-Würfel hat acht Ecken. Komplexere Objekte haben gekrümmte Oberflächen, die tatsächlich aus sehr vielen Scheitelpunkten bestehen.

Textur

Eine Textur ist einfach ein 2D-Bild beliebiger Größe, das einem 3D-Objekt überlagert wird, um dessen Oberfläche zu simulieren. Zum Beispiel hat unser 3D-Würfel acht Ecken. Vor dem Textur-Mapping sieht es aus wie eine einfache Box. Aber wenn wir die Textur anwenden, wird die Box farbig.

Shader

Pixel-Shader ermöglichen der Grafikkarte beeindruckende Effekte, wie dieses Wasser in Elder Scrolls: Oblivion.

Heute gibt es zwei Arten von Shadern: Vertex und Pixel. Vertex-Shader können 3D-Objekte modifizieren oder transformieren. Mit Pixel-Shader-Programmen können Sie die Farben von Pixeln basierend auf einigen Daten ändern. Stellen Sie sich eine Lichtquelle in einer 3D-Szene vor, die die beleuchteten Objekte heller leuchten lässt und gleichzeitig Schatten auf andere Objekte wirft. All dies wird durch Ändern der Farbinformationen der Pixel implementiert.

Pixel-Shader werden verwendet, um komplexe Effekte in Ihren Lieblingsspielen zu erzeugen. Beispielsweise kann Shader-Code die Pixel rund um ein 3D-Schwert heller leuchten lassen. Ein anderer Shader kann alle Scheitelpunkte eines komplexen 3D-Objekts verarbeiten und eine Explosion simulieren. Spieleentwickler greifen zunehmend auf komplexe Shader-Programme zurück, um realistische Grafiken zu erstellen. Fast jedes moderne grafikreiche Spiel verwendet Shader.

Mit der Veröffentlichung der nächsten An(API, Application Programming Interface) Microsoft DirectX 10 wird ein dritter Shader-Typ namens Geometrie-Shader veröffentlicht. Mit ihrer Hilfe wird es je nach gewünschtem Ergebnis möglich sein, Objekte zu zerbrechen, zu modifizieren und sogar zu zerstören. Der dritte Shader-Typ kann genauso programmiert werden wie die ersten beiden, aber seine Rolle wird anders sein.

Füllrate

Sehr oft finden Sie auf der Box mit der Grafikkarte den Wert der Füllrate. Grundsätzlich gibt die Fillrate an, wie schnell die GPU Pixel rendern kann. Ältere Grafikkarten hatten eine dreieckige Füllrate. Aber heute gibt es zwei Arten von Füllraten: Pixel-Füllrate und Textur-Füllrate. Wie bereits erwähnt, entspricht die Pixelfüllrate der Pixelausgaberate. Sie errechnet sich aus der Anzahl der Rasteroperationen (ROP) multipliziert mit der Taktfrequenz.

ATi und nVidia berechnen Texturfüllraten unterschiedlich. Nvidia glaubt, dass die Geschwindigkeit durch Multiplizieren der Anzahl der Pixel-Pipelines mit der Taktrate erreicht wird. Und ATi multipliziert die Anzahl der Textureinheiten mit der Taktrate. Grundsätzlich sind beide Methoden richtig, da nVidia eine Textureinheit pro Pixel-Shader-Einheit (also eine pro Pixel-Pipeline) verwendet.

Lassen Sie uns mit diesen Definitionen weitermachen und die wichtigsten GPU-Funktionen diskutieren, was sie tun und warum sie so wichtig sind.

GPU-Architektur: Funktionen

Die Realitätsnähe von 3D-Grafiken hängt stark von der Leistung der Grafikkarte ab. Je mehr Pixel-Shader-Blöcke der Prozessor enthält und je höher die Frequenz, desto mehr Effekte können auf die 3D-Szene angewendet werden, um ihre visuelle Wahrnehmung zu verbessern.

Die GPU enthält viele verschiedene Funktionsblöcke. Anhand der Anzahl einiger Komponenten lässt sich abschätzen, wie leistungsfähig die GPU ist. Bevor wir fortfahren, schauen wir uns die wichtigsten Funktionsblöcke an.

Vertex-Prozessoren (Vertex-Shader-Einheiten)

Wie Pixel-Shader führen Vertex-Prozessoren Shader-Code aus, der Vertices berührt. Da Sie mit einem größeren Vertex-Budget komplexere 3D-Objekte erstellen können, ist die Leistung von Vertex-Prozessoren in 3D-Szenen mit komplexen oder vielen Objekten sehr wichtig. Vertex-Shader-Einheiten haben jedoch immer noch keinen so offensichtlichen Einfluss auf die Leistung wie Pixelprozessoren.

Pixelprozessoren (Pixel-Shader)

Ein Pixelprozessor ist eine Komponente des Grafikchips, die für die Verarbeitung von Pixel-Shader-Programmen bestimmt ist. Diese Prozessoren führen Berechnungen nur in Bezug auf Pixel durch. Da Pixel Farbinformationen enthalten, können Pixel-Shader beeindruckende grafische Effekte erzielen. Beispielsweise werden die meisten Wassereffekte, die Sie in Spielen sehen, mit Pixel-Shadern erstellt. Typischerweise wird die Anzahl der Pixelprozessoren verwendet, um die Pixelleistung von Grafikkarten zu vergleichen. Wenn eine Karte mit acht Pixel-Shader-Einheiten ausgestattet ist und die andere mit 16 Einheiten, dann liegt es nahe, anzunehmen, dass eine Grafikkarte mit 16 Einheiten komplexe Pixelprogramme schneller verarbeitet. Die Taktrate sollte ebenfalls berücksichtigt werden, aber heute ist die Verdoppelung der Anzahl der Pixelprozessoren in Bezug auf den Stromverbrauch effizienter als die Verdoppelung der Frequenz eines Grafikchips.

Einheitliche Shader

Unified (Einzel-)Shader sind noch nicht in die PC-Welt gekommen, aber der kommende DirectX-10-Standard setzt auf eine ähnliche Architektur. Das heißt, die Codestruktur von Vertex-, Geometrie- und Pixelprogrammen ist dieselbe, obwohl Shader unterschiedliche Aufgaben ausführen. Die neue Spezifikation kann auf der Xbox 360 eingesehen werden, wo die GPU von ATi speziell für Microsoft entwickelt wurde. Man darf gespannt sein, welches Potenzial das neue DirectX 10 mit sich bringt.

Textur-Mapping-Einheiten (TMUs)

Texturen sollten ausgewählt und gefiltert werden. Diese Arbeit wird von den Textur-Mapping-Einheiten erledigt, die in Verbindung mit den Pixel- und Vertex-Shader-Einheiten arbeiten. Die Aufgabe der TMU besteht darin, Texturoperationen auf Pixel anzuwenden. Die Anzahl der Textureinheiten in einer GPU wird oft verwendet, um die Texturleistung von Grafikkarten zu vergleichen. Es ist durchaus anzunehmen, dass eine Grafikkarte mit mehr TMUs eine bessere Texturleistung liefert.

Raster Operator Unit (ROP)

RIPs sind für das Schreiben von Pixeldaten in den Speicher verantwortlich. Die Rate, mit der diese Operation durchgeführt wird, ist die Füllrate. In den frühen Tagen der 3D-Beschleuniger waren ROPs und Füllraten sehr wichtige Eigenschaften von Grafikkarten. Heute ist die Arbeit von ROP immer noch wichtig, aber die Leistung der Grafikkarte wird nicht mehr wie früher durch diese Blöcke begrenzt. Daher wird die Leistung (und Anzahl) des ROP selten verwendet, um die Geschwindigkeit einer Grafikkarte zu bewerten.

Förderer

Pipelines werden verwendet, um die Architektur von Grafikkarten zu beschreiben und geben eine sehr visuelle Darstellung der Leistung einer GPU.

Der Förderer ist kein strenger Fachbegriff. Die GPU verwendet verschiedene Pipelines, die unterschiedliche Funktionen ausführen. Historisch wurde eine Pipeline als Pixelprozessor verstanden, der mit einer eigenen Texture Mapping Unit (TMU) verbunden war. Beispielsweise verwendet die Radeon 9700-Grafikkarte acht Pixelprozessoren, von denen jeder mit seiner eigenen TMU verbunden ist, sodass davon ausgegangen wird, dass die Karte über acht Pipelines verfügt.

Aber es ist sehr schwierig, moderne Prozessoren durch die Anzahl der Pipelines zu beschreiben. Im Vergleich zu früheren Designs verwenden die neuen Prozessoren eine modulare, fragmentierte Struktur. Als Innovator auf diesem Gebiet kann ATi gelten, das mit der X1000-Grafikkartenlinie auf einen modularen Aufbau umgestellt hat, der es ermöglichte, durch interne Optimierung eine Leistungssteigerung zu erreichen. Einige CPU-Blöcke werden mehr verwendet als andere, und um die Leistung der GPU zu verbessern, hat ATi versucht, einen Kompromiss zwischen der Anzahl der benötigten Blöcke und der Die-Fläche zu finden (sie kann nicht sehr stark erhöht werden). In dieser Architektur hat der Begriff „Pixelpipeline“ bereits seine Bedeutung verloren, da die Pixelprozessoren nicht mehr an eigene TMUs angeschlossen sind. Beispielsweise verfügt die ATi Radeon X1600 GPU über 12 Pixel-Shader und insgesamt vier TMUs. Daher kann man nicht sagen, dass es in der Architektur dieses Prozessors 12 Pixel-Pipelines gibt, genauso wenig wie man sagen kann, dass es nur vier davon gibt. Traditionell werden jedoch immer noch Pixel-Pipelines erwähnt.

Unter Berücksichtigung dieser Annahmen wird die Anzahl der Pixel-Pipelines in einer GPU häufig zum Vergleichen von Grafikkarten verwendet (mit Ausnahme der ATi X1x00-Reihe). Wenn wir beispielsweise Grafikkarten mit 24 und 16 Pipelines nehmen, ist es durchaus vernünftig anzunehmen, dass eine Karte mit 24 Pipelines schneller ist.

GPU-Architektur: Technologie

Verfahrenstechnik

Dieser Begriff bezieht sich auf die Größe eines Elements (Transistors) des Chips und die Genauigkeit des Herstellungsprozesses. Die Verbesserung der technischen Prozesse ermöglicht es, Elemente mit kleineren Abmessungen zu erhalten. Beispielsweise erzeugt der 0,18-µm-Prozess größere Merkmale als der 0,13-µm-Prozess, daher ist er nicht so effizient. Kleinere Transistoren arbeiten mit niedrigerer Spannung. Eine Abnahme der Spannung führt wiederum zu einer Abnahme des Wärmewiderstands, wodurch die erzeugte Wärmemenge verringert wird. Durch die Verbesserung der Prozesstechnologie können Sie den Abstand zwischen den Funktionsblöcken des Chips verringern und die Datenübertragung dauert weniger Zeit. Kürzere Entfernungen, niedrigere Spannungen und andere Verbesserungen ermöglichen höhere Taktraten.

Etwas erschwert wird das Verständnis, dass heute sowohl Mikrometer (µm) als auch Nanometer (nm) zur Bezeichnung der Verfahrenstechnik verwendet werden. Eigentlich ist alles ganz einfach: 1 Nanometer entspricht 0,001 Mikrometer, 0,09-Mikrometer- und 90-nm-Fertigungsverfahren sind also dasselbe. Wie oben erwähnt, ermöglicht eine kleinere Prozesstechnologie höhere Taktraten. Wenn wir beispielsweise Grafikkarten mit 0,18-Mikron- und 0,09-Mikron-Chips (90 nm) vergleichen, dann ist es durchaus vernünftig, von einer 90-nm-Karte eine höhere Frequenz zu erwarten.

GPU-Taktrate

Die GPU-Taktgeschwindigkeit wird in Megahertz (MHz) gemessen, was Millionen von Zyklen pro Sekunde entspricht.

Die Taktrate wirkt sich direkt auf die Leistung der GPU aus. Je höher sie ist, desto mehr Arbeit kann pro Sekunde verrichtet werden. Nehmen wir als erstes Beispiel die nVidia GeForce 6600 und 6600 GT Grafikkarten: Der 6600 GT Grafikprozessor läuft mit 500 MHz, während die normale 6600 Karte mit 400 MHz läuft. Da die Prozessoren technisch identisch sind, führt eine Erhöhung der Taktrate um 20 % beim 6600 GT zu einer besseren Leistung.

Aber die Taktrate ist nicht alles. Beachten Sie, dass die Leistung stark von der Architektur beeinflusst wird. Nehmen wir als zweites Beispiel die Grafikkarten GeForce 6600 GT und GeForce 6800 GT. Die GPU-Frequenz des 6600 GT beträgt 500 MHz, aber der 6800 GT läuft nur mit 350 MHz. Lassen Sie uns nun berücksichtigen, dass der 6800 GT 16 Pixel-Pipelines verwendet, während der 6600 GT nur acht hat. Daher liefert ein 6800 GT mit 16 Pipelines bei 350 MHz ungefähr die gleiche Leistung wie ein Prozessor mit acht Pipelines und der doppelten Taktrate (700 MHz). Vor diesem Hintergrund kann die Taktrate zum Vergleich der Leistung verwendet werden.

Lokaler Videospeicher

Der Grafikkartenspeicher hat einen großen Einfluss auf die Leistung. Unterschiedliche Speichereinstellungen wirken sich jedoch unterschiedlich aus.

Videospeicher

Die Größe des Videospeichers kann wahrscheinlich als der am meisten überschätzte Parameter einer Grafikkarte bezeichnet werden. Unerfahrene Verbraucher nutzen die Größe des Videospeichers oft, um verschiedene Karten miteinander zu vergleichen, aber in Wirklichkeit hat die Menge im Vergleich zu Parametern wie Speicherbusfrequenz und Schnittstelle (Busbreite) wenig Einfluss auf die Leistung.

In den meisten Fällen ist eine Karte mit 128 MB Videospeicher fast genauso leistungsfähig wie eine Karte mit 256 MB. Natürlich gibt es Situationen, in denen mehr Arbeitsspeicher zu einer besseren Leistung führt, aber denken Sie daran, dass mehr Arbeitsspeicher nicht automatisch die Geschwindigkeit in Spielen erhöht.

Wo Lautstärke nützlich ist, ist in Spielen mit hochauflösenden Texturen. Spieleentwickler fügen dem Spiel mehrere Sätze von Texturen hinzu. Und je mehr Speicher auf der Grafikkarte vorhanden ist, desto höher kann die Auflösung der geladenen Texturen sein. Hochauflösende Texturen geben dem Spiel eine höhere Definition und Details. Daher ist es durchaus sinnvoll, eine Karte mit viel Speicher zu nehmen, wenn alle anderen Kriterien gleich sind. Denken Sie noch einmal daran, dass die Breite des Speicherbusses und seine Frequenz einen viel stärkeren Einfluss auf die Leistung haben als die Größe des physischen Speichers auf der Karte.

Speicherbusbreite

Die Speicherbusbreite ist einer der wichtigsten Aspekte der Speicherleistung. Moderne Busse haben eine Breite von 64 bis 256 Bit und in einigen Fällen sogar 512 Bit. Je breiter der Speicherbus ist, desto mehr Informationen kann er pro Takt übertragen. Und das wirkt sich direkt auf die Leistung aus. Wenn wir zum Beispiel zwei Busse mit gleichen Frequenzen nehmen, dann überträgt ein 128-Bit-Bus theoretisch doppelt so viele Daten pro Takt wie ein 64-Bit-Bus. Ein 256-Bit-Bus ist doppelt so groß.

Eine höhere Busbandbreite (ausgedrückt in Bits oder Bytes pro Sekunde, 1 Byte = 8 Bits) ergibt eine bessere Speicherleistung. Deshalb ist der Speicherbus viel wichtiger als seine Größe. Bei gleichen Frequenzen arbeitet ein 64-Bit-Speicherbus mit nur 25 % eines 256-Bit-Busses!

Nehmen wir das folgende Beispiel. Eine Grafikkarte mit 128 MB Videospeicher, aber mit einem 256-Bit-Bus bietet eine viel bessere Speicherleistung als ein 512-MB-Modell mit einem 64-Bit-Bus. Es ist wichtig zu beachten, dass die Hersteller bei einigen Karten der ATi X1x00-Serie die Spezifikationen des internen Speicherbusses angeben, uns jedoch die Parameter des externen Busses interessieren. Beispielsweise ist der interne Ringbus des X1600 256 Bit breit, der externe jedoch nur 128 Bit. Und in Wirklichkeit arbeitet der Speicherbus mit 128-Bit-Performance.

Speichertypen

Arbeitsspeicher lassen sich in zwei Hauptkategorien einteilen: SDR (Single Data Transfer) und DDR (Double Data Transfer), bei denen Daten pro Takt doppelt so schnell übertragen werden. Heute ist die SDR-Einzelübertragungstechnologie veraltet. Da DDR-Speicher Daten doppelt so schnell überträgt wie SDR, ist es wichtig zu bedenken, dass Grafikkarten mit DDR-Speicher häufig die doppelte Frequenz angeben, nicht die physische. Wenn beispielsweise DDR-Speicher mit 1000 MHz aufgeführt ist, ist dies die effektive Frequenz, mit der normaler SDR-Speicher betrieben werden muss, um die gleiche Bandbreite bereitzustellen. Tatsächlich beträgt die physikalische Frequenz jedoch 500 MHz.

Aus diesem Grund sind viele Leute überrascht, wenn ihr Grafikkartenspeicher mit 1200 MHz DDR aufgeführt wird, während Dienstprogramme 600 MHz angeben. Sie müssen sich also daran gewöhnen. DDR2- und GDDR3/GDDR4-Speicher arbeiten nach dem gleichen Prinzip, also mit doppelter Datenübertragung. Der Unterschied zwischen DDR-, DDR2-, GDDR3- und GDDR4-Speicher liegt in der Fertigungstechnik und einigen Details. DDR2 kann mit höheren Frequenzen als DDR-Speicher arbeiten, und DDR3 kann mit noch höheren Frequenzen als DDR2 arbeiten.

Speicherbusfrequenz

Wie ein Prozessor läuft der Speicher (oder genauer gesagt der Speicherbus) mit bestimmten Taktraten, gemessen in Megahertz. Hier wirkt sich eine Erhöhung der Taktraten direkt auf die Speicherleistung aus. Und die Frequenz des Speicherbusses ist einer der Parameter, die verwendet werden, um die Leistung von Grafikkarten zu vergleichen. Wenn beispielsweise alle anderen Eigenschaften (Speicherbusbreite usw.) gleich sind, dann ist es ziemlich logisch zu sagen, dass eine Grafikkarte mit 700-MHz-Speicher schneller ist als eine mit 500 MHz.

Auch hier ist die Taktrate nicht alles. 700-MHz-Speicher mit einem 64-Bit-Bus ist langsamer als 400-MHz-Speicher mit einem 128-Bit-Bus. Die Leistung von 400-MHz-Speicher auf einem 128-Bit-Bus entspricht ungefähr der von 800-MHz-Speicher auf einem 64-Bit-Bus. Sie sollten auch bedenken, dass GPU- und Speicherfrequenzen völlig unterschiedliche Parameter sind und normalerweise unterschiedlich sind.

Grafikkartenschnittstelle

Alle Daten, die zwischen der Videokarte und dem Prozessor übertragen werden, passieren die Videokartenschnittstelle. Heutzutage werden drei Arten von Schnittstellen für Grafikkarten verwendet: PCI, AGP und PCI Express. Sie unterscheiden sich in Bandbreite und anderen Eigenschaften. Es ist klar, je höher die Bandbreite, desto höher der Wechselkurs. Allerdings können nur die modernsten Karten eine hohe Bandbreite nutzen, und selbst dann nur teilweise. Irgendwann war die Geschwindigkeit der Schnittstelle kein „Flaschenhals“, sie reicht heute einfach aus.

Der langsamste Bus, für den Grafikkarten hergestellt wurden, ist PCI (Peripheral Components Interconnect). Ohne natürlich auf die Geschichte einzugehen. PCI hat die Leistung von Grafikkarten wirklich verschlechtert, sodass sie auf die AGP-Schnittstelle (Accelerated Graphics Port) umgestiegen sind. Aber selbst die AGP 1.0- und 2x-Spezifikationen begrenzten die Leistung. Als der Standard die Geschwindigkeit auf AGP 4x erhöhte, näherten wir uns der praktischen Grenze der Bandbreite, die Grafikkarten verwenden können. Die AGP 8x-Spezifikation verdoppelte die Bandbreite gegenüber AGP 4x noch einmal (2,16 GB/s), eine spürbare Steigerung der Grafikleistung konnten wir jedoch nicht feststellen.

Der neueste und schnellste Bus ist PCI Express. Neuere Grafikkarten verwenden typischerweise die PCI-Express-x16-Schnittstelle, die 16 PCI-Express-Lanes für eine Gesamtbandbreite von 4 GB/s (in eine Richtung) kombiniert. Dies ist der doppelte Durchsatz von AGP 8x. Der PCI-Express-Bus bietet die genannte Bandbreite für beide Richtungen (Datenübertragung von und zur Grafikkarte). Aber die Geschwindigkeit des AGP 8x-Standards war bereits ausreichend, sodass wir keine Situation gesehen haben, in der der Wechsel zu PCI Express im Vergleich zu AGP 8x einen Leistungsschub gebracht hat (wenn andere Hardwareparameter gleich sind). Beispielsweise funktioniert die AGP-Version der GeForce 6800 Ultra identisch mit der 6800 Ultra für PCI Express.

Heute ist es am besten, eine Karte mit PCI Express-Schnittstelle zu kaufen, sie wird noch einige Jahre auf dem Markt bleiben. Die produktivsten Karten werden nicht mehr mit der AGP 8x-Schnittstelle hergestellt, und PCI-Express-Lösungen sind in der Regel bereits leichter zu finden als AGP-Analoga und sie sind billiger.

Multi-GPU-Lösungen

Die Verwendung mehrerer Grafikkarten zur Steigerung der Grafikleistung ist keine neue Idee. In den Anfängen der 3D-Grafik kam 3dfx mit zwei parallel laufenden Grafikkarten auf den Markt. Aber mit dem Verschwinden von 3dfx geriet die Technologie für die Zusammenarbeit mehrerer Consumer-Videokarten in Vergessenheit, obwohl ATi seit der Veröffentlichung der Radeon 9700 ähnliche Systeme für professionelle Simulatoren herstellt. Vor einigen Jahren kehrte die Technologie mit auf den Markt zurück das Aufkommen von nVidia SLI-Lösungen und etwas später ATi Crossfire.

Die gemeinsame Nutzung mehrerer Grafikkarten bietet genügend Leistung, um das Spiel mit hohen Qualitätseinstellungen in High Definition auszuführen. Aber sich für das eine oder andere zu entscheiden, ist nicht einfach.

Beginnen wir damit, dass Lösungen, die auf mehreren Grafikkarten basieren, viel Energie benötigen, daher muss die Stromversorgung stark genug sein. All diese Wärme muss von der Grafikkarte abgeführt werden, daher müssen Sie auf das PC-Gehäuse und die Kühlung achten, damit das System nicht überhitzt.

Denken Sie auch daran, dass SLI/CrossFire ein geeignetes Motherboard (entweder für die eine oder andere Technologie) erfordert, das normalerweise teurer ist als Standardmodelle. Die nVidia SLI-Konfiguration funktioniert nur auf bestimmten nForce4-Boards, während ATi CrossFire-Karten nur auf Motherboards mit einem CrossFire-Chipsatz oder einigen Intel-Modellen funktionieren. Erschwerend kommt hinzu, dass einige CrossFire-Konfigurationen eine spezielle Karte erfordern: die CrossFire Edition. Nach der Veröffentlichung von CrossFire erlaubte ATi für einige Grafikkartenmodelle die Einbeziehung der Technologie der Zusammenarbeit über den PCI Express-Bus, und mit der Veröffentlichung neuer Treiberversionen steigt die Anzahl möglicher Kombinationen. Dennoch bietet Hardware-CrossFire mit der entsprechenden CrossFire Edition-Karte eine bessere Leistung. Aber CrossFire Edition-Karten sind auch teurer als normale Modelle. Derzeit können Sie den CrossFire-Softwaremodus (ohne CrossFire Edition-Karte) auf Radeon X1300-, X1600- und X1800 GTO-Grafikkarten aktivieren.

Auch andere Faktoren sollten berücksichtigt werden. Zwei zusammenarbeitende Grafikkarten sorgen zwar für einen Leistungsschub, aber bei weitem nicht auf das Doppelte. Aber Sie zahlen doppelt so viel Geld. Meistens beträgt die Produktivitätssteigerung 20-60%. Und in einigen Fällen gibt es aufgrund zusätzlicher Rechenkosten für den Abgleich überhaupt keinen Gewinn. Aus diesem Grund rechnen sich Konfigurationen mit mehreren Karten bei billigen Modellen wahrscheinlich nicht, da eine teurere Grafikkarte in der Regel immer ein Paar billiger Karten übertrifft. Generell ist es für die meisten Verbraucher nicht sinnvoll, eine SLI/CrossFire-Lösung zu nehmen. Wenn Sie jedoch alle Optionen zur Qualitätsverbesserung aktivieren oder mit extremen Auflösungen spielen möchten, z. B. 2560 x 1600, wenn Sie mehr als 4 Millionen Pixel pro Frame berechnen müssen, sind zwei oder vier gekoppelte Grafikkarten unverzichtbar.

Visuelle Merkmale

Zusätzlich zu den reinen Hardwarespezifikationen können sich verschiedene Generationen und Modelle von GPUs im Funktionsumfang unterscheiden. Beispielsweise wird oft gesagt, dass Karten der ATi Radeon X800 XT-Generation mit Shader Model 2.0b (SM) kompatibel sind, während die nVidia GeForce 6800 Ultra mit SM 3.0 kompatibel ist, obwohl ihre Hardwarespezifikationen nahe beieinander liegen (16 Pipelines). . Daher entscheiden sich viele Verbraucher für die eine oder andere Lösung, ohne überhaupt zu wissen, was dieser Unterschied bedeutet.

Versionen von Microsoft DirectX und Shader Model

Diese Namen werden am häufigsten in Streitigkeiten verwendet, aber nur wenige wissen, was sie wirklich bedeuten. Beginnen wir zum Verständnis mit der Geschichte der Grafik-APIs. DirectX und OpenGL sind Grafik-APIs, dh Application Programming Interfaces – offene Codestandards, die für jedermann verfügbar sind.

Vor dem Aufkommen von Grafik-APIs hatte jeder GPU-Hersteller seinen eigenen Mechanismus zur Kommunikation mit Spielen. Entwickler mussten für jede GPU, die sie unterstützen wollten, separaten Code schreiben. Ein sehr teurer und ineffizienter Ansatz. Um dieses Problem zu lösen, wurden APIs für 3D-Grafiken entwickelt, damit Entwickler Code für eine bestimmte API schreiben und nicht für diese oder jene Grafikkarte. Danach fielen Kompatibilitätsprobleme auf die Schultern der Grafikkartenhersteller, die sicherstellen mussten, dass die Treiber mit der API kompatibel waren.

Als einzige Komplikation bleibt, dass heute zwei unterschiedliche APIs verwendet werden, nämlich Microsoft DirectX und OpenGL, wobei GL für Graphics Library (Grafikbibliothek) steht. Da die DirectX-API heutzutage in Spielen beliebter ist, werden wir uns darauf konzentrieren. Und dieser Standard beeinflusste die Entwicklung von Spielen stärker.

DirectX ist eine Schöpfung von Microsoft. Tatsächlich enthält DirectX mehrere APIs, von denen nur eine für 3D-Grafiken verwendet wird. DirectX enthält APIs für Sound, Musik, Eingabegeräte und mehr. Die Direct3D-API ist für 3D-Grafiken in DirectX verantwortlich. Wenn sie über Grafikkarten sprechen, meinen sie genau das, daher sind die Konzepte von DirectX und Direct3D in dieser Hinsicht austauschbar.

DirectX wird regelmäßig aktualisiert, wenn die Grafiktechnologie Fortschritte macht und Spieleentwickler neue Spielprogrammiertechniken einführen. Da die Popularität von DirectX schnell zugenommen hat, haben GPU-Hersteller damit begonnen, neue Produktversionen an die Fähigkeiten von DirectX anzupassen. Aus diesem Grund sind Grafikkarten oft an die Hardwareunterstützung der einen oder anderen DirectX-Generation (DirectX 8, 9.0 oder 9.0c) gebunden.

Um die Sache noch komplizierter zu machen, können sich Teile der Direct3D-API im Laufe der Zeit ändern, ohne dass Generationen von DirectX geändert werden müssen. Beispielsweise gibt die DirectX 9.0-Spezifikation die Unterstützung für Pixel Shader 2.0 an. Das DirectX 9.0c-Update enthält jedoch Pixel Shader 3.0. Obwohl die Karten in der DirectX 9-Klasse angesiedelt sind, unterstützen sie möglicherweise unterschiedliche Funktionssätze. Beispielsweise unterstützt die Radeon 9700 das Shader Model 2.0 und die Radeon X1800 unterstützt das Shader Model 3.0, obwohl beide Karten als DirectX 9-Generation klassifiziert werden können.

Denken Sie daran, dass Entwickler beim Erstellen neuer Spiele die Besitzer alter Computer und Grafikkarten berücksichtigen, denn wenn Sie dieses Benutzersegment ignorieren, werden die Verkäufe geringer sein. Aus diesem Grund sind in Spiele mehrere Codepfade eingebaut. Ein Spiel der DirectX 9-Klasse hat aus Kompatibilitätsgründen höchstwahrscheinlich einen DirectX 8-Pfad und sogar einen DirectX 7-Pfad.Wenn der alte Pfad gewählt wird, verschwinden normalerweise einige virtuelle Effekte, die sich auf neuen Grafikkarten befinden, im Spiel. Aber immerhin kann man auch auf der alten Hardware spielen.

Viele neue Spiele erfordern die Installation der neuesten Version von DirectX, auch wenn die Grafikkarte einer früheren Generation angehört. Das heißt, ein neues Spiel, das den DirectX 8-Pfad verwendet, erfordert immer noch die Installation der neuesten Version von DirectX 9 auf einer Grafikkarte der DirectX 8-Klasse.

Was sind die Unterschiede zwischen den verschiedenen Versionen der Direct3D-API in DirectX? Die frühen Versionen von DirectX – 3, 5, 6 und 7 – waren in Bezug auf die Direct3D-API relativ einfach. Entwickler konnten visuelle Effekte aus einer Liste auswählen und dann ihre Arbeit im Spiel überprüfen. Der nächste große Schritt in der Grafikprogrammierung war DirectX 8. Es führte die Möglichkeit ein, die Grafikkarte mit Shadern zu programmieren, sodass Entwickler zum ersten Mal die Freiheit hatten, Effekte so zu programmieren, wie sie es wollten. Von DirectX 8 unterstützte Pixel Shader-Versionen 1.0 bis 1.3 und Vertex Shader 1.0. DirectX 8.1, eine aktualisierte Version von DirectX 8, erhielt Pixel Shader 1.4 und Vertex Shader 1.1.

In DirectX 9 können Sie noch komplexere Shader-Programme erstellen. DirectX 9 unterstützt Pixel Shader 2.0 und Vertex Shader 2.0. DirectX 9c, eine aktualisierte Version von DirectX 9, enthielt die Pixel Shader 3.0-Spezifikation.

DirectX 10, eine kommende Version der API, wird die neue Version von Windows Vista begleiten. DirectX 10 kann nicht unter Windows XP installiert werden.

HDR-Beleuchtung und OpenEXR HDR

HDR steht für „High Dynamic Range“, hoher Dynamikumfang. Ein Spiel mit HDR-Beleuchtung kann ein viel realistischeres Bild liefern als ein Spiel ohne HDR-Beleuchtung, und nicht alle Grafikkarten unterstützen HDR-Beleuchtung.

Vor dem Aufkommen von Grafikkarten der DirectX-9-Klasse waren GPUs durch die Genauigkeit ihrer Beleuchtungsberechnungen stark eingeschränkt. Bisher konnte die Beleuchtung nur mit 256 (8 Bit) internen Pegeln berechnet werden.

Als Grafikkarten der DirectX-9-Klasse auf den Markt kamen, waren sie in der Lage, Beleuchtung mit hoher Wiedergabetreue zu erzeugen – volle 24 Bit oder 16,7 Millionen Stufen.

Mit 16,7 Millionen Levels und nachdem der nächste Schritt in der Grafikkartenleistung der DirectX 9/Shader Model 2.0-Klasse gemacht wurde, ist HDR-Beleuchtung auch auf Computern möglich. Dies ist eine ziemlich komplexe Technologie, und Sie müssen sie dynamisch beobachten. Vereinfacht gesagt erhöht die HDR-Beleuchtung den Kontrast (dunkle Farbtöne erscheinen dunkler, helle Farbtöne heller) und erhöht gleichzeitig die Menge an Lichtdetails in dunklen und hellen Bereichen. Ein Spiel mit HDR-Beleuchtung fühlt sich lebendiger und realistischer an als ohne.

GPUs, die der neuesten Pixel Shader 3.0-Spezifikation entsprechen, ermöglichen Beleuchtungsberechnungen mit höherer 32-Bit-Präzision sowie Gleitkommamischungen. Daher können Grafikkarten der SM 3.0-Klasse die spezielle HDR-Beleuchtungsmethode von OpenEXR unterstützen, die speziell für die Filmindustrie entwickelt wurde.

Einige Spiele, die nur HDR-Beleuchtung mit der OpenEXR-Methode unterstützen, laufen nicht mit HDR-Beleuchtung auf Shader Model 2.0-Grafikkarten. Spiele, die nicht auf die OpenEXR-Methode angewiesen sind, funktionieren jedoch auf jeder Grafikkarte mit DirectX 9. Oblivion verwendet beispielsweise die OpenEXR-HDR-Methode und erlaubt die Aktivierung von HDR-Beleuchtung nur auf den neuesten Grafikkarten, die die Shader Model 3.0-Spezifikation unterstützen. Zum Beispiel nVidia GeForce 6800 oder ATi Radeon X1800. Bei Spielen, die die Half-Life 2 3D-Engine verwenden, wie Counter-Strike: Source und das kommende Half-Life 2: Aftermath, können Sie HDR-Rendering auf älteren DirectX 9-Grafikkarten aktivieren, die nur Pixel Shader 2.0 unterstützen. Beispiele sind die GeForce-5-Reihe oder die ATi Radeon 9500.

Denken Sie schließlich daran, dass alle Formen des HDR-Renderings ernsthafte Rechenleistung erfordern und selbst die leistungsstärksten GPUs in die Knie zwingen können. Wenn Sie die neuesten Spiele mit HDR-Beleuchtung spielen möchten, ist eine leistungsstarke Grafik ein Muss.

Vollbild-Anti-Aliasing

Vollbild-Anti-Aliasing (abgekürzt als AA) ermöglicht es Ihnen, die charakteristischen "Leitern" an den Grenzen von Polygonen zu eliminieren. Beachten Sie jedoch, dass das Vollbild-Anti-Aliasing viele Rechenressourcen verbraucht, was zu einem Rückgang der Bildrate führt.

Anti-Aliasing hängt stark von der Leistung des Videospeichers ab, sodass eine schnelle Videokarte mit schnellem Speicher in der Lage ist, Vollbild-Anti-Aliasing mit geringeren Auswirkungen auf die Leistung zu berechnen als eine kostengünstige Videokarte. Anti-Aliasing kann in verschiedenen Modi aktiviert werden. Beispielsweise liefert 4x Anti-Aliasing ein besseres Bild als 2x Anti-Aliasing, aber es ist ein großer Leistungseinbruch. Während 2x Anti-Aliasing die horizontale und vertikale Auflösung verdoppelt, vervierfacht sie der 4x-Modus.

Texturfilterung

Alle 3D-Objekte im Spiel sind texturiert, und je größer der Winkel der angezeigten Oberfläche ist, desto verzerrter sieht die Textur aus. Um diesen Effekt zu eliminieren, verwenden GPUs Texturfilterung.

Die erste Filtermethode hieß bilinear und ergab charakteristische Streifen, die für das Auge nicht sehr angenehm waren. Die Situation verbesserte sich mit der Einführung der trilinearen Filterung. Beide Optionen auf modernen Grafikkarten funktionieren praktisch ohne Leistungseinbußen.

Anisotrope Filterung (AF) ist bei weitem die beste Methode, um Texturen zu filtern. Ähnlich wie bei FSAA kann die anisotrope Filterung auf verschiedenen Ebenen eingeschaltet werden. Beispielsweise ergibt 8x AF eine bessere Filterqualität als 4x AF. Wie FSAA erfordert auch die anisotrope Filterung eine gewisse Verarbeitungsleistung, die mit zunehmendem AF-Pegel ansteigt.

Hochauflösende Texturen

Alle 3D-Spiele werden nach bestimmten Spezifikationen gebaut, und eine dieser Anforderungen bestimmt den Texturspeicher, den das Spiel benötigt. Alle nötigen Texturen müssen während des Spiels in den Speicher der Grafikkarte passen, sonst sinkt die Performance dramatisch, da der Zugriff auf die Textur im RAM mit erheblicher Verzögerung einhergeht, ganz zu schweigen von der Auslagerungsdatei auf der Festplatte. Wenn also ein Spieleentwickler mit 128 MB VRAM als Mindestanforderung rechnet, dann sollte das aktive Texturset zu keinem Zeitpunkt 128 MB überschreiten.

Moderne Spiele haben mehrere Textursätze, sodass das Spiel sowohl auf älteren Grafikkarten mit weniger VRAM als auch auf neueren Karten mit mehr VRAM reibungslos läuft. Beispielsweise kann ein Spiel drei Textursätze enthalten: für 128 MB, 256 MB und 512 MB. Es gibt heute nur sehr wenige Spiele, die 512 MB Videospeicher unterstützen, aber sie sind immer noch der objektivste Grund, eine Grafikkarte mit dieser Speicherkapazität zu kaufen. Obwohl die Erhöhung des Arbeitsspeichers kaum bis gar keine Auswirkungen auf die Leistung hat, erhalten Sie eine Verbesserung der visuellen Qualität, wenn das Spiel das entsprechende Texturset unterstützt.

Was müssen Sie über Grafikkarten wissen?

In Kontakt mit

Diplomarbeit

Rasterization Operations Units (ROPs)

Die Rasterisierungseinheiten führen die Operationen des Schreibens der von der Videokarte berechneten Pixel in Puffer und die Operationen ihres Mischens (Blending) durch. Wie oben erwähnt, wirkt sich die Leistung von ROP-Einheiten auf die Füllrate aus, und dies ist eines der Hauptmerkmale von Grafikkarten. Und obwohl sein Wert in letzter Zeit etwas abgenommen hat, gibt es immer noch Fälle, in denen die Anwendungsleistung stark von der Geschwindigkeit und der Anzahl der ROP-Blöcke abhängt. Meistens liegt dies an der aktiven Verwendung von Nachbearbeitungsfiltern und aktiviertem Anti-Aliasing bei hohen Bildeinstellungen.

Automatisierung der Buchhaltung für Bankgeschäfte und deren Implementierung im Programm "1C Accounting"

Wenn alle Aktivitäten des Unternehmens in Geschäftsprozesse unterteilt werden können, können die Prozesse in kleinere Komponenten unterteilt werden. In der Methodik zum Aufbau von Geschäftsprozessen wird dies als Dekomposition bezeichnet ...

PC-Interna und Peripherie

Erforschung eines diskreten Bevölkerungsmodells mit Model Vision Studium

Der grundlegende "Baustein" einer Beschreibung in MVS ist der Block. Ein Block ist ein aktives Objekt, das parallel und unabhängig von anderen zeitkontinuierlichen Objekten funktioniert. Der Block ist ein gerichteter Block ...

Verwendung von LMS Moodle im Bildungsprozess

Für jeden Kurs ist das Vorhandensein eines zentralen Bereichs obligatorisch. Es darf keine linken und rechten Spalten mit Blöcken geben. Aber die verschiedenen Blöcke, aus denen das Moodle-Lernmanagementsystem besteht, erhöhen die Funktionalität ...

Studium der Lehrkräftefähigkeiten im Fernlernsystem Moodle

Um Ihrem Kurs neue Ressourcen, Elemente oder Blöcke hinzuzufügen oder vorhandene zu bearbeiten, klicken Sie auf die Schaltfläche „Bearbeiten“ im Steuerungsblock. Die allgemeine Ansicht des Kursfensters im Bearbeitungsmodus ist in Abbildung 2.5 dargestellt: Abbildung 2...

Simulation in der Softwareentwicklung

Das Vokabular der UML-Sprache umfasst drei Arten von Bausteinen: Entitäten; Beziehungen; Diagramme. Entitäten sind Abstraktionen, die die Grundelemente eines Modells sind ...

Simulation der Arbeit in der Bibliothek

Operatoren - Blöcke bilden die Logik des Modells. Es gibt etwa 50 verschiedene Arten von Blöcken in GPSS/PC, jeder mit einer bestimmten Funktion. Hinter jedem dieser Blöcke steht ein entsprechendes Übersetzer-Unterprogramm...

Hauptmerkmale von CSS3

Sie können den Text mit einer Vielzahl von Konversationsblöcken, die wiederum auf der Grundlage von CSS3-Technologien erstellt wurden, auf originelle Weise gestalten. (Abb. 5.) Abb. 5...

Hauptmerkmale von CSS3

Der Lichtdurchlässigkeitseffekt des Elements ist im Hintergrundbild gut sichtbar und hat sich in verschiedenen Betriebssystemen verbreitet, weil es stilvoll und schön aussieht ...

Erstellung eines Textdokuments gemäß STP 01-01

Erweiterungskarten oder Karten (Karten), wie sie manchmal genannt werden, können verwendet werden, um Geräte zu warten, die mit dem IBM-PC verbunden sind. Sie können verwendet werden, um zusätzliche Geräte (Grafikkarten, Festplattencontroller usw.) anzuschließen...

Aufschlüsselung und Reparatur der Grafikkarte

Diese Blöcke arbeiten mit Shader-Prozessoren aller angegebenen Typen zusammen, sie wählen und filtern die Texturdaten, die zum Erstellen der Szene erforderlich sind ...

Registrierungssoftware für den Produktionsprozess für ein automatisiertes Unternehmenssteuerungssystem der Elektronikindustrie

Es gibt 11 Arten von Blöcken, aus denen ein spezifisches MES-System für eine bestimmte Produktion erstellt werden kann...

Entwicklung eines Softwarepakets zur Schadensberechnung bei Großreparaturen

Auf der niedrigsten Granularitätsebene werden Oracle-Datenbankdaten in Datenblöcken gespeichert. Ein Datenblock entspricht einer bestimmten Anzahl von Bytes an physischem Speicherplatz auf der Festplatte ...

Entwicklung von Hard- und Software für die Steuerung von Transportplattformen in Simatic Step-7

Systemblöcke sind Bestandteile des Betriebssystems. Der Gestank kann durch Programme (Systemfunktionen, SFC) oder Daten (Systemdatenbausteine, SDB) gerächt werden. Systemblöcke gewähren Zugriff auf wichtige Systemfunktionen...

Im Computer enthaltene Geräte

Erweiterungskarten oder Karten (Karten), wie sie manchmal genannt werden, können verwendet werden, um Geräte zu warten, die mit dem IBM-PC verbunden sind. Sie können verwendet werden, um zusätzliche Geräte (Grafikkarten, Festplattencontroller usw.) anzuschließen...



Wird geladen...
Spitze