PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : AMD-Patente


amdfanuwe
2021-12-21, 04:35:59
Hier können wir über AMD Patente diskutieren.

Mich beschäftigt das letzte AMD Patent:

Stacked Dies for Machine Learning Accelerator (https://www.freepatentsonline.com/20210374607.pdf)

Oberflächlich betrachtet beschreibt AMD einen ML-Speicher Chip der auf einen GPU Chip gestacked wird. Dieses Package nennt AMD APD, Accelerated Prozessing Device.

Im Text wird dann viel auf typischen GPU rumgeritten als beispielhafte Implementierung.

Punkt [0044] auf Seite 12 sollte man jedoch beachten:
... in alternate implementations, the APD die is instead a microprozessor die.
in Punkt [0050][0051] wird dann aufgezählt, dass dieses Patent oder Teile davon in vielen verschiedenen Implementierungen zum Einsatz kommen kann.
Das APD Core Die muß lediglich in der Lage sein, die ML Unit zu programmieren. Das APD Core Die könnte also auch CPU, DSP, FPGA, APU oder Semicustom Logik (ASIC) anstatt wie im Patent GPU Cores beinhalten.
Damit hätte AMD ein Schema verschiedensten Logikchips ML beizubringen.

Interessant wird das ganze in Fig. 6.
Dort werden beispielhaft 16 solcher Chips miteinander gekoppelt. Durch die Memmory/ML Chips funktioniert das ganze wie ein großer L3 Cache über den die APDs miteinander kommunizieren können.
Damit ergeben sich dann z.B. große GPUs, CPUs, FPGAs oder aber auch Mischbestückungen für heterogene Chips.
Ich denke da an APUs, großer FPGA mit CPU Chiplets oder je nach Kundenanwendung Semicustom ASICs verbunden mit CPU,GPU,FPGA Tiles.

Wird dieser Memmory/ML ein Grundbaustein für zukünftige CPU,GPU,FPGA und Semicustom Chips? Entwickelt sich AMDs Baukasten für HPC Chips in diese Richtung?

Mich irritierte Anfangs auch Fig. 5, die Konfigurierbarkeit des Memmorys.
Dadurch ergeben sich einige Vorteile. Cache muß über das System Kohärent gehalten werden. Wenn also ein Task in den Cache schreibt, muß das gesamte System über diese Änderung informiert werden, damit andere Tasks in ihren lokalen Caches korrekte Daten vorfinden. Das erzeugt in einem größerem System einiges an Kommunikationsaufwand.
Indem nun Teile des Caches als Directly Accessible konfiguriert werden, entfällt dieser Kommunikationsaufwand da dieser Teil dann nur für eine Aufgabe reserviert ist.
Ergäbe sich dadurch auch Energiesparpotential für CPUs, GPUs? Kohärenz muß ja nur für die Daten gewährleistet sein, die von verschiedenen Tasks auf mehreren Einheiten gleichzeitig bearbeitet werden.
Und wie groß ist dieser Memmory? Da der Chip auf einen anderen gestapelt wird, sollte der nicht zu groß sein. Beim ZEN 3 V-Cache wird ein 64MB Chip gestapelt. Da dürfte dieser im Patent erwähnte Memmory Chip wohl bei 64MB - 128MB liegen.
Eventuell lassen sich auch noch mehrere Memmory Chips stapeln. Muß es eigentlich SRAM sein oder wäre auch ein HBM Stack denkbar?

Ich sehe es mal so: AMD hat da noch einiges vor und man muß sich von dem Gedanken an herkömmliche CPUs, APUs, GPUs mit beschränktem Cache auf einem Chip trennen. Chiplets seit ZEN2 und stacked Caches demnächst mit ZEN3 sind nur der Anfang.
Mit leistungsfähigen CPUs, GPUs und hoffentlich bald FPGAs hat AMD ordentliche Bausteine in ihrem Baukasten die sie über (stacked) IF Cache miteinander zu einem System verknüpfen können.

Tobalt
2021-12-21, 06:45:12
Dein Text klingt so, als würde das aufstacken eines Speichers auf einen anderen Chip, jenem irgendwie das Attribut "besonders geeignet für ML" verleihen.

Dem ist nicht so.

Wenn das Patent sich auf ML Anwendungen spezialisiert, dann nur weil dies es erlaubte irgendein anderes bestehendes Patent zu verletzen.

amdfanuwe
2021-12-21, 07:47:56
Dein Text klingt so, als würde das aufstacken eines Speichers auf einen anderen Chip, jenem irgendwie das Attribut "besonders geeignet für ML" verleihen.

Wenn der Speicherchip eben auch wie im Patent den ML Core enthält, ist das doch so.
Schützenwert ist hier die Idee den ML Core Speichernah mit eigenem Directly Accessible konfigurierbaren Speicher zu implementieren. Diesen Memmory Chip kann man als Cache auf ein APD Core Die stacked.
Als Beispiel zeigt man das für eine GPU und das ganze dann noch über mehrere Chips skaliert.

Tobalt
2021-12-21, 08:36:22
Naja für mich hat halt die Anwendung nichts mit Stacking zu tun.

IMO wird da patenttypisch ein Spezialfall herbeigesonnen, um sich ein weiteres Die Stacking patent ins Portfolio zu stellen als Verhandlungsmasse.

Bezüglich ML Chips: was man da braucht hängt auch stark bon der Anwendung ab. Inference und Training sind zwei paar Schuhe, Außerdem kann künftig dort auch mal nichtbinäre Logik Vorteile bringen oder ALUs mit integriertem Speicher.

Einfach von GPU oder CPU auszugehen und was anzuflanschen wird langfristig nicht Konkurrenzfähig sein.

Xilinx Know-how wird für ML chips eher relevant. Und Memory stacking bestimmt auch, aber Patente beschreiben niemals eine konkrete geplante Umsetzung sondern sind nur Verhandlungsmasse mit Konkurrenten.

amdfanuwe
2021-12-21, 10:17:14
Inference und Training sind zwei paar Schuhe, Außerdem kann künftig dort auch mal nichtbinäre Logik Vorteile bringen oder ALUs mit integriertem Speicher.


In dem Patent wird ja auch überhaupt nicht auf den ML Block eingegangen.
Also alles offen, was dort implementiert wird.
In erster Linie dürften das eine Art Tensor Cores sein.
Bei Nvidia must du eine GPU mitkaufen und das ganze in einen Computer mit CPU stecken, sonst tut sich da nichts.
Im Patent wird auch erwähnt, das Ideen Teile des Patentes auch auf monolithischen Chips umgestzt werden können. Stacking spielt also nicht die Rolle wie es vordergründig erscheint.
AMD hat hier also eine IP, die ML mit zuweisbaren Speicher und skalierbarkeit über mehrere Chips beinhaltet.
Die kann man auf eine kleine APU implementieren oder eben auf einem eigenem Chip, der dann auf andere gestacked wird.
Entweder auf eine GPU, womit man ähnliches wie Nvidia hat, oder auf eine CPU/APU für kleine Systeme ohne Steckplätze für GPU.
Für Traing braucht es dicke Kisten. Irgendwann sind aber die Netze mal trainiert und es braucht kleine Chips für die Anwendung. Man kann nicht überall eine Nvidia GPU verbauen.

basix
2021-12-21, 11:56:20
...aber Patente beschreiben niemals eine konkrete geplante Umsetzung sondern sind nur Verhandlungsmasse mit Konkurrenten.

Whut? :freak:

Und das was ich implementiere, schütze ich dann nicht und kann kopiert werden?

Das Patent beschreibt niemals die gesamte konkrete Umsetzung, muss aber zwingend die relevanten und kritischen Punkte in den Claims beinhalten. Sonst nützt das Patent dann nichts. Und bezüglich Patent sind auch nur die Claims relevant. Der ganze Text davor ist mehr eine Beschreibung fürs Verständnis. Der Teil beinhaltet dann aber auch oft Infos, die gar nicht wirklich relevant sind oder eben auch absichtlich verwirrend geschrieben sind.

Tobalt
2021-12-21, 13:28:16
Naja oder die relevanten punkte der geplanten Implementierung werden auf 2 oder 3 Patente verteilt..

amdfanuwe
2022-04-08, 18:39:45
Da ist ein neues Patent zu ML erschienen:
https://www.freepatentsonline.com/20220101179.pdf

Diesmal wird die Implementierung als Stacked Die auf dem I/O Die (Fig. 2A) oder aber wie ein Chiplet angebunden ( Fig. 2B, unten rechts am Accelerator Port)

basix
2022-04-08, 23:40:26
Dieses Patent wurde im September 2020 angemeldet. Das für die ML Accelerators bei GPUs erst im Dezember 2020. Scheint mir, dass wir das evtl. schon bei Zen 4 sehen könnten. Wäre ein Paukenschlag.

amdfanuwe
2022-04-09, 00:21:32
Paukenschlag ist da eher, dass der ML Accelerator als eigener Chip kommt und und bei Bedarf mit CPU, GPU, FPGA etc. verbaut werden kann.

Für Server und CDNA ist mir der Einsatzzweck schon klar. Aber wie sieht da eigentlich der Bedarf im Heimbereich aus? Gibt es außer DLSS eigentlich noch weitere Anwendungen für den Heimanwender, die die Tensor Cores wirklich nutzen?

Κριός
2022-04-09, 00:23:25
Macht das Bei Zen4 überhaupt Sinn?
Das sollte doch eher in die Xilinx Schiene gehen.

edit: da war jemand schneller

BavarianRealist
2022-04-09, 13:14:25
Für mich ist das Patent genau das, was ich längst für AMDs nächste Notebook-APU erwarte: dort dürfte das Zen4-Chiplet auf dem I/O-iGPU-Die sitzen.

Grund:
Der 5nm-Prozess dürfte noch lange Zeit viel zu teuer für große monolitische Dice bleiben, d.h. es braucht dann auch für Notebooks Multi-Die-Lösungen. Und zwar weil:
- jedes 5nm-Design kostet extrem Geld, d.h. AMDs Zen4-Chiplet dürfte optimiert für alle Einsätze sein: Server, Desktop und auch Notebook.
- RDNA3 wird von AMD auch extra auf 6nm umgesetzt (in Navi33) und soll super-effizient sein (siehe neues MLID-Video)
- eine iGPU macht mehr und mehr nur noch mit großem Infinity-Cache Sinn, d.h. hierfür scheidet dann 5nm aus, weil dadurch das Die gewaltig wachsen würde und Cache kaum shrinkt, daher RDNA3 auch in 6nm
- I/O shrinkt fast gar nicht

Lösung:
- ein I/O-iGPU-Infintiy-Cache-Chiplet mit evtl. 20CU und 128MB-L3, der auch vom Zen4-Chiplet genutzt werden kann, weil das Zen4-Chiplet genau auf dem Infinitiy-Cache platziert wird.

Ergebnis:

Eine APU für Notebooks mit Zen4(!) und großer iGPU, die aufgrund des großen Infinity-Cache gut skaliert. Der Infinity-Cache reduziert allegmein Ram-Zugriffe, was die größt-mögliche Effizienzsteigerung bedeuten dürfte.

Eine solche APU dürfte super CPU-Leistung, unerreichte iGPU-Leistung haben und super effizient sein.

UND:
Für Desktop-Varianten könnte das Zen4-Chiplet wie gewohnt neben dran platziert und über den Infinity-Bus angeschlosssen werden, um dadurch weit höhere TDPs zu ermöglichen und dann höhere CPU-Leistung zu haben....wobei hier dann der Trade-off entsteht: höherer Takt aber kleinerer L3, weil dann der Infinity-Cache zu einer Art L4 würde.