Die Analyse zeigt, warum Nvidia-Grafikchips stromsparend sind - Rechnen - 2019

Anonim

Ein aktueller Bericht von David Kanter von Real World Technologies untersucht, warum von Nvidia zur Verfügung gestellte Grafikchips - nämlich solche, die auf den Maxwell- und Pascal-Architekturen basieren - besser abschneiden als ihre theoretischen Spitzenwerte und warum sie effizienter als konkurrierende Grafikchips sind. Kurz gesagt, die Pixelausgabe auf Nvidia-GPUs wird durch sogenannte kachelbasierte Sofortmodus-Rasterisierer gepuffert, die schnell und energieeffizient sind. Die Grafikchips des Wettbewerbers basieren auf langsameren, konventionellen Vollbild-Sofortmodus-Rasterisierern.

Laut Kanter gibt es seit den 1990er Jahren kachelbasierte Rasterungen, die zuerst in der PowerVR-Architektur auftauchen und von ARM und Qualcomm in die GPUs ihrer mobilen Prozessoren übernommen werden. Bis Nvidia dieses System in seine Maxwell GM20x-Architektur einführte, wurde die kachelbasierte Rasterung nicht erfolgreich in Desktop-Grafikchips implementiert.

Kachelbasierte Rasterung bedeutet im Wesentlichen, dass jede dreieckbasierte, dreidimensionale Szene in Kacheln aufgeteilt wird und jede Kachel auf dem Grafikchip selbst in Pixel zerlegt (gerastert) wird, um auf einem zweidimensionalen Bildschirm "gedruckt" zu werden. Im Gegensatz dazu verwenden Vollbild-Sofortmodus-Rasterizer mehr Arbeitsspeicher und mehr Leistung, indem sie die gesamte Szene in einem Durchgang (oder Scan) in Pixel zerlegen.

"Durch die Verwendung von gekachelten Bereichen und die Pufferung der Rasterizer-Daten auf dem Chip wird die Speicherbandbreite für das Rendering reduziert, wodurch die Leistung und die Energieeffizienz verbessert werden", erklärt Kanter. "Übereinstimmend mit dieser Hypothese zeigen unsere Tests, dass Nvidia-GPUs die Kachelgröße ändern, um sicherzustellen, dass die Pixelausgabe aus der Rasterung in einen Puffer oder Cache mit fester Größe auf dem Chip passt."

Kanter erklärt, dass mobile GPUs von Apple und anderen Geräteherstellern eine Methode verwenden, die als kachelbasiertes verzögertes Rendering bezeichnet wird, bei dem Geometrie- und pixelbasierte Arbeit in zwei getrennten Durchgängen ausgeführt wird. Die Szene ist in Kacheln unterteilt, Dreiecke werden für jede Kachel auf einmal verarbeitet, und danach erfolgt die Pixelschattierung für jede Kachel.

Nvidia verwendet Berichten zufolge jedoch eine Kachel-basierte "Sofort" -Technik in seinen Desktop-GPUs, die den Bildschirm in Kacheln aufteilt und dann kleine Gruppen von Dreiecken innerhalb der Kachel rasterisiert. Die Dreiecke werden typischerweise auf dem Chip gepuffert oder zwischengespeichert, sagt er, was wiederum die Leistung verbessert und Strom spart.

In einer Demonstration mit einem Werkzeug namens Triangles. HLSL läuft auf einer AMD Radeon HD 6670 GPU und Windows 10. Er zeigt, wie AMDs Grafikchip zwölf identische, flache Objekte auf dem Bildschirm rendert, die sich von rechts nach links und zeilenweise bewegen, bis sie nacheinander von oben gerendert werden der Bildschirm nach unten, einander zu überschreiben. Er zeigte diese Technik, indem er einen Schieberegler bewegte, der die Anzahl der Pixel festlegte, die auf dem Bildschirm gerendert werden konnten. Stellen Sie sich einen unsichtbaren Drucker vor, der schneller über den Bildschirm läuft als das menschliche Auge vollständig erkennen kann.

Nach der Enthüllung der aktuellen Ziehtechnik von AMD wird die Demonstration auf ein anderes System mit dem gleichen Werkzeug, Windows 10, und einer Nvidia GeForce GTX 970 Grafikkarte verschoben. Hier werden Sie feststellen, dass die gestapelten zwölf Objekte gleichzeitig gerendert werden, wenn der Rendervorgang angehalten wird, wobei zwei fertige Kacheln auf der linken Seite und fünf weitere Kacheln in verschiedenen Zuständen in einem Schachbrettmuster auf der rechten Seite erscheinen. Insgesamt verläuft der Rasterungspfad von links nach rechts und von oben nach unten.

Alles in allem rasterisiert Nvidia eine Kachel, die einen Teil aller Objekte enthält, bevor sie zur nächsten Kachel weitergeht. AMD hingegen rastert jedes Objekt druckerartig zuerst von oben nach unten, bevor es an den Anfang zurückkehrt und das nächste Objekt rendert. Noch interessanter wird es, wenn Nvidias GeForce GTX 970 im Testbett installiert wird und noch größere Kacheln mit einem anderen Muster freilegt.

Um diese neueste Untersuchung zu überprüfen, sollten Sie das Video, das oben für die vollständige Demonstration 19:45 eingebettet ist, treffen.