Radeon X1000 und GeForce 7 im Vergleich: Ein zweiter Blick mit neuen Treibern

 3/15
Wolfgang Andermahr
84 Kommentare

Pixel-Shader-Performance

Während nVidia bereits seit dem NV40-Chip in Form der GeForce-6800-Serie das Shader-Model 3 und somit auch die Pixel-Shader der Version 3.0 beherrscht, hat die Entwicklung bei ATi deutlich länger gedauert. Mit der Präsentation der Radeon-X1000-Reihe haben die Kanadier nun denselben Schritt gewagt und bieten ebenfalls jene Shader-Version an. Sowohl auf den gängigen nVidia-, als auch auf den ATi-Karten ist die Implementierung der Pixel-Shader 3.0 identisch. Da es leider nicht ohne Weiteres möglich ist, mit speziellen Programmen nur die Pixel- oder Vertex-Shader-Leistung zu messen, haben wir uns auf vier aktuelle 3D-Anwendungen beschränkt, in denen zwischen dem Shader-Model 3 und dem Vorgänger der Version SM2 umgeschaltet werden kann. Alle Messungen wurden in 1600x1200 ohne Anti-Aliasing und dem anisotropen Filter erzielt.

PS-Performance
  • 3DMark05:
    • 7800 GTX (PS 3.0)
      135,2
    • 7800 GTX (PS 2.0)
      128,0
    • X1800 XT (PS 3.0)
      108,3
    • X1800 XT (PS 2.0)
      101,4
  • Earth 2160:
    • 7800 GTX (PS 1.1)
      54,7
    • 7800 GTX (PS 2.0)
      50,3
    • 7800 GTX (PS 3.0)
      50,3
    • X1800 XT (PS1.1)
      17,7
    • X1800 XT (PS 2.0)
      17,3
    • X1800 XT (PS 3.0)
      16,9
  • Splinter Cell 3:
    • X1800 XT (PS 2.0)
      69,2
    • X1800 XT (PS 3.0)
      68,6
    • X1800 XT (PS1.1)
      66,1
    • 7800 GTX (PS 3.0)
      63,1
    • 7800 GTX (PS 1.1)
      60,7
    • 7800 GTX (PS 2.0)
      0,0
      Nicht möglich
  • Far Cry:
    • X1800 XT (PS 3.0)
      81,1
    • 7800 GTX (PS 3.0)
      78,2
    • X1800 XT (PS 2.0)
      77,7
    • 7800 GTX (PS 2.0)
      76,4
Einheit: Bilder pro Sekunde (FPS)

Im 3DMark05 liegt die GeForce 7800 GTX vor der Radeon X1800 XT, was man durch die hohe Pixel-Shader-Leistung aufgrund der zwei rechenstarken Shader-Einheiten pro Pixel-Pipeline erklären kann. Beide Karten können in dem synthetischen Benchmark recht deutlich von den moderneren Shader-Anweisungen profitieren. In einem speziellen Pixel-Shader-Test, den man im Spiel Earth 2160 vorfindet, zeigt sich die GeForce 7800 GTX einer Radeon X1800 XT um Meilen überlegen, was man aber wohl auf einen Treiberfehler zurückführen kann. Somit sind die Ergebnisse nicht vergleichbar.

In Splinter Cell 3 zeigt sich die Radeon X1800 XT generell dem nVidia-Pendant überlegen. Nichtsdestotrotz können beide Karten von dem Shader-Model 3 gering gegenüber den Shadern der Version 1.1 punkten. Zusätzlich ist es auf der ATi-Karte möglich, das Shader-Model 2.0 zu aktivieren, was eine leicht bessere Performance zeigt, je nach Spielabschnitt aber eine schlechtere Bildqualität aufweist. Das „Pier-Level“ in dem Shooter Far Cry kann ebenfalls leicht von dem Shader-Model 3 profitieren, wobei auch hier erneut die ATi-Adaption vorne liegt. Der Abstand fällt aber geringer als in Splinter Cell 3 aus.

Vertex-Shader-Performance

Die Vertex-Shader-Einheiten des R5x0 sind (wie die des G70-Chips von nVidia) kompatibel zu den Shader-3.0-Spezifikationen. Allerdings hat ATi eine kleine Lücke in den Spezifikationen ausgenutzt, womit der Radeon-X1k-Chip über ein Feature nicht verfügt: „Vertex Texture Fetch“. Vertex Texture Fetch ermöglicht es, dass der Vertex Shader Texturen direkt aus dem Texturspeicher ohne unnötige Umwege auslesen kann. Der R520 beherrscht dieses Feature allerdings nicht, da sich ATi nach eigenen Angaben zwischen dem Mehrnutzen durch VTF und dem dazu nötigen Transistorenverbrauch entscheiden musste. Zudem würde Vertex Shader Fetch angeblich die Latenzen steigern, was die Entwickler vermeiden wollten.

Altenativ benutzt ATi ein Verfahren namens Render to Vertex Buffer, kurz R2VB. Dies soll denselben Effekt wie VTF haben, wobei der Pixel-Shader diese Aufgabe übernehmen muss. Der Pixel-Shader schreibt die Daten in einen Buffer im Speicher, der dann wiederum vom Vertex-Shader gelesen werden kann. Da Render to Vertex Buffer bis jetzt jedoch noch kein fester Bestandteil der DirectX-Spezifikation ist, muss der Entwickler, ähnlich wie beim Feature „Geometry Instancing“ auf einer Radeon X8x0, die Hardware vorher abfragen, ob R2VB vorhanden ist. Eventuell wird diese Aufgaben in späteren Catalyst-Versionen auch vom Treiber übernommen. Dem normalen Nutzer wird das Fehlen von Vertex Texture Fetch voraussichtlich zu keiner Zeit Kopfschmerzen bereiten, da fast kein Spiel das Feature zum jetzigen Zeitpunkt nutzt. Einzige Ausnahme stellt „Pacific Fighters“ dar, das auf ATi-Karten nicht in der höchsten Detailstufe läuft.

VS-Performance (3DMark05)
  • Radeon X1800 XT:
    • VS 2.0
      57
    • VS 3.0
      57
  • GeForce 7800 GTX:
    • VS 3.0
      43
    • VS 2.0
      43
Einheit: MVertices/s

Da es, wie bereits erwähnt, kaum möglich ist, die Vertex-Shader-Leistung ohne Abhängigkeit anderer Ressourcen zu messen, wird dieser Abschnitt bezüglich der Benchmarks äußerst kurz ausfallen. Als kleinen Vermerk haben wir den Vertex-Shader-Test im 3DMark05 durchlaufen lassen, in dem die Radeon X1800 XT erwartungsgemäß die GeForce 7800 GTX weit hinter sich lässt. Grund dafür ist der deutlich höhere Geometriedurchsatz, der sich – außer im 3DMark05 – aber in kaum einem Spiel bemerkbar macht.