Die "6000"-fache Zahl kam von der Idee her, wenn man die gleichen Kommunikationsbandbreiten erreichen möchte, wie sie über den den ganzen Chip zwischen den Einheiten führen.
Die Crossbar zum L2$, wo letztendlich der ganze Traffic aller Clients landet liegt bei Vega bei ~3,2 TB/s (vielleicht auch nur bei der Hälfte, ich weiß nicht genau wie viel Memory-Channel und Bytes AMD wirklich rüber schickt, aber früher waren es 64 Bytes pro L2$-Tile, Vega hat vermutlich 32 Tiles.) oder wenn AMD deutlich entschlankt hat nur 1,6 TB/s.
Aber solche Bandbreiten benötigst du nicht für gute Performance.
Bei Zen läuft der Traffic von 4 Kernen auf einen gemeinsamen L3$ mit 512 GB/s (4 Kerne x 32 Bytes pro Takt (4Ghz).
Der interne IF leitet aber nur 32 Bytes pro CCX, also nur ein viertel und dabei beträgt der Takt nur die Hälfte vom Ramtakt, also 32 Bytes x 1,6 (DDR4 3200) = 51,2GB/s und etwas weniger pumpt AMD über das Package durch mit ~38-42GB/s.
Und die Lösung hat Performancenachteile bei den sensitiven Aufgaben, aber Threadripper ist bei Games ja nicht total abgesoffen und ansonsten funktioniert das auch relativ gut.
Im Nvidia Paper werden 768GB/s als Link für die Simulation verwendet, die Hälfte davon hat im Test die Performance um 15% reduziert, also kein Albtraum.
Und ja, für die Performancewerte braucht es Architekturanpassungen, um die Datenlokalität zu verbessern und die nötige Kommunikation untereinander effektiv zu verringern, aber genau das führt dann auch dazu, dass man in der Praxis kein Faktor von 6000 gegenüber CPU-Verbindungen benötigt.
EPYC verbindet die Chips mit ~40GB/s, mal x 6000 wären 240000 GB/s bzw. 240 TB/s.
Die Crossbar welche alle Clients bei Vega verbindet, 64 CUs mit ihrem LDS, L1$ und K$ und I$ kommt maximal auf 20 TB/s, falls in der Praxis die Crossbar wirklich alle Client-Anfrage sättigen kann.
Also 6000-fach braucht man auf jeden Fall nichts, selbst bei zukünftigen GPUs mit vierfacher interner Bandbreite im Vergleich zu Vega10, also 80TB/s, wäre es im Vergleich zu Zen's aktueller Package-Bandbreite von die-to-die maximal ein Faktor von 2000.
Bei Vega10 "nur" Faktor 500 und wie gesagt, für die Praxis bist auch weit davon entfernt, so etwas auch nur im Ansatz zu benötigen.
Anhand von Nvidias Beispiel kann man mit ganzer bzw. gar halber Bandbreite von der VRAM-Anbindung ganz vernünftig leben, bei 1TB/s wären wir nur bei Faktor 25, bzw. nur 12.
-----
Zum Interview, dass war alles was gesagt wurde:
[1]It’s definitely something AMD’s engineering teams are investigating, but it still looks a long way from being workable for gaming GPUs, and definitely not in time for the AMD Navi release next year. “We are looking at the MCM type of approach,” says Wang, “but we’ve yet to conclude that this is something that can be used for traditional gaming graphics type of application.”
[2] “To some extent you’re talking about doing CrossFire on a single package,” says Wang. “The challenge is that unless we make it invisible to the ISVs [independent software vendors] you’re going to see the same sort of reluctance.
[3] “We’re going down that path on the CPU side, and I think on the GPU we’re always looking at new ideas. But the GPU has unique constraints with this type of NUMA [non-uniform memory access] architecture, and how you combine features... The multithreaded CPU is a bit easier to scale the workload. The NUMA is part of the OS support so it’s much easier to handle this multi-die thing relative to the graphics type of workload.”
[4] So, is it possible to make an MCM design invisible to a game developer so they can address it as a single GPU without expensive recoding?
“Anything’s possible…” says Wang.
[5] It seems, however, that the MCM approach is only an issue in the gaming world, with the professional space more accepting of multi-GPU and potential MCM designs.
“That’s gaming” AMD’s Scott Herkelman tells us. “In professional and Instinct workloads multi-GPU is considerably different, we are all in on that side. Even in blockchain applications we are all in on multi-GPU. Gaming on the other hand has to be enabled by the ISVs. And ISVs see it as a tremendous burden.”
[6] Does that mean we might end up seeing diverging GPU architectures for the professional and consumer spaces to enable MCM on one side and not the other?
“Yeah, I can definitely see that,” says Wang, “because of one reason we just talked about, one workload is a lot more scalable, and has different sensitivity on multi-GPU or multi-die communication. Versus the other workload or applications that are much less scalable on that standpoint. So yes, I can definitely see the possibility that architectures will start diverging.”
1. Es ist etwas was AMDs Ingenieure definitiv untersuchen, aber es scheint noch lange weg von einer Praxislösung für Gaming zu sein und wird es zeitlich definitiv nicht für die Navi-Generation schaffen.
Das ist etwas was PCGN selber schreibt, okay, nur damit es klar ist was News-Seiten schreiben und was die Leute bei AMD selber sagen.
Weil Dinge, welche die Artikelschreiber verfassen werden gerne auch als Fakt oder Aussage von Herstellern aufgenommen.
Also was sagt Wang wirklich an der Stelle? Sinngemäß Folgendes: " Wir schauen uns MCM-Lösungen an, aber wir müssen noch zum Schluss kommen, ob das etwas ist was für tradionelle Grafik Anwendungen verwendet werden kann".
2. Wang: "Die Herausforderung ist, dass solange wir eine solche Lösung nicht als unsichtbar für Software-Entwickler umsetzen können, wir die selbe Zürückhaltung wie bei Crossfire/SLI sehen werden".
3. Wang: "Wir verwenden das Konzept auf der CPU-Seite und bei den GPUs schauen wir immer nach neuen Möglichkeiten.
Aber GPUs haben einzigartige Herausforderungen bei solch einer Umsetzung und es ist viel schwerer umzusetzen. "
4. Ist es möglich eine MCM GPU unsichtbar für Spieleentwickler zu realisieren, sodass diese als einzige GPU angesehen werden kann ohne teure Reprogrammierung?
Wang: "Alles is möglich..:".
5. Hier kommt Scott Herkelman ins Gespräch, der davon redet das klassische Multi-GPU Lösungen ja schon gut adaptiert sind in anderen Anwendungsfällen und Bereichen und das Softwareentwickler für Spiele das allerdings als große Herausforderung ansehen.
6. Könnte das heißen, dass wir in der Zukunft ausernanderweichende Architekturen für den profisionellen Bereich und für normale Konsumenten erleben werden, wo beim ersten MCM verwendet wird, aber nicht beim letzteren?
Wang: "Ja, ich könnte mir das definitiv vorstellen, weil es für den profisionellen Bereich viel leichter umsetzbar ist und die Arbeitslast dort anderen Ansprüchen folgt."
Ich habe mir jetzt nicht die Mühe gemacht alles und dabei noch 1:1 perfekt zu übersetzen, aber das ist im Kern alles was gesagt wurde und konkret lässt es vieles offen.