28 Punkte von xguru 2023-09-12 | 6 Kommentare | Auf WhatsApp teilen
  • Vier Faktoren, die es Nvidia ermöglicht haben, die GPU-Leistung in 10 Jahren um das 1000-Fache zu steigern
  • Chief Scientist Bill Dally erklärte sie in einer einzigen Folie in seiner Keynote auf der IEEE Hot Chips 2023

Zahlenrepräsentation: 16x

  • "Der größte Vorteil, den wir insgesamt erzielt haben, war die Verbesserung der Zahlenrepräsentation"
  • Diese Zahlen beziehen sich auf die wichtigsten Parameter neuronaler Netze
  • Einer dieser Parameter sind die Gewichte (Weights), ein anderer die Aktivierungen (Activations)
    • Gewichte: die Stärke der Verbindungen zwischen den Neuronen eines Modells
    • Aktivierungen: Dabei wird die Summe der Eingaben, auf die Gewichte angewendet wurden, multipliziert, um zu bestimmen, ob ein Neuron aktiviert wird, und die Information an die nächste Schicht weiterzugeben
  • Nvidia-GPUs vor der P100 stellten solche Gewichte mit Single-Precision-Floating-Point-Zahlen dar
  • Diese durch den IEEE-754-Standard definierten Zahlen sind 32 Bit lang: 23 Bit stehen für den Bruchteil, 8 Bit fungieren als Exponent für den Bruchteil und 1 Bit dient als Vorzeichen
  • Forschende im Machine Learning stellten jedoch fest, dass sich in vielen Berechnungen weniger präzise Zahlen verwenden lassen und neuronale Netze dennoch weiterhin korrekte Antworten liefern können
  • Wenn weniger Bits verarbeitet werden, lässt sich die Logik für die zentralen Berechnungen im Machine Learning (Multiplikation und Akkumulation) kleiner und effizienter gestalten
    • Die für eine Multiplikation benötigte Energie ist proportional zum Quadrat der Bitzahl
  • Deshalb halbierte Nvidia diese Zahl bei der P100 durch den Einsatz von FP16. Google brachte mit bfloat16 auch eine eigene Version heraus
    • Der Unterschied zwischen beiden liegt in der relativen Anzahl von Mantissenbits für die Präzision und Exponentenbits für den Wertebereich
    • bfloat16 hat die gleiche Anzahl an Exponentenbits wie FP32, was die Umwandlung zwischen den beiden Formaten erleichtert
  • Die heutige High-End-GPU H100 kann mit 8-Bit-Zahlen bestimmte Teile großer Transformer-Netze wie ChatGPT und andere LLMs ausführen
    • Nvidia stellte jedoch fest, dass dies keine One-size-fits-all-Lösung für alle Fälle ist
    • So verwendet Nvidias Hopper-GPU-Architektur für Berechnungen tatsächlich zwei verschiedene FP8-Formate
    • Eines bietet etwas höhere Präzision, das andere einen etwas größeren Wertebereich
    • Nvidias besonderes Geheimnis ist, zu wissen, wann welches Format eingesetzt werden sollte
  • Dally und sein Team haben viele spannende Ideen, um mit weniger Bits mehr AI herauszuholen
  • Und es ist klar, dass Floating-Point-Systeme nicht ideal sind
  • Eines der Hauptprobleme ist, dass die Floating-Point-Präzision ziemlich konstant bleibt, egal ob Zahlen groß oder klein sind
  • Die Parameter neuronaler Netze verwenden jedoch keine großen Zahlen, sondern konzentrieren sich um 0
  • Deshalb liegt der Fokus von Nvidias Forschung und Entwicklung darauf, effiziente Wege zu finden, Zahlen näher an 0 genauer darzustellen

Komplexe Instruktionen: 12,5x

  • "Der Overhead für das Holen und Dekodieren von Instruktionen ist um ein Vielfaches höher als die Ausführung einfacher arithmetischer Operationen"
  • Bei einer der Multiplikationen etwa verbraucht allein der Overhead das 20-Fache der 1,5 Picojoule, die die eigentliche Operation benötigt
  • Nvidia erzielte große Gewinne, indem GPUs so entworfen wurden, dass sie große Berechnungen mit einer einzelnen Instruktion statt mit einer Befehlsfolge ausführen
  • Es gibt zwar weiterhin Overhead, aber mit komplexen Instruktionen lassen sich die Kosten über mehr Mathematik amortisieren
  • So beträgt der Overhead der komplexen Instruktion IMMA (integer matrix multiply and accumulate) nur 16 % der Energiekosten für die mathematische Berechnung

Moore’s Law: 2,5x

  • Das Fortschreiten gemäß Moore’s Law aufrechtzuerhalten, erfordert Investitionen in Milliardenhöhe, äußerst komplexes Engineering und zahlreiche internationale Unsicherheiten
  • Dennoch ist dies ein Teil des Leistungsanstiegs von Nvidias GPUs
  • Nvidia hat konsequent die fortschrittlichsten Fertigungstechnologien genutzt
  • Die H100 wird im N5-(5-Nanometer-)Prozess von TSMC gefertigt, und die Chip-Foundry begann erst Ende 2022 mit der frühen Produktion der nächsten Generation N3

Sparsity: 2x

  • Nach dem Training bleiben in neuronalen Netzen viele Neuronen übrig, die von Anfang an nicht hätten existieren sollen
  • Bei manchen neuronalen Netzen gilt: "Selbst wenn mehr als die Hälfte der Neuronen entfernt wird, kann die Genauigkeit erhalten bleiben"
  • Die Gewichte dieser Neuronen sind 0 oder nahezu 0 und tragen daher nicht zur Ausgabe bei; sie in Berechnungen einzubeziehen ist nur Verschwendung von Zeit und Energie
  • Solche Netze "sparse" zu machen, um die Rechenlast zu senken, ist eine knifflige Aufgabe
  • Mit der A100, dem Vorgänger der H100, führte Nvidia jedoch eine Funktion ein, die das Unternehmen Structured Sparsity nennt
  • Diese Hardware erzwingt, dass zwei von vier möglichen Bereinigungsereignissen auftreten, sodass eine neue, kleinere Matrixberechnung möglich wird
  • "Das Sparsity-Problem ist noch nicht gelöst" "Wir müssen bei den Aktivierungen noch etwas tun, und auch bei den Gewichten ist noch stärkere Sparsity möglich"

6 Kommentare

 
ninebow 2023-09-12

Wow, vielen Dank für den tollen Artikel!

 
nicewook 2023-09-12

Ich habe es mit Interesse gelesen.

 
ragingwind 2023-09-12

Wow, dann muss man die Aktie wohl weiter kaufen..

 
xguru 2023-09-12

Ich habe 2018 ein paar Nvidia-Aktien als Spähtrupp gekauft, und jetzt liegen sie bei 1100 %. Ich hätte damals richtig groß einsteigen sollen. Schluchz

 
laeyoung 2023-09-12

Wow..!

 
xguru 2023-09-12

16 x 12.5 x 2.5 x 2 ergibt genau 1000.