FP8, FP16, BF16 & FP32: Numerische Präzision bei GPUs im Vergleich
Numerische Präzision beschreibt, wie exakt GPUs Zahlen darstellen und verarbeiten. In Deep Learning bestimmt das gewählte Gleitkommaformat (z. B. FP32, FP16, BF16 oder FP8) den Kompromiss zwischen Rechenleistung, Speicherbedarf und Modellgenauigkeit und spielt daher eine wichtige Rolle für die Leistung von KI-Anwendungen.
Was sind Gleitkommazahlen?
Gleitkommazahlen sind eine Möglichkeit, reelle Zahlen im Computer darzustellen. Statt einer festen Anzahl von Nachkommastellen wie bei Ganzzahlen wird die Zahl in eine Art wissenschaftliche Notation zerlegt. Sie bestehen aus drei zentralen Komponenten:
- Vorzeichen
- Exponent
- Mantisse
Das Vorzeichenbit legt fest, ob eine Zahl positiv oder negativ ist. Der Exponent bestimmt den Wertebereich, also wie große oder kleine Zahlen dargestellt werden können. Die Mantisse wird auch Signifikand genannt und definiert die Präzision, also wie genau eine Zahl dargestellt wird. Je mehr Bits der Exponent hat, desto größer ist der Dynamikbereich. Je mehr Bits die Mantisse besitzt, desto feiner ist die Auflösung zwischen zwei darstellbaren Zahlen.
Ein zentraler Zielkonflikt besteht darin, dass höhere Präzision zwar genauere Ergebnisse liefert, aber auch mehr Speicher und Rechenleistung benötigt. Geringere Präzision spart hingegen Ressourcen und beschleunigt Berechnungen, kann jedoch zu Rundungsfehlern führen. Besonders bei Deep-Learning-Modellen ist das relevant, da hier mit Millionen bis Milliarden von Parametern gerechnet wird. Je nach Format gibt es außerdem spezielle Werte wie NaN („Not a Number“) oder ±Inf (unendlich), die bei bestimmten Rechenoperationen entstehen können.
Bei sehr kleinen Zahlen kann es zu sogenanntem Underflow kommen. Werte verlieren dann an Genauigkeit, werden als subnormale Werte dargestellt oder zu null gerundet. Umgekehrt spricht man von Overflow, wenn Zahlen zu groß werden und den darstellbaren Bereich überschreiten. KI-Hardware kombiniert aus diesem Grund verschiedene Gleitkommaformate, um Geschwindigkeit und Stabilität gleichzeitig zu erreichen. Dieses Verfahren nennt man Mixed Precision. Es ist heute in vielen Trainingspipelines Standard, insbesondere beim Training großer Modelle wie beispielsweise LLMs.
- Exklusive NVIDIA H200 GPUs für höchste Rechenleistung
- Garantierte Performance durch vollständig dedizierte CPU-Kerne
- 100 % Hosting in Deutschland für maximale Datensicherheit und DSGVO-Konformität
- Einfaches, kalkulierbares Preismodell mit festem Preis pro Stunde
Vergleich der Formate
Die Wahl des Gleitkommaformats beeinflusst maßgeblich Performance, Speicherbedarf und Modellstabilität. Während FP32 lange als Standard galt, setzen aktuelle Systeme zunehmend auf reduzierte Präzision. Besonders im Deep Learning haben sich FP16, BF16 und zunehmend FP8 etabliert.
FP32 (Single Precision)
FP32 ist das klassische Format für wissenschaftliches Rechnen und war lange Zeit der Standard im Deep Learning. Es bietet eine hohe Genauigkeit und einen großen Dynamikbereich.
Wie der Name schon andeutet, nutzt FP32 32 Bit insgesamt: 1 Bit für das Vorzeichen, 8 Bits für den Exponenten und 23 Bits für die Mantisse. Dadurch lassen sich sowohl sehr große als auch sehr kleine Zahlen stabil darstellen. Diese Genauigkeit ist besonders wichtig bei komplexen Simulationen oder sensiblen Trainingsprozessen. Allerdings ist FP32 rechenintensiv und benötigt viel Speicher.
In der Praxis wird FP32 heute daher meist nur noch in kritischen Teilen eines Modells verwendet, wie bei der Verlustberechnung oder Gradientenakkumulation. Für große Modelle wie Transformer kann FP32 allein zu langsam sein. Dennoch bleibt es der Referenzstandard für numerische Stabilität.
| Vorteile | Nachteile |
|---|---|
| ✓ Sehr hohe Präzision | ✗ Hoher Speicherverbrauch |
| ✓ Großer Dynamikbereich | ✗ Geringere Rechengeschwindigkeit auf GPUs |
| ✓ Stabil für Training und wissenschaftliche Anwendungen | ✗ Weniger effizient für große KI-Modelle |
FP16 (Half Precision)
FP16 wurde eingeführt, um Rechenleistung zu steigern und Speicherbedarf zu reduzieren. Es ist ein zentraler Bestandteil des Mixed-Precision-Trainings.
FP16 verwendet nur 16 Bit: 1 Bit Vorzeichen, 5 Bits Exponent und 10 Bits Mantisse. Dadurch halbiert sich der Speicherbedarf im Vergleich zu FP32. GPUs können FP16-Operationen aus diesem Grund deutlich schneller ausführen, insbesondere über Tensor Cores. Allerdings ist der Dynamikbereich eingeschränkt.
Ein Problem von FP16 ist Underflow bei sehr kleinen Werten, was insbesondere bei Gradienten problematisch sein kann. Deshalb wird häufig sogenanntes Loss Scaling eingesetzt. Hierbei handelt es sich um eine Technik, die verwendet wird, um numerische Fehler zu vermeiden. Sie soll verhindern, dass sehr kleine Werte während des Trainings zu null werden. FP16 eignet sich gut für neuronale Netze, erfordert jedoch sorgfältige Implementierung.
| Vorteile | Nachteile |
|---|---|
| ✓ Hohe Geschwindigkeit | ✗ Anfällig für Underflow |
| ✓ Deutlich geringerer Speicherbedarf | ✗ Geringere numerische Stabilität |
| ✓ Gute Unterstützung durch moderne GPUs | ✗ Zusätzliche Techniken wie Loss Scaling notwendig |
BF16 (Brain Floating Point)
Das Gleitkommaformat BF16 wurde speziell für Deep Learning entwickelt und kombiniert Vorteile von FP32 und FP16. Es ist daher vor allem relevant für große Modelle wie Transformer.
BF16 nutzt ebenfalls 16 Bit, verteilt diese aber anders: 1 Bit Vorzeichen, 8 Bits Exponent und nur 7 Bits Mantisse. Dadurch entspricht der Dynamikbereich dem von FP32. Gleichzeitig wird allerdings Speicher gespart.
Der entscheidende Vorteil: BF16 reduziert Underflow-Probleme deutlich im Vergleich zu FP16. Gerade bei großen Sprachmodellen ist dies entscheidend. Deshalb setzen viele Frameworks und Hardware-Plattformen bevorzugt auf BF16. Die geringere Mantisse bedeutet jedoch weniger Präzision.
| Vorteile | Nachteile |
|---|---|
| ✓ Großer Dynamikbereich (ähnlich FP32) | ✗ Geringere Präzision als FP32 |
| ✓ Weniger Underflow-Probleme als FP16 | ✗ Leichte Rundungsfehler möglich |
| ✓ Ideal für Transformer-Modelle | ✗ Nicht auf älterer Hardware verfügbar |
FP8 (Ultra Low Precision)
FP8 ist ein vergleichsweise junges Format und wird vor allem für Inferenz und optimierte Trainingspipelines eingesetzt. Der Fokus liegt auf maximaler Effizienz.
FP8 verwendet nur 8 Bit und existiert in verschiedenen Varianten wie E4M3 oder E5M2, die unterschiedliche Aufteilungen von Exponent und Mantisse nutzen. Dadurch wird der Speicherbedarf drastisch reduziert. Moderne GPUs wie die NVIDIA H100 unterstützen FP8 nativ in Tensor Cores.
FP8 ermöglicht enorme Geschwindigkeitsgewinne, die sich insbesondere bei großen Modellen niederschlagen. Allerdings ist die Präzision stark eingeschränkt. Deshalb wird FP8 meist in Kombination mit höherpräzisen Formaten verwendet. Typisch ist der Einsatz von FP8 für Inferenz oder quantisiertes Training.
| Vorteile | Nachteile |
|---|---|
| ✓ Extrem hoher Durchsatz | ✗ Sehr geringe Präzision |
| ✓ Minimaler Speicherbedarf | ✗ Nur mit spezieller Hardware sinnvoll |
| ✓ Ideal für Inferenz großer Modelle | ✗ Komplexe Kalibrierung erforderlich |
Die Gleitkommaformate im direkten Vergleich
FP32 und FP16 sind IEEE-754-Formate. BF16 und FP8 folgen ebenfalls dem Gleitkomma-Prinzip, sind aber separat definiert: BF16 als FP32-abgeleitetes Industrieformat, FP8 in Varianten wie E4M3 und E5M2 über die OCP-OFP8-Spezifikation.
| Format | Bits gesamt | Exponent | Mantisse (gespeichert) | Dynamikbereich (ca.) |
|---|---|---|---|---|
| FP32 | 32 | 8 | 23 | ca. 10⁻³⁸ bis 10³⁸ |
| FP16 | 16 | 5 | 10 | ca. 10⁻⁵ bis 65.504 |
| BF16 | 16 | 8 | 7 | ca. 10⁻³⁸ bis 10³⁸ |
| FP8 | 8 | 4 bis 5 | 2 bis 3 | stark eingeschränkt |
Hardware-Unterstützung
Moderne GPUs sind speziell dafür ausgelegt, mit reduzierter numerischer Präzision besonders effizient zu arbeiten. Die NVIDIA-Ampere-Architektur erweiterte Tensor Cores unter anderem um BF16 und TF32; FP16 wurde bereits früher unterstützt. Dadurch wurde Mixed Precision breiter nutzbar und häufiger im praktischen KI-Training eingesetzt.
Die neuere NVIDIA Hopper-Generation erweitert dieses Konzept um FP8. GPUs wie die NVIDIA H100 besitzen spezielle Hardwareeinheiten, die FP8-Berechnungen besonders schnell ausführen können. Auch die NVIDIA-Ada-Lovelace-Architektur ist stark auf FP16- und BF16-Workloads optimiert, unterstützt je nach Modell und Einsatzkontext ebenfalls FP8.
Tensor Cores spielen dabei eine zentrale Rolle. Sie beschleunigen Matrixoperationen, die in neuronalen Netzen ständig benötigt werden. Je geringer die verwendete Präzision ist, desto mehr Berechnungen kann die GPU parallel ausführen. Dadurch steigen Geschwindigkeit und Effizienz deutlich.
Wie stark dieser Vorteil in der Praxis ausfällt, hängt jedoch nicht nur von der Hardware ab, sondern auch von der Software. Frameworks wie PyTorch und TensorFlow unterstützen Mixed Precision heute automatisch und wählen passende Formate in vielen Fällen selbstständig aus.
Nicht jede GPU unterstützt jedoch alle Formate gleichermaßen. Ältere Modelle arbeiten häufig hauptsächlich mit FP32, während moderne KI-Beschleuniger speziell für FP16, BF16 oder FP8 entwickelt wurden. Für große Sprachmodelle gelten BF16 und FP16 mittlerweile als Standard. FP8 etabliert sich zunehmend auch im Training (z. B. DeepSeek-V3), erfordert dort aber feingranulare Skalierung und FP32-Akkumulation.
Praxis-Impact: Quantisierung und Downcasting
Im praktischen Einsatz haben reduzierte Gleitkommaformate einen großen Einfluss auf Geschwindigkeit, Speicherbedarf und Betriebskosten von KI-Anwendungen. Werden Berechnungen von FP32 auf FP16 oder BF16 umgestellt, benötigen Modelle deutlich weniger Speicher. Dadurch passen größere Modelle oder höhere Batchgrößen in den Grafikspeicher der GPU.
Zusätzlich können GPUs mit kleineren Datenformaten mehr Berechnungen parallel ausführen. Das erhöht den Durchsatz und verkürzt Trainings- sowie Inferenzzeiten. Vor allem bei großen neuronalen Netzen mit Milliarden Parametern ist dieser Unterschied erheblich. Ein wichtiger Optimierungsschritt ist dabei das sogenannte Downcasting. Dabei werden Daten oder Modellparameter von einem größeren Format wie FP32 in kleinere Formate wie FP16 oder BF16 überführt. Dadurch sinken Speicherverbrauch und Bandbreitenanforderungen deutlich, während die Geschwindigkeit erhöht wird.
Noch einen Schritt weiter geht die sogenannte Quantisierung. Dabei werden Modelle auf noch kleinere Formate wie FP8 oder Integer-Datentypen reduziert. Das senkt die Speicheranforderungen weiter und verbessert die Latenz, also die Reaktionsgeschwindigkeit eines KI-Systems. Deshalb spielt Quantisierung vor allem bei produktiven KI-Anwendungen und Echtzeit-Inferenz eine wichtige Rolle.
Allerdings gibt es immer einen Kompromiss zwischen Effizienz und Genauigkeit. Wird die Präzision zu stark reduziert, können Rundungsfehler zunehmen und die Modellqualität verschlechtern. Deshalb kombinieren KI-Frameworks oft mehrere Formate gleichzeitig. Kritische Berechnungen laufen beispielsweise weiterhin in höherer Präzision, während weniger empfindliche Teile in FP16, BF16 oder FP8 verarbeitet werden.
- Kostengünstige vCPUs und leistungsstarke dedizierte Cores
- Höchste Flexibilität ohne Mindestvertragslaufzeit
- Inklusive 24/7 Experten-Support


