6

nVidia forscht an MCM-basierten Grafikchips

Grafikchip-Entwickler nVidia hat auf seiner Webseite ein Whitepaper mit einer Forschungsarbeit öffentlich gemacht, welche sich dem Ansatz der MultiChip-basierten Grafikchips widmet. Das grundsätzliche Thema von mehreren zusammenarbeitenden Grafikchips geistert eigentlich fast seit Anbeginn der 3D-Zeiten durch die Gegend, immerhin hatte 3dfx seinerzeit schon bei der Voodoo2 eine funktionierende MultiChip-Lösung mittels des SLi-Ansatzes (Zusammenschaltung zweier Grafikkarten) zu bieten. Über die Jahre hinweg gab es allerdings immer auch wieder Gerüchte, eine solche Zusammenschaltung auf Chip-Ebene selbst erledigen zu wollen – meistens aus der Überlegung heraus, das sich mehrere kleine Grafikchips einfach günstiger als ein großer Grafikchip herstellen lassen. Bis auf wenige Grafikkarten, bei welcher gewöhnliches SLI/CrossFire allerdings schlicht nur auf einem einzelnen Grafikboard realisiert wurden, hat sich diesbezüglich aber nie etwas materialisiert. Insbesondere der zuletzt arg zurückgehende Support von SLI & CrossFire durch die Spieleentwickler machte es zudem unwahrscheinlich, das noch viel in diese Richtung hin passiert.

nVidia MCM-Grafikchip (1)
nVidia MCM-Grafikchip (1)
nVidia MCM-Grafikchip (2)
nVidia MCM-Grafikchip (2)

Mittels nVidias neuen Forschungsarbeit wird nunmehr allerdings ein neuer Ansatz in Form von "Multi Chip Module" (MCM) Grafikchips offeriert – bei welchem nVidia vor allem die zuletzt aufgetauchten Problemen von MultiChip-Lösungen angehen will. Wie bekannt und soweit gewöhnlich besteht der beispielshaft im Whitepaper skizzierte Grafikchip aus 4 Einzelchips, welche jeweils für sich eine komplette Rendering-Pipeline enthalten. Hinzu kommt ein extra Chip für "I/O & System" – an dieser Stelle gibt es dann erst einmal einen kleinen Effizienzgewinn in der Chipfertigung, denn damit müssen solche Dinge wie PCI-Express-Interface, Display- und Videoeinheit, Soundcodec etc. eben nur einmal hergestellt werden – und nicht mehrfach wie bei allen bisherigen MultiChip-Ansätzen. Insbesondere bei Zusammenfügung von 4 und womöglich sogar mehr Einzelchips würde dies ansonsten zur ziemlichem Siliziumverschwendung ausarten, jene Chipteile sind bei heutigen Grafikchips ganz gewiß nicht mehr unbedeutend klein (beim seinerzeitigen R1000/Tahiti-Chip waren es bei 365mm² Chipfläche immerhin 12,3% hiervon aka ~45mm²).

Ein solches Modell konnte man sich allerdings auch schon vor Jahren vorstellen – ATI soll mit dem nie erschienenen R700-Chip wohl sogar schon einmal an so etwas gearbeitet haben. Der Clou aus heutiger Sicht liegt darin, daß sich das gesamte Gebilde laut nVidia für Software (Spiele) und deren Programmierer als "ein Chip" ausgeben soll ("are presented to software and programmers as a single monolithic GPU"). Hier findet also kein SLI auf einem Grafikboard oder einem Chip-Package statt, vielmehr existiert auf logischer Ebene nur "ein" Grafikchip – trotz der mehreren verbauten Einzelchips mit (einzeln betrachtet) vollständiger Rendering-Pipeline. Schematisch gedacht will nVidia schließlich auch nicht mehrere echte Grafikchips zusammen auf das Package bringen, sondern zerreißt einen einzelnen großen Grafikchips nur in für die Chipfertigung besser zu bewältigende kleinere Häppchen – zu beachten hierbei wieder die abgekoppelte I/O-Einheit, welche in diesem MCM-System einen eigenen Chip darstellt.

Technisch wird dieser Verzicht auf SLI augenscheinlich darüber realisiert, das die (mit Grafik-Aufgaben betreuten) Einzelchips über dicke interne Interfaces ("XBar") miteinander verbunden sind – gut mit dem zweiten Schaubild zu erkennen. Die Einzelchips stellen zudem jeder für sich nur ein Teil des Interfaces zum verbauten Grafikkartenspeicher auf, dies verhindert die bisher von SLI/CrossFire bekannten verdoppelten Speicherinterfaces, welche bei mehr als zwei Einzelchips dann sicherlich zu viel des Guten wären. Auch entfällt hiermit die (sinnlose) Speicherverdopplung vom bisherigen SLI und CrossFire, wo zwar eine doppelte Speichermenge verbaut werden muß, rein logisch (für die Arbeit des Grafikchips) aber dennoch nur die jeweils einfache Speichermenge zur Verfügung steht. Augenscheinlich hat nVidia hier wirklich gut mitgedacht und alle bislang vorhandenen Probleme von MultiChip-Lösungen bedacht, respektive gelöst.

Allerdings besteht der MCM-Chip von nVidia bislang natürlich nur auf dem Reißbrett als grundsätzliche Design-Idee – und damit weit entfernt von jeglicher Realisierung. Selbst die angestellten Performance-Aussagen, wonach man mit dem MCM-System bis nahe an die Performance eines regulären "monolithischen" Grafikchips kommen würde, basieren allein auf Simulationen – ohne aber das man zum derzeitigen Zeitpunkt ahnen kann, welche Probleme und Überraschungen insbesondere die XBar-Interfaces zwischen den Einzelchips mit sich bringen könnten. Für nVidia geht es bei diesem Projekt sicherlich auch nicht um eine kurz- oder mittelfristige Realisierung – sondern vielmehr darum, für die langfristige Zukunft, wenn die Fortschritte in der Halbleiterfertigung langsamer werden oder gar auch einmal gänzlich pausieren, immer noch eine Antwort in der Hinterhand zu haben, um trotzdem weiter nach vorn zu kommen. Ob es solches System nur deswegen implementiert wird, weil es einige Vorteile in der Chipfertigung (zwei kleinere Chips sind günstiger herzustellen als ein doppelt so großer Chip) mit sich bringt, bliebe dagegen abzuwarten – das nVidia-Whitepaper deutet jedenfalls keine Überlegungen in diese Richtung hin an.

Nachtrag vom 9. Juli 2017

Bezüglich der kürzlichen Meldung über nVidias Forschung an MCM-basierten Grafikchips wäre noch zu präzisieren, wofür das ganze vornehmlich gedacht ist: Früher ging man bei ähnlichen Diskussionen immer davon aus, das man hiermit (beispielhaft) einen 400mm² großen Grafikchip mittels 4 Einzelchips à 100mm² Chipfläche ersetzen kann, das komplette Produktportfolio dann aus Vielfachen dieses Einzelchips aufbaut. nVidia ist dagegen aus einer ganz anderen Warte heraus an das Thema herangegangen: Für deren HPC-Chips wird teilweise ein höherer Performancebedarf erwartet, als was die Chipfertigung konkret liefern kann. Dies ist bestmöglich zu sehen an nVidias GV100-Chip, welcher in der 12nm-Fertigung seine 815mm² groß ist – und ziemlich sicher eigentlich für die 10nm-Fertigung geplant war, mit der zwischengeschobenen 12nm-Fertigung nun eben ungewöhnlich groß wird (so groß, das der darunterliegende Interposer in zwei Belichtungsschritten gefertigt werden muß). Zukünftig könnte nVidia sogar zu noch größeren HPC-Chips gezwungen sein, wenn der Performancebedarf vorhanden ist, die Chipfertigung aber nicht mitspielt.

Mittels des MCM-Ansatzes könnte nVidia dann auch HPC-Chips mit einer Gesamtfläche oberhalb von 1000mm² herausbringen – mittels zwei Einzelchips kein wirkliches Thema, mit vier Einzelchips wären sogar noch größere Gesamtflächen (Richtung 2000mm²) denkbar. Der springende Punkt ist, das dies wahrscheinlich auf absehbare Zeit rein ein Thema von nVidias HPC-Linie sein wird – nur dort besteht der Hunger nach so viel Mehrperformance (gemäß eines breiten Wettbewerbs sowie auch des entsprechenden Computing-Bedarfs) und ist gleichzeitig auch das Geld dafür da, um dies alles zu bezahlen. Bei Gaming-Chips ist es dagegen eher unwahrscheinlich, in absehbarer Zeit MCM-Lösungen zu sehen: Selbst wenn die Fertigung von kleineren Einzelchips etwas günstiger ist, erscheint es als wirtschaftlich kaum darstellbar, Grafikcips mit (insgesamten) Chipflächen größer als 800mm² unter einer modernen (und demzufolge teuren) Fertigung im Gaming-Bereich unterzubringen. Dafür ist auch die Konkurrenzsituation bei Gaming-Lösungen zu schwach, speziell an der absoluten Leistungsspitze wurde nVidia schon seit Jahren nicht zu dem getrieben, was man wirklich realisieren könnte. Wenn überhaupt, dürften MCM-Lösungen für den Gaming-Bereich somit erst in ferner Zukunft realisiert werden.