Accelerated Graphics Port

Der Accelerated Graphics Port (AGP) ist eine Anschlussnorm auf IBM-PC-Mainboards zur direkten Verbindung der Grafikkarte mit dem Chipsatz/Northbridge. Er basiert technologisch auf dem PCI-Bus.
Sinn

AGP benutzt den normalen Arbeitsspeicher (RAM) des PCs, um dort das Monitorbild, Texturen, Z-Buffer-, Alpha-Blending- und andere Grafikdaten zu hinterlegen, sobald der Grafikspeicher auf der Karte dafür nicht mehr ausreicht. Der Port stellt ein kohärentes Speichermanagement zur Verfügung, das ein schnelles Lesen von im Speicher verteilten Daten in sogenannten „Bursts“ ermöglicht. Durch die Benutzung von existierendem Systemspeicher reduziert AGP die Kosten für High-End-Grafiksysteme. Es erlaubt auch die effizientere Nutzung des Framebuffer-Speichers und beschleunigt so ebenfalls 2D-Grafik. Der AGP-Slot wird auch von einigen RAID-Controllern aufgrund seiner höheren Transferrate als Steckplatz anstelle von PCI benutzt, obwohl er eigentlich nicht dafür entwickelt worden ist. AGP ist kein Bus sondern eine Punkt-zu-Punkt-Verbindung. Es gibt einige wenige Hauptplatinen mit mehreren unabhängigen AGP-Steckplätzen (denen dann jeweils ein eigener Controller auf der Hauptplatine zugeordnet sein muss), im Normalfall ist aber nur ein AGP-Slot vorhanden.
AGP-Begriffe
Aperture Size ist eine Menge an Arbeitsspeicher, die der Grafikchip über den AGP-Port zur Speicherung von Texturen verwenden kann. Er wird auch als AGP Memory bezeichnet und sollte günstige Grafikkarten durch geringere Mengen lokalen, auf der Grafikkarte verbauten Speichers ermöglichen. Der Aperture-Bereich wird vom Betriebssystem nicht ausgelagert, um hohe Geschwindigkeit zu sichern, ist im Vergleich zum lokalen Grafik-Speicher jedoch rund 30 % langsamer[1]. Es gibt zwei Modi der Verwendung, deren Bezeichnung oft vermischt wird. Im DiME-Modus (Direct Memory Execute) kann der Grafikchip nur Texturen aus dem Aperture-Bereich zur Fertigstellung eines Bildes verwenden, sein lokaler Speicher wird ausschließlich für Rendering und Framebuffer verwendet.[2] Der Intel-i740-Chip nutzte diesen Modus zur Demonstration der Aperture, obwohl er auch zum DiMEL-Modus (Direct Memory Execute and Local Memory) fähig war. Dieser Modus erlaubt die sinnvolle Kombination aus lokalem und AGP-Speicher. Hierzu werden die meistverwendeten Texturen lokal gehalten, was einem Textur-Cache des Grafikchips entspricht. Dieses Vorgehen beherrschten zuvor auch manche PCI-Grafikkarten; AGP bewirkte mit DiMEL jedoch den Vorteil der schnelleren AGP-Bandbreite zum Arbeitsspeicher sowie die Sicherheit, dass Texturen nicht auf die Festplatte ausgelagert werden.
System Memory bezeichnet normalen Arbeitsspeicher außerhalb der Aperture Size, welcher auch AGP-Grafikkarten wie ihren Vorgängern zur Verfügung steht. Der wohl erste Chip, der diesen Speicher nutzte, war der in vielerlei Hinsicht exotische nVidia NV1[3].
GART – Die zum Auslagern von Texturen vorgesehene Aperture Size wird im Arbeitsspeicher erst bei Bedarf reserviert. Zuvor steht sie dem System für andere Zwecke zur Verfügung. Kommt sie dann zum Einsatz, findet der im Mainboardchipsatz befindliche Speicher-Controller kaum einen zusammenhängenden Speicherabschnitt dieser Größe. Daher werden die Daten verteilt (fragmentiert) abgelegt. Dem Grafikchip wird jedoch ein zusammenhängender Speicher vermittelt. Die Übersetzung übernimmt eine GART (Graphics Address Remapping Table)[4]. Diese ähnelt der Memory Management Unit eines Hauptprozessors.
Sideband Adressing ist die zeitversetzte Übermittlung von Adressen auf dem AGP. Auf diesen acht „Sideband lines“ kann der Grafikchip neue Daten anfordern, während die aktuellen noch auf den 32 Adress- und Datenleitungen transferiert werden. Damit stehen die neuen Daten dann direkt nach Versendung der aktuellen zur Verfügung.
Fast-Writes wurde erst mit AGP 2.0 eingeführt und zuerst von den Nvidia-Geforce-256-Grafikkarten umgesetzt.[5] Dabei können Grafikkarte und CPU Daten direkt austauschen, anstatt sie erst in den Arbeitsspeicher zu schreiben und von dem Empfänger nochmals von dort lesen zu lassen. Diese Transfer-Dopplung ohne Fast-Writes halbiert folglich effektiv die RAM-Bandbreite. Zum Tragen kommt das, sobald die Grafikkarte entsprechend viele Daten anfordert. Fast-Writes behebt dies und umfasst allen Datenaustausch, 2D wie 3D. Oft unterstützt die Grafikkarte jedoch AGP-Modi, die sie mit Ihrer Rechenleistung gar nicht auslasten kann. Speziell im Einsteigersegment wurden hohe AGP-Modi mehr wegen ihrer Vermarktungswirkung implementiert. Fehlt hier das Fast-Writes-Feature, bewirkt das demnach genauso wenig Nachteil wie bei allen AGP-Mainboards, bei denen die RAM-Bandbreite etwa dem Doppelten der AGP-Datenrate entspricht (wie bei Modellen mit Dual-Channel-DDR). Zudem achteten Spielehersteller meist auf eine möglichst bandbreitenschonende Programmierung, so dass die Maximalauslastung des AGP und damit der Bedarf an Fast-Writes seltener zustande kam. Herausforderung bei der Fast-Writes-Umsetzung ist ein sauberes Daten-Signal. Daher deaktivierte Intel im 815-Chipsatz diese Funktion ebenso wie der ATI-Catalyst-Treiber in als instabil diagnostizierten Systemen. Einen entsprechenden Test vollzieht er nach seiner Installation. Fast-Writes ist durch Heruntersetzen des AGP-Modus oft möglich, wo es zuvor instabil lief und kann so dennoch zu einer Geschwindigkeitssteigerung verhelfen. Dies erfordert jedoch individuelle Messungen mittels Benchmarks. Fast-Writes ist für den AGP-2x-Modus aufwärts verfügbar.
AGP als Auslaufmodell
Mit der neuesten Version AGP 8x ist diese Technik zu Ende entwickelt, da sich aufgrund von Timing-Problemen bei hohen Taktungen, die durch die parallele Datenübertragung entstehen, und dem dadurch zunehmend komplizierter werdenden Platinendesign die Geschwindigkeit nicht weiter steigern lässt. Auch das besondere Merkmal von AGP, eine schnelle Punkt-zu-Punkt-Verbindung zum Arbeitsspeicher anzubieten, hat inzwischen an Wichtigkeit verloren, da durch den starken Preisverfall bei Speicherchips die meisten Grafikkarten damit üppig ausgestattet sind. Dazu kommt, dass AGP als Speziallösung für Grafikkarten konzipiert ist, aber auch immer mehr andere Komponenten, die bis dahin immer noch über PCI oder PCI-X angebunden wurden, höhere Anforderungen bezüglich der Datenübertragungsrate aufweisen. Unter anderem mit dieser Motivation hat die PCI-SIG den Standard PCI-Express entworfen, der sowohl PCI als auch AGP beerbt und dabei eine noch größere Datenübertragungsrate als AGP bietet. Seit Mitte 2006 wurden kaum noch neue Hauptplatinen mit AGP-Unterstützung vorgestellt, auch Grafikkarten für den AGP-Slot sind selten geworden.
Weblinks
- Hotline-Eintrag der Zeitschrift c't aus dem Jahr 2002
- Erläuterungen zum Thema AGP – enthält auch eine Liste möglicherweise betroffener Grafikkarten
- AGP 1.0& bis 3.0 und Kompatibilität untereinander
- Hilfsprogramm für Microsoft Windows – zeigt die Größe des gesamten und des freien Speichers auf der AGP-Grafikkarte an
- Beschreibung der AGP-Slot-Sorten (englisch)
- AGP-Steckerbelegung (deutsch)
- Signal- und Spezifikationsdetails (englisch)
Einzelnachweise
- ↑ http://www.thg.ru/graphic/19980702/print.html Geschwindigkeit von AGP-Memory im Vergleich zu lokalem VRAM
- ↑ Dave Dzatko, Tom Shanley, MindShare Inc.: AGP system architecture. 2. Auflage. Addison-Wesley, 1999, ISBN 978-0-201-70069-5, S. 66 f.
- ↑ http://www.tga3dx.com/1995.html
- ↑ http://www.cs.umd.edu/class/fall2001/cmsc411/projects/agp/hardwareagp.htm Erläuterung der GART-Übersetzung
- ↑ http://www.slizone.ru/object/LO_20010601_5754.html Pressemappe zur ersten FastWrites-Implementierung