Accelerated Processing Unit
Accelerated Processing Unit (kurz APU; englisch für „beschleunigte Verarbeitungseinheit“), auch Advanced Processing Unit (engl. für „fortschrittliche Verarbeitungseinheit“) ist eine unter anderem an die Abkürzungen „CPU“ und „GPU“ angelehnte Bezeichnung für einen Hauptprozessor mit integrierten Koprozessoren, die fast ausschließlich von AMD verwendet wird. Wie der Name bereits andeutet, soll dabei der Hauptprozessor durch die/den Koprozessor(en) in bestimmten Situationen beschleunigt werden. Als Koprozessor kann dabei ein Grafikprozessor (GPU), Vektorprozessor, Streamprozessor oder auch jeder andere beliebige Prozessor dienen, der dem Hauptprozessor in bestimmten Situationen überlegen ist. Lediglich ein mathematischer Koprozessor in Form einer Gleitkommaeinheit (auch „FPU“ abgekürzt), der – neben anderen – schon lange vor der Definition des APU-Begriffes im Hauptprozessor integriert war und damit zum Bestandteil des Hauptprozessors wurde, ist davon ausgenommen.
Geschichte
Kreiert und geprägt wurde die Bezeichnung Accelerated Processing Unit vom Mikroprozessor-Hersteller AMD, der diese Bezeichnung zur Kennzeichnung von Hauptprozessoren mit integrierter Grafikeinheit verwendet. AMD Fusion ist der Codename dieses Prozessorkonzepts, welches CPU, GPU sowie Video- und andere Hardwarebeschleuniger auf einem Die vereint.
Erste Ankündigungen für die Integration eines Grafikprozessor-Kerns in einem Hauptprozessor hatte es bereits im Jahr 2006, nach der Übernahme von ATI durch AMD, gegeben.[1] Ab Mai 2010 wurden Prototypen an die ersten Kunden ausgeliefert[2] und auf der Computex im Frühling 2010 wurde bekannt gegeben, dass die APU-Modelle Llano und Ontario im ersten Halbjahr 2011 in den Handel kommen sollen.[3][4] Zudem wurde im Vorfeld der CES 2011 bekannt, dass erste Rechner in Form von Tablet-PCs und -Computer auf Basis der APU-Serien Zacate und Ontario im ersten Quartal 2011 ausgeliefert werden.[5]
Auch Intel liefert seit dem Jahr 2012 mit ihrer Core-I-Serie Hauptprozessoren mit integrierter Grafikeinheit, verwendet jedoch nicht den Begriff 'APU'. Beispielsweise ist die GPU in den Ivy-Bridge-Prozessoren durch Unterstützung von OpenCL und Direct Compute auch für universelle Computerberechnungen nutzbar.[6] Auch andere Wettbewerber verwenden den „APU“-Begriff nicht.
Technische Details
Um einen Chip 'APU' nennen zu können, sollte der Prozessor (CPU) einen oder mehrere Hauptprozessor-Kerne und mindestens einen zusätzlichen Koprozessor für spezielle Aufgaben enthalten. Der zusätzliche Koprozessor ist dabei meist ein Grafikprozessor (GPU).[7] Mit diesem Konzept will man vor allem die Vorteile unterschiedlicher Prozessortypen/Prozessorarchitekturen vereinen. Das Konzept an sich wird daher auch in Anlehnung an Mehrkernprozessorsysteme als heterogenes Rechnen (englisch: heterogeneous computing) bezeichnet, da nun heterogene Prozessortypen in einem System vorkommen.
Da Grafikprozessoren im Laufe ihrer Entwicklungsgeschichte einen Teil ihrer Spezialisierung auf Grafik aufgaben und immer mehr zu frei programmierbaren Prozessoren wurden, die insbesondere datenparallele Aufgaben sehr schnell bearbeiten können, sahen hier die Hersteller die Möglichkeit, die für sequentielle Aufgaben optimierten Hauptprozessoren mit dieser Art von Koprozessor sinnvoll zu ergänzen. Da zudem jeder PC sowieso einen Grafikprozessor benötigt, sollte auch der Übergang in der Zeit, in der entsprechende Software für den Koprozessor fehlt, durch die reinen Vorteile eines Grafikprozessors überbrückbar sein.
Entscheidend für die Bezeichnung APU ist dementsprechend nicht nur die Integration eines Grafikprozessors in den Hauptprozessor, sondern auch die Eignung dieses Grafikprozessors zur Berechnung von universellen Aufgaben abseits von reinen Grafikberechnungen.
Grafikprozessoren wurden schon sehr früh für GPGPU-Zwecke eingesetzt, allerdings geschah die Programmierung sehr nahe an der Hardware und konnte damit nicht ohne weiteres auf andere Grafikprozessoren übertragen werden, womit auch die Verbreitung entsprechender Programme und Tools sehr eingeschränkt blieb. Ein weiterer wichtiger Schritt von einem reinen Hauptprozessor mit IGP zur sogenannten APU ist somit die Unterstützung von Hersteller übergreifenden Programmierstandards wie OpenCL und Quasistandards wie Direct Compute in der DirectX-11-API vom Grafikprozessor.
Abseits der programmierbaren GPU-Teile hat die GPU aber auch fest verdrahtete Einheiten (engl.: Fixed Function Units), die abseits der Grafik genutzt werden können. So können die Videodecodiereinheiten wie etwa UVD oder Nvidias Videoprozessor schon sehr lange für das Decodieren von bestimmten Codecs genutzt werden und damit ebenfalls den Hauptprozessor entlasten. Intels integrierte GPU in Sandy-Bridge-CPUs haben abseits solcher Decodiereinheiten auch fest verdrahtete Encodiereinheiten, mit denen das Encodieren von Videos bei bestimmten Codecs beschleunigt werden kann. Da sowohl das Encodieren als auch das Decodieren aber nur auf bestimmte Codecs begrenzt und nicht frei programmierbar sind, werden entsprechende CPUs bei enger Auslegung der APU-Definition immer noch als „CPUs mit IGP und Zusatzbeschleunigungsfunktionen“ bezeichnet und nicht als APUs, da hierbei das Konzept des Verbindens von mehreren Prozessorarchitekturen mit unterschiedlichen Vorteilen fehlt und lediglich eine Prozessorarchitektur durch fest verdrahtete Einheiten auf manche Gebiete spezialisiert wird.
Einzelnachweise
- Fusion: AMD setzt auf Prozessoren mit integrierter Grafik – Artikel bei Golem.de, vom 25. Oktober 2006
- AMD hat erste Muster der Fusion-APUs – Artikel bei Golem.de, vom 19. Mai 2010
- Fusion: AMD zeigt Demo und nennt Termin – Artikel bei Heise online, vom 2. Juni 2010
- AMD zeigt erstmals Fusion-Prozessor APU mit DirectX-11 – Artikel bei Golem.de, vom 2. Juni 2010
- Zacate und Ontario: AMD stellte Fusion-CPUs vor – Artikel bei Golem.de, vom 4. Januar 2010
- heise.de: IDF: Intel stellt nächste Prozessorgeneration Ivy Bridge vor, Nachricht vom 14. September 2011.
- Prozessoren 2010: Die Fusion beginnt – Artikel bei Golem.de, vom 2. Januar 2010