# 3D-Beschleuniger

Ein 3D-Beschleuniger ist eine Erweiterung der Grafikkarte eines Personal Computers, die auf die Berechnung und Darstellung dreidimensionaler Objekte spezialisiert ist. Diese Erweiterung kann dreiecksbasierte Algorithmen (wie Z-Buffern, Texture Mapping) und Antialiasing durch Hardwarebeschleunigung weitaus schneller berechnen. Jeder heute verkaufte PC besitzt einen zumindest rudimentären 3D-Beschleuniger, der in der Grafikkarte integriert ist. Ein Austausch gegen eine schnellere Grafikkarte ist recht einfach möglich, die 3D-Leistung wird sich hierbei oftmals vervielfachen. 3D-Beschleuniger finden auch in Spielkonsolen wie der Xbox 360, Wii und PlayStation 3 Verwendung. Zunehmend werden auch Handys mit entsprechenden Beschleunigern ausgestattet, um eine ansprechendere Bedienung zu bieten und spielfähig zu sein.

## Geschichte

Mitte der 1990er Jahre erschienen die ersten 3D-Beschleuniger für den Privatmarkt. Ursprünglich waren es Steckkarten, die zusätzlich installiert wurden (z. B. 3dfx Voodoo Graphics). Das Signal der alten Grafikkarte wurde durch diese Erweiterungskarte durchgeschleift und wurde nur bei der Darstellung von 3D-Inhalten unterbrochen. Für die Darstellung von 2D-Inhalten (DOS-Konsole, Windowsoberfläche) war weiterhin die alte Grafikkarte zuständig.
Für den professionellen Markt wurden jedoch schon seit den 1980er Jahren spezielle 3D-Karten hergestellt (z. B. IBM PGC, TIGA oder Diamond FireGL). Diese Karten fanden vor allem in Maschinenbau, Bauwesen (CAAD) und Schaltungsentwurf der Elektrotechnik in Form von CAD/CAM-Programmen Anwendung. Die zunächst proprietären Softwareschnittstellen wurden mit der OpenGL-Initiative vereinheitlicht. In ihrem Anwendungsgebiet waren diese speziellen Karten den 3D-Beschleunigern aus dem Consumermarkt an Geschwindigkeit weit überlegen, gleichzeitig waren sie für Computerspiele ungeeignet.
Zum Ende der 1990er Jahre wurden die 2D- und 3D-Funktionen auf einer Grafikkarte zusammengeführt (z. B. 3dfx Voodoo Banshee). In der weiteren Entwicklung wurde zum einen die reine Zeichenleistung von Dreiecken durch massive Parallelisierung weiter erhöht (Füllrate in Megatexel/s). Parallel dazu wurden die Beschleuniger um weitere Fähigkeiten erweitert. Dazu gehörte die Integration der T&L-Einheit in die Grafikkarte, (programmierbare) Pixel-Shader und Physik-Engines. Wegen ihrer Spezialisierung auf Grafikberechnungen sind heutige GPUs den CPUs in ihrer Rechenleistung überlegen. Als Vergleich diene die Transistoranzahl des Grafikprozessors von AMD (Radeon HD 7970, Juni 2012, ca. 4,3 Milliarden) mit Intel (Ivy Bridge-HE-4, ca. 1,4 Milliarden, davon ca. 405 Millionen für den internen Grafikteil). Die Entwicklung der Integrationsdichte der Grafikprozessoren hat mit einem jährlichen Faktor von 2,4 sogar das Mooresche Gesetz übertroffen.
Die Anbindung der 3D-Beschleuniger an das Gesamtsystem stellte besondere Anforderungen an dessen Konstruktion, da sehr große Datenmengen zu übertragen sind. Die Bandbreite des ISA-Busses reichte bei weitem nicht aus. Diese Notwendigkeit führte zu Erweiterungen wie dem EISA-Bus oder VESA Local Bus. Der Nachfolgestandard PCI genügte den gestiegenen Anforderungen bald nicht mehr. Ein neuer Standard für Grafikkarten wurde mit dem AGP-Steckplatz eingeführt. Erst mit PCI Express ist wieder ein allgemeiner Steckplatz für 3D-Beschleuniger üblich.
Eine weitere Funktion, um die Grafikkarten erweitert werden, ist die Dekodierung von Videodaten (z. B. H.264). Die große Rechenkapazität des 3D-Prozessors kann auch dafür genutzt werden.

## Beschleunigte Berechnungen

* Texture Mapping
** Bilineare Filterung
** Anisotropes Filtern
** MIP Mapping
* Verdeckungsberechnung (mit Z-Buffer, Clipping)
* Vertex-Shader (ersetzt Transform and Lighting)
* Geometry-Shader
* Tessellation-Shader
* Pixel-Shader
* GPGPU, z. B. um als Physikbeschleuniger für Kollisionen zu dienen