Fakt ist: Nvidia meint tatsächlich FP32, ergo Floating-Point-Berechnungen mit hoher Genauigkeit, wie sie in Spielen gefordert werden. Die von den Tensor-Kernen bereitgestellte Rechenleistung bezieht sich auf Datenformate mit geringerer Präzision, etwa FP16 oder INT8. Man kann also trotz fehlender Informationen sicher sagen, dass ein Shader-Multiprozessor (SM) in Ampere den doppelten FP32-Durchsatz schafft, ohne die Tensorkerne einzuspannen. Doch wie macht Nvidia das? Dafür gibt es zwei Möglichkeiten. Die aus unserer Sicht naheliegendste ist, dass Nvidia den Turing-Gedanken weiterspinnt. Letzterer führte eine Neuerung ein:
Jede FP32-ALU, von denen 64 in jedem SM stecken, kann parallel mit einer INT32-Einheit daneben arbeiten. Letztere gab es auch in Pascal, allerdings ohne die Fertigkeit der "concurrent execution", besagter Parallelarbeit - es gab nur entweder (FP), oder (INT). Also legte man entsprechende Datenpfade, um zumindest einen Fortschritt zu erhalten. Da Turing aufgrund der beinahe gleich gebliebenen Fertigung ein sehr großer Chip geworden ist, war es nicht möglich, die Anzahl der wichtigen FP32-ALUs zu erhöhen. Dies geschah nun, mit Samsungs 8LPP-Fertigung, welche signifikant mehr Tansistoren pro Fläche erlaubt als das 12FFN-Verfahren von TSMC. Faktisch vergleichen wir hier eine optimierte 10-nm-Fertigung mit einer ebenso ausgereizten 16-nm-Fertigung.
Lange Rede, kurzer Sinn:
Mit Ampere denkt Nvidia zu Ende, was sie mit Turing angefangen haben. Jeder Shader-Multiprozessor enthält nicht mehr nur 64 FP32-ALUs und 64 INT32-ALUs, sondern 2× 64 FP32-ALUs. Damit erreichen GA102 und GA104 gigantische Durchsatzraten bei FP32-Berechnungen, wie sie Spiele mehrheitlich fordern. Allerdings wurden die übrigen Teile des Chips nicht verdoppelt, sodass man nicht von Faktor 2 bei den Gaming-Fps ausgehen kann. Wäre dies der Fall, hätte Nvidia damit geworben. Die Granularität des Shader-Multiprozessors ist folglich wieder rückläufig, nachdem es zuletzt Bestrebungen gab, weniger FP32-Einheiten pro SM zu installieren. Außerdem bleibt die Frage, wie gut Ampere seine ALUs mit Arbeit versorgen kann; je mehr Rechenwerke, desto schwieriger das Scheduling. Selbstverständlich werden wir uns in Kürze ansehen, wie es um die Effizienz der Rechenwerke von Ampere steht.