Online-Abo
  • Login
  • Registrieren
Games World
  • Nvidia FCAT: Neue Messmethode für Spieleleistung - die Hintergründe

    FCAT - das steht für Frame Capture and Analysis Tool und ist der Oberbegriff zu einer neuartigen, interessanten Messmethode, welche Nvidia uns zur Verfügung gestellt hat. Da bei eventuell mitlesenden Fanboys nun sämtliche Alarmglocken schrillen dürften, folgen nun ein paar Worte zur Erklärung.

    Frame- also einzelbildbasierte Analyse der Grafikkartenleistung ist nicht neu, bei PCGH kam sie erstmals 2005 zum Einsatz und erlebte mit den Multi-GPU-Karten ab 2008 eine Renaissance. Hierbei wird nicht, wie bei vielen Benchmarks üblich, ein Fps-Wert pro Sekunde ermittelt und per simpler Durchschnittswertbildung eine Leistungsangabe generiert. Bei der Frame-Analyse wird die Berechnungszeit jedes einzelnen Bildes erfasst. Was bei PCGH bisher von einem internen Tool bzw. Fraps erledigt wurde, hat jedoch eine Schwäche: Die Programmwerkzeuge klinken sich in der Pipeline am "Present Call" ein. Hier sendet die Game-Engine den Renderbefehl an die Grafikkarte. Der DirectX- sowie der Treiber-Overhead bleiben dabei jedoch außen vor, denn auch hier besteht die Möglichkeit (oder Gefahr), dass es zu Verzögerungen kommt.

    Frei nach dem Motto: "Was zählt ist auf'm Monitor" ist verlässlichste Methode, das Spielgefühl zu ermitteln die tatsächliche Displaydarstellung. Und genau hier setzt FCAT, welches vor uns bereits einige US-Webseiten ausprobieren konnten, an. Mithilfe einer DL-DVI-Capture-Karte eines Drittherstellers kann die Ausgabe einer Grafikkarte in Full-HD verlustfrei mit genau den 60 Fps aufgezeichnet werden, welche ein üblicher LCD-Monitor darstellt (auch 2.560 x 1.440 Bildpunkte sind bei 60 Fps mit der Karte gerade noch möglich, 1600p dagegen nicht mehr).

    FCAT Capture: Das erste und letzte Bild sind kaum zu sehen, das mittlere Bild nimmt den Löwnanteil für sich in Anspruch. FCAT Capture: Das erste und letzte Bild sind kaum zu sehen, das mittlere Bild nimmt den Löwnanteil für sich in Anspruch. Quelle: PC Games Hardware Für eine Analyse benötigt man allerdings ein weiteres Werkzeug, um die Einzelbilder voneinander trennen zu können. Denn Leistungsmessungen sind nur bei abgeschalteter Vsync sinnvoll und auch viele Gamer nutzen diese Einstellung inzwischen zum Spielen. Ein solches, nicht synchronisiertes Bild besteht aber aus mehreren Einzelbildern, die die Grafikkarte "rausschießt" sobald sie fertig gerendert sind. Je nach deren Berechnungsdauer kann ein dargestelltes Bild aus unterschiedlichen vielen Game-Engine-Frames bestehen - oder eben eines dieser Bilder sich auch über mehrere Monitorbilder erstrecken, wenn die Fps-Rate unter 60 liegt.

    FCAT Capture: Beide Game-Engine-Frames tragen gleichmäßig zum Monitorbild bei. FCAT Capture: Beide Game-Engine-Frames tragen gleichmäßig zum Monitorbild bei. Quelle: PC Games Hardware Um die Verteilung, also den Anzeigeanteil eines Game-Engine-Frames am Gesamtbild zu bestimmen, hat Nvidia ein kleines Plug-In entwickelt. Dieses färbt einen Streifen am linken Bildrand vollfarbig ein und dient damit einem Auswertungsprogramm als Indikator. Dieses wiederum analysiert anhand der Zeilenzahl des Streifens, wie viel Anteil am Gesamtbild ein solches Game-Engine-Bild hat. Im vertikal synchronisierten Idealfall mit 60 Fps hat jeder Streifen die volle Bildhöhe von beispielsweise 1.080 Zeilen in der Full-HD-Darstellung.

    Doch dieser Idealfall tritt nur sehr selten ein. Oft ist die Bildrate höher als 60 Fps, dann gibt es zwei oder mehr Farbbalken auf dem Monitorbild wie in den Beispielen links; ist die Bildrate geringer als 60 Fps, wird ein Bild länger als 1.080 Zeilen angezeigt. Das ideale Spielgefühl tritt bei einer möglichst gleichmäßigen Verteilung der Berechnungs- und Darstellungszeiten ein.

    Abweichungen davon können auf zweierlei Art störend wirken: Werden Bilder zu lange dargestellt, ruckelt die komplette Spieldarstellung - den meisten Spielern fällt das bei weniger als 30 Fps besonders auf. Ist das System jedoch leistungsfähig genug, kann eine besonders ungleichmäßige Verteilung ebenfalls unerwünschte Folgen haben - dann zum Beispiel, wenn manche Game-Engine-Frames lediglich eine geringe Anzahl von Zeilen zum fertigen Bild beitragen, dafür folgende oder vorhergehende aber umso länger dargestellt werden, tragen die Kurz- oder gar überhaupt nicht angezeigten Bilder kaum zur gefühlten Fps-Rate bei, zählen bei einer normalen Fraps-Messung jedoch genauso zur durchschnittlichen Bildrate - ein stockender Spielverlauf bei angezeigt hohen Fps ist die Folge.

    Die Aufbereitung der gewonnenen Daten könnte als illustratives Verlaufsdiagramm erfolgen, welches jedoch wenig exakte Schlüsse zulässt oder als Perzentil (Überschreitungswahrscheinlichkeit, wie die folgenden beiden Diagramme, welche NICHT unsere Meßergebnisse sind, sondern aus Nvidias Präsentation stammen, verdeutlichen.

    Nvidia FCAT Präsentation: Battlefield 3 - hier funktioniert Nvidias Frame-Metering nicht optimal, sodass größere Abweichungen zwischen Single-Card und SLI-Gespann zu verzeichnen sind. Nvidia FCAT Präsentation: Battlefield 3 - hier funktioniert Nvidias Frame-Metering nicht optimal, sodass größere Abweichungen zwischen Single-Card und SLI-Gespann zu verzeichnen sind.
    Nvidia FCAT Präsentation (Perzentil-Darstellung): Battlefield 3 - hier funktioniert Nvidias Frame-Metering nicht optimal, sodass größere Abweichungen zwischen Single-Card und SLI-Gespann zu verzeichnen sind. Nvidia FCAT Präsentation (Perzentil-Darstellung): Battlefield 3 - hier funktioniert Nvidias Frame-Metering nicht optimal, sodass größere Abweichungen zwischen Single-Card und SLI-Gespann zu verzeichnen sind.
    Wir arbeiten derzeit am Aufbau eines entsprechenden Systems sowie der entsprechenden Darstellung der erzeugten Daten und würden uns für Ihre Meinung zu dieser Art von Messung interessieren? Gute Ergänzung zu herkömmlichen Methoden? Das einzig Wahre? Oder zu kompliziert für den Hausgebrauch?

    Wissenswert: Mehr Informationen zum Thema finden Sie in:
    AMD Radeon Treiber Download: Crimson Relive Edition 17.1.1 Beta
  • Stellenmarkt

    Es gibt 62 Kommentare zum Artikel
    Von Olstyle
    Futuremark hat z.B. schon länger kein Problem damit Engines raus zu hauen die viel zu langsam für das Gebotene laufen.
    Von Skysnake
    So lange die Ergebnisse die kommen ihnen gefallen, würden das vielleicht sogar einige machen, aber was ist, wenn ihnen…
    Von ruyven_macaran
    Wenn z.B. ein interessierter Grafikkartenhersteller so nett wäre, die grundlegenden x-2 Zeilen Code zur Verfügung zu…
    Von Skysnake
    Jup, das wäre die Optimallösung.Das wirst du aber kaum realisiert bekommen, weil die Hersteller dafür x-Zeilen Code…
    Von ruyven_macaran
    Imho ließen sich zwei Fliegen mit einer Klappe schlagen, in dem man das ganze nicht über ein GPU-orientiertes Tool,…
      • Von Olstyle Moderator
        Futuremark hat z.B. schon länger kein Problem damit Engines raus zu hauen die viel zu langsam für das Gebotene laufen.
      • Von Skysnake Lötkolbengott/-göttin
        So lange die Ergebnisse die kommen ihnen gefallen, würden das vielleicht sogar einige machen, aber was ist, wenn ihnen die Ergebnisse nicht gefallen? ;D
      • Von ruyven_macaran Trockeneisprofi (m/w)
        Wenn z.B. ein interessierter Grafikkartenhersteller so nett wäre, die grundlegenden x-2 Zeilen Code zur Verfügung zu stellen, dann kann der Programmierer in y Minuten diese sicherlich als Option einfügen. Und ob das Spiel in diesem inoffiziellen Benchmarkmodus fehlerfrei läuft, ist dann auch nicht so wichtig, solange es meistens klappt.
        Unterm Strich also y Minuten Programmiererzeit als Aufwand und ZZZ werbewirksame Testartikel, in denen man als primärer Benchmark verwendet wird, als Nutzen...
        Zumindest von den Engine-verkaufenden Studios und den Benchmarkentwicklern würde ich sowas erwarten.
      • Von Skysnake Lötkolbengott/-göttin
        Jup, das wäre die Optimallösung.

        Das wirst du aber kaum realisiert bekommen, weil die Hersteller dafür x-Zeilen Code einfügen müssen, und da muss ein Programmierer dann eben y Stunden dran sitzen, um das so zu machen, das nichts kaputt geht usw usw.

        Ganz abgesehen davon haben die Entwickler auch gar nicht den Anreiz so etwas JETZT zu machen. Wenn du glück hast, vielleicht in 2-3 Jahren, mit einer neuen Engine. Man könnte ja ansonstne vielleicht sehen wie schlecht die Engine ist
      • Von ruyven_macaran Trockeneisprofi (m/w)
        Zitat von Olstyle
        Solang der Treiber "irgendwas" einfärbt weiß man nie ob jetzt wirklich aufeinander folgende Frames eingefärbt wurden oder z.B. jedes Frame zwei Farben bekommt("juhu, doppelte FPS !!!11elf").
        Imho ließen sich zwei Fliegen mit einer Klappe schlagen, in dem man das ganze nicht über ein GPU-orientiertes Tool, sondern in Zusammenarbeit mit den Entwicklern über die Engine löst. Es sollte nun wirklich kein großer Aufwand sein, ein Spiel im Benchmarkmodus für jeden zweiten Frame den Zeilenanfang anders einzufärben. Und dieses Verfahren wäre dann auch unabhängig von sämtlichen Grafikakrten und vor allem kann es den Renderprozess nicht nachträglich stören.

        Viel interessanter als eine ggf. etwas genauere Erfassung der Frametimes (wie groß sollen die Variationen in der Zeitspanne zwischen der Vollendung eines Bildes -erfasst via fcat- und der Anforderung des nächsten Bildes -erfasst via fraps, etc.- denn bitte schön sein? Schon der Abstand sollte minimal sein, weil er 100% verschenkte GPU-Leistung repräsentiert, also gibts da auch nicht viel, was variieren könnte) finde ich aber, dass endlich mal wieder jemand Percentile ins Gespräch bringt. Davon hat man seit PCGH-Spielbarkeitsanalyse, die am mangelnden Leserverständnis scheiterte, nichts mehr gehört (ausgenommen die sich ewig wiederholenen Anregungen eines gewissen Moderators ) und stattdessen weiterhin die wenig informativen avg. fps und die riskanten min. fps vorgesetzt bekommen. Von Multi-GPU-Vergleichen mal ganz zu schweigen.
  • Print / Abo
    Apps
    PC Games Hardware 02/2017 PC Games 02/2017 PC Games MMore 02/2017 play³ 02/2017 Games Aktuell 02/2017 buffed 12/2016 XBG Games 01/2017
    PCGH Magazin 02/2017 PC Games 02/2017 PC Games MMORE Computec Kiosk On the Run! Birdies Run
article
1062701
Grafikkarten
Nvidia FCAT: Neue Messmethode für Spieleleistung - die Hintergründe
FCAT - das steht für Frame Capture and Analysis Tool und ist der Oberbegriff zu einer neuartigen, interessanten Messmethode, welche Nvidia uns zur Verfügung gestellt hat. Da bei eventuell mitlesenden Fanboys nun sämtliche Alarmglocken schrillen dürften, folgen nun ein paar Worte zur Erklärung.
http://www.pcgameshardware.de/Grafikkarten-Grafikkarte-97980/Tests/Nvidia-FCAT-1062701/
31.03.2013
http://www.pcgameshardware.de/screenshots/medium/2013/03/FCAT_-_Gesamtkunstwerk.jpg
tests