News AMD rührt die Werbetrommel für seine HSA-Architektur und erklärt hUMA [Update]

Dr@

Grand Admiral Special
Mitglied seit
19.05.2009
Beiträge
12.791
Renomée
4.066
Standort
Baden-Württemberg
  • BOINC Pentathlon 2011
  • BOINC Pentathlon 2012
<div class="newsfloatleft"><img src="http://www.planet3dnow.de/photoplog/images/54308/1_AMD-Logo.png" border="0"></div>CPU-seitig ist AMD schon länger nicht mehr erste Wahl, aber die hauseigene GPU-Sparte spielt weiterhin in der 1. Liga. Schon kurz nach AMDs ATi-Kauf vor knapp 7 Jahren wurde bekannt, dass AMD kombinierte Chips aus CPU und GPU herstellen wolle, die den Namen APU (Accelerated Processing Unit) bekamen. Das Konzept wurde "Fusion" genannt, doch leider war dieser Name schon besetzt, sodass sie mittlerweile unter dem Kürzel HSA zusammengefasst wird. Aktuell gibt es zwar mit <a href="http://www.planet3dnow.de/cgi-bin/newspub/viewnews.cgi?id=1363093229">Richland</a> bereits die dritte Generation der APUs, aber einen HSA-fähigen Vertreter gibt eben noch nicht. Erster Chip mit diesen Eigenschaften soll im zweiten Halbjahr 2013 Kaveri werden. Was unterscheidet Kaveri aber nun von den aktuellen Richland, Trinity und Llano APUs?

hUMA (heterogeneous Uniform Memory Access) kurz und knapp erklärt: Das Konzept sehen wir auf der nächsten Folie:<p style="clear:left;">
<center><a href="http://www.planet3dnow.de/photoplog/images/54308/2_NUMA_HSA.png"><img src="http://www.planet3dnow.de/photoplog/images/54308/large/2_NUMA_HSA.png"></a><small><br />hUMA: heterogeneous Uniform Memory Access</small></center>

Salopp gesagt, handelt es sich eigentlich "nur" um das alte UMA-Konzept, jetzt aber erweitert auf GPUs. Für bisherige APUs traf das Kürzel "NUMA" zu, welches auch von den Opteron-Setups mit 2 und mehr Prozessoren bekannt ist. In beiden Fällen ist der Speicherzugriff nicht einheitlich. Zwar gibt es einen gemeinsamen DRAM-Pool, bei den Opterons teilt sich dieser aber auf die verschiedenen CPU-Sockel auf und bei einer APU auf die zwei Adressbereiche der CPU und GPU. Ganz genau waren die Opterons aber per ccNUMA verbunden, wobei das "cc" für (Cache-)Speicherkohärenz steht. Das heißt Datenänderungen werden mit allen anderen Caches abgeglichen und die Datenkonformität somit sichergestellt. Ändert z.&nbsp;B. der erste CPU-Kern den Dateneintrag A, der auch schon im L2-Cache der GPU liegt, so wird dieser &ndash; nun veraltete Eintrag &ndash; automatisch für ungültig erklärt. Gleiches gilt im umgekehrten Fall, falls die GPU Datenänderungen vornimmt. Diese Speicherkohärenz wird jetzt auch bei den APUs nachgeliefert. Ab Kaveri teilen sich CPU- und GPU-Einheit deshalb nicht nur wie bisher den DRAM-Controller, sondern benutzen auch einen einzigen, gemeinsamen Speichercontroller. Bisher gab es noch zwei eigenständige Speichercontroller in jeder APU, jeweils einen für CPU und GPU. Der DRAM-Controller ist nur dafür zuständig, die Speichermodule anzusprechen. Das ermöglichte schon bisher, normale DDR3-Speichermodule einzusetzen und den verfügbaren Speicher für die APU zu erhöhen. Standardmäßig stand dieser Speicher dann aber nur der CPU zur Verfügung, der GPU musste man Grafikspeicher noch extra über BIOS-Einstellungen zuweisen, da eben beide Speicherbereiche getrennt von zwei Controllern verwaltet wurden.

Das kann man sich jetzt in Zukunft sparen, denn die GPU wird ab Kaveri ein vollwertiges Mitglied im Rechenkernverbund und teilt sich wie alle anderen Kerne auch die Speicheradressräume und verfügt über eine einheitliche Speicherkohärenz.
Bisher musste sich der Programmierer um solche Sachen kümmern bzw. sicherstellen, das die Daten zwischen CPU und GPU hin- und hergeschoben und abgeglichen wurden. Eine durchgehende Speicherkohärenz zwischen den CPU- und GPU-Teilen einer APU vereinfacht deshalb die Programmierung. Bereits Llano führte mittels des gemeinsamen DRAM-Controllers die Zero-Copy-Funktionalität ein, mit der zumindest schon das Kopieren erleichtert wird.

Als weiterer Vorteil gibt AMD an, dass die GPU durch den gemeinsamen Speichercontroller jetzt auch Zugriff auf die Auslagerungsdateien auf der Festplatten hat. Alle Vorzüge sind im folgenden Bild ersichtlich:

<center><a href="http://www.planet3dnow.de/photoplog/images/54308/1_11-AMD-HSA-hUMA.png">
<img src="http://www.planet3dnow.de/photoplog/images/54308/large/1_11-AMD-HSA-hUMA.png"></a><small><br />hUMAs Schlüsselmerkmale</small></center>


Wie sich AMD die Zukunft von HSA vorstellt, kann man schön im folgenden futuristisch anmutenden Werbefilmchen sehen:

<center><iframe width="640" height="360" src="http://www.youtube-nocookie.com/embed/h9Em_EsEgLo?rel=0" frameborder="0" allowfullscreen></iframe></center>

Der Benutzer wird automatisch per Gesichtserkennung erkannt, Pulsmesser liefern Körperdaten an den Computer, und Spracheingabe funktioniert natürlich sowieso. AMD spricht deshalb auch optimistisch von einer "Intelligenten System-Architektur" und unterstreicht diesen Ansatz durch die Gleichsetzung von HSA mit dem menschlichen Gehirn:

<center><a href="http://www.planet3dnow.de/photoplog/images/54308/1_05-AMD-HSA-hUMA.png"><img src="http://www.planet3dnow.de/photoplog/images/54308/large/1_05-AMD-HSA-hUMA.png"></a><small><br />HSA-Grundkonzept</small></center>

Ob man diesen vollmundigen Versprechungen Glauben schenken darf, wird die fernere Zukunft zeigen. In naher Zukunft dagegen darf man sich auf das nächste Fusion-Entwicklertreffen freuen, das im November stattfindet und nach dem bereits erwähnten Namensstreit nun offiziell "APU-Summit" heißt:

<center><a href="http://www.planet3dnow.de/photoplog/images/54308/1_21-AMD-HSA-hUMA.png"><img src="http://www.planet3dnow.de/photoplog/images/54308/large/1_21-AMD-HSA-hUMA.png"></a><small><br />AMD APU13 - Developer Summit</small></center>

Zeitgleich dürfte auch Kaveri offiziell präsentiert werden, so dies nicht schon früher geschehen sollte.


<a name="Update"><b>Update 17:00:</b></a>

AMD hat uns noch einige Detailfragen zu hUMA nachträglich beantwortet. Diskrete Grafikkarten werden demnach nicht von allen Features des neuen Speichermodells hUMA profitieren können. Zur unterstützten Funktionalität soll demnach folgendes gehören: Die diskreten GPUs können nicht nur auf den Systemspeicher zugreifen, in dem sie CPU-Pointer verwenden, sondern haben auch Zugriff auf die komplexeren Datenstrukturen der höheren Programmiersprachen. Außerdem haben die dGPUs vollständigen Zugriff auf den pageable Systemspeicher und damit auf den gesamten Systemspeicher, der vom Betriebssystem verwaltet wird. Allerdings wird hUMA keine bidirektionale Kohärenz zwischen den diskreten Grafikkarten und dem Systemspeicher sicherstellen, was laut AMD daran liegen soll, dass dies vom PCIe-Bus nicht unterstützt wird.

Von diesen Vorteilen sollen auch heute geschriebene OpenCL-Kernel profitieren, da die Laufzeitumgebung künftig erkennen können soll, ob das Programm auf einem HSA-kompatiblen System ausgeführt wird. Entsprechend kann die Laufzeitumgebung dann unnötiges Kopieren der Daten selbstständig eliminieren und kostspielige Cache Flushs vermeiden. Implementierungen, die C++ AMP nutzen, können ebenfalls von der Eliminierung unnötiger Kopien und der Vermeidung von Cache Flushs profitieren. Zudem soll der Compiler hier in der Lage sein, effizienteren Code zu erzeugen.

Auf Rückfragen bezüglich der Sony PlayStation 4 ließ uns AMD lediglich wissen, dass Details zur Implementierung von Sonys Architektur nicht kommentiert werden. Somit gibt es vorerst keine Bestätigung für die HSA-Kompatibilität oder die Nutzung von hUMA bei der PS4.


<b>Quelle:</b> <a href="http://www.amd.com" target="b">AMD</a>

<b>Links zum Thema:</b>
<ul><li><a href="http://www.planet3dnow.de/photoplog/index.php?n=24153">Alle Folien in der Galerie</a></li><li><a href="http://www.planet3dnow.de/cgi-bin/newspub/viewnews.cgi?id=1366807695">Code der HSA Bolt library wurde von AMD als Open-Source-Projekt veröffentlicht</a></li><li><a href="http://www.planet3dnow.de/cgi-bin/newspub/viewnews.cgi?id=1339584790">AFDS 2012: HSA-Foundation gegründet</a></li></ul></p>
 
Das wird sehr Interessant.
Wundern würde es mich nicht wenn die PS4 hUMA unterstützt.
 
Spannend ist auch, inwiefern AMD das fuer die PS4 erarbeitete Know-How fuer die PCs weiterverwenden kann und darf.
 
@ Makso

Das kann man als bestätigt ansehen. In einem Interview von Gamasutra hat Cerny auch schon gesagt, dass die PS4 einen unified coherent memory besitzt.
Genauso hat er ja das Cache-System erklärt, klingt wie Kaveri.

@ dev art

Irgendwie zweifle ich ständig daran, dass AMD wegen Sony irgendeinen nennenswerten Gewinn beim Know-How erlangt hat.
Sieht für mich eher danach aus, als ob Sony einfach AMDs IP-Techpool und Roadmap angeschaut hat und gesagt, einmal Erdbeere mit Schoko.
So würde ich "Semi-Custom APU" auch eher verstehen.
Das scheinen keine Projekte mehr zu sein, wie damals die Xbox 360 oder PS3 mit teilweise einzigartigen Spezialanfertigungen nur für die Konsole.
 
@ Makso

Das kann man als bestätigt ansehen. In einem Interview von Gamasutra hat Cerny auch schon gesagt, dass die PS4 einen unified coherent memory besitzt.
Genauso hat er ja das Cache-System erklärt, klingt wie Kaveri.
Hast Du da nen Link? Wenn er "coherent" gesagt hat, dann ist es eindeutig 100% HSA.
Irgendwie zweifle ich ständig daran, dass AMD wegen Sony irgendeinen nennenswerten Gewinn beim Know-How erlangt hat.
Sieht für mich eher danach aus, als ob Sony einfach AMDs IP-Techpool und Roadmap angeschaut hat und gesagt, einmal Erdbeere mit Schoko.
So würde ich "Semi-Custom APU" auch eher verstehen.
Das scheinen keine Projekte mehr zu sein, wie damals die Xbox 360 oder PS3 mit teilweise einzigartigen Spezialanfertigungen nur für die Konsole.
Ja genau so ist das. Der Vorteil für AMD ist aber, dass sie Geld für Ihre IP bekommen, die sie aber sowieso hätten entwickeln müssen.

Kaveri nutzt also jetzt wie die PS4 hUMA und Kabini hat ein Jaguar-Quad-Modul, d.h. die Kaveris Speicherkontroller und Kaninis Kerne waren quasi schon fertig, bzw. Sony hat das gezahlt.
 
Coherent hat er dann leider doch nicht gesagt, aber die technischen Leiter haben diese Aussagen getätigt:

Einmal Cerny:
http://www.gamasutra.com/view/news/189368/

"My first tour of the developers, I had a questionnaire where I just asked them their thoughts on what the next generation might bring," he says. "The largest piece of feedback we got was that they wanted unified memory."

The PlayStation 4 will launch with an 8GB bank of GDDR5 RAM, which can be directly addressed by both the CPU and GPU of the system. Cerny is confident that this strategy brings flexibility and power to the console in both the near and long term.

Und einmal Norden:
The unified address space should also cause fewer headaches for developers than the mixed architecture of the PS3, Norden said.
http://arstechnica.com/gaming/2013/03/sony-dives-deep-into-the-ps4s-hardware-power-controller-features-at-gdc/

Wobei Sony auch in einem Interview gesagt hat, dass die PS4 keinen HSA Support bekommt.
Also die ganzen Schnittstellen die sich AMD mal dafür ausgedacht hat.
Gab noch einmal irgendwo ein Artikel, dass dies vielleicht nachgerüstet werden kann, wobei ich auch gerade nicht weiß, welchen Sinn es genau macht.

Cerny hat auch hier ein paar Aussagen dazu gemacht:
http://www.onlinewelten.com/link.ph...p%2Fdocs%2Fseries%2Frt%2F20130325_593036.html
 
Zuletzt bearbeitet:
Oh nein, die haben Skynet fast fertig. Damm
 
Hmm, wenn die PS4 es hat, dann wäre es sehr ungewöhnlich, wenn Kabini es nicht hätte. Denn die sind ja wohl so eng verwandt, daß man extra Arbeit reinstecken müßte, um es anders zu machen.

Würde auch erklären, warum AMD jetzt mit dieser Erklärung um die Ecke kommt. Daß es auf der Veranstaltung im November nochmal darum geht, ist klar, was soll da sonst besprochen werden, und die ist nun mal in dem Zeitraum. Zwar ist die wohl extra verschoben, damit man den Kaveri-Launch und auch den der PS4 mitnehmen kann und dort auch über Details reden kann, die jetzt noch unter NDA sind. Damit ist aber nicht gesagt, daß es vorher einen Chip damit geben könnte.

Kabini mit hUMA würde jedenfalls viel mehr Sinn machen also ohne. Soll ja auch in Servern verbaut werden, wo man sicher die GPU-Fähigkeiten auch vollumfänglich nutzen will.

Wobei Sony auch in einem Interview gesagt hat, dass die PS4 anders als Kaveri keinen HSA Support bekommt.
Also die ganzen Schnittstellen die sich AMD mal dafür ausgedacht hat.
Das kann aber Absicht sein, eine Beschränkung im BIOS bzw. der Software, damit nicht Leute hingehen und sich aus subventionierter Hardware Cluster zusammenbauen, was AMDs Serverumsatz beschädigt und Sonys Geschäft auch, da die Clusterfarmen keine Spiele für die Konsole kaufen (womit sich ja üblicherweise die Konsolen refinanzieren). Außerdem ist "HSA-Features" kein fester Befehlssatz wie SSE4a oder sowas, sondern nur eine Marketinghülse, die bei Bedarf mit allem Möglichen gefüllt wird.

So oder so, ich gehe davon aus, daß Kabini und die PS4 keine wesentlich unterschiedlichen Speichercontroller haben (abgesehen von der Breite natürlich).
 
Es stand ja bei einer AMD-Roadmap nur bei Kaveri HSA Application Support und nicht bei Kabini.
http://www.notebookcheck.com/typo3temp/_processed_/csm_AMD_Client_Roadmap_1_7_13_0acf512345.jpg

Kabini kommt auch einige Monate früher.
Vielleicht war man noch nicht so weit mit der Unified-Northbridge, den Memory-Managment-Units etc.
Allerdings hat Kabini ja GCN, womit sich einige Sachen anstellen lassen.
Vielleicht von den Fähigkeiten etwas besser, als Trinity, aber ohne hUMA wie bei Kaveri?
 
Das stand auf der Roadmap drauf, die zum Analystentag 2012 gezeigt wurde:

file.php
 
Sehr interessantes Konzept, mal sehen was für Verbesserungen das in Zukunft ermöglicht. Eine GPU die 32GB RAM zur Verfügung hat erlaubt sicher ein paar interessante Parallel-Computing-Anwendungen.

Leider öffnet das Konzept auch ein paar große neue Angriffsvektoren. Nun hab ich noch einen hochkomplexen Chip (oder potentiell mehrere bei Crossfire), der vollen Zugriff auf sicherheitskritische Bereiche des Hauptspeichers (Windows Kernel, Antivirus Executable, BitLocker/TrueCrypt Keys, SSL Zertifikate, ...) hat. Da hoffe ich mal dass AMD viel Zeit damit verbracht hat den gegenseitigen Zugriff entsprechend abzuschotten wenn nötig (NX-Bit, DEP, etc.).

Gruß,
Chris
 
Da hoffe ich mal dass AMD viel Zeit damit verbracht hat den gegenseitigen Zugriff entsprechend abzuschotten wenn nötig
Ich schätze, dass man bereits jetzt schon davor vorbereitet, da man ja für security Angelegenheiten, ja ARM Chips integrieren möchte.
 
Zurück
Oben Unten