Festkomma vs. Gleitkomma: die Unterschiede
Bei Festkomma wird die Position des Kommas vorab festgelegt, und Bruchzahlen werden mit denselben Bitfolgen und Rechenwerken wie ganze Zahlen verarbeitet. Die Schaltungen sind klein und sparsam, daher wird Festkomma in DSPs, Mikrocontrollern ohne Gleitkommaeinheit und für Ganzzahlberechnungen bei der KI-Inferenz eingesetzt. Gleitkomma stellt Zahlen aus Vorzeichen, Exponent und Mantisse dar und verschiebt das Komma über den Exponenten; so lassen sich Werte in einem sehr großen Bereich mit nahezu konstanter relativer Genauigkeit verarbeiten. Die Rechenwerke werden größer, doch da man sich nicht um die Stellenausrichtung kümmern muss, ist Gleitkomma der Standard für allgemeine Berechnungen und KI-Training.
| Merkmal | Festkomma | Gleitkomma |
|---|---|---|
| Darstellung | Eine ganzzahlige Bitfolge wird mit einem festgelegten Skalierungsfaktor (2 hoch −n) multipliziert gelesen. Notation z. B. Q15 | Drei Teile – Vorzeichen, Exponent, Mantisse – in der Form (−1)^Vorzeichen × 1,Mantisse × 2^(Exponent − Bias). In IEEE 754 festgelegt |
| Wertebereich (Beispiel) | Bei Q15 (16 Bit) −1 bis 1 − 2⁻¹⁵ | Bei einfacher Genauigkeit (32 Bit) etwa 10⁻³⁸ bis 10³⁸. Mit denormalisierten Zahlen noch näher an 0 |
| Genauigkeit | Konstante Schrittweite (konstanter absoluter Fehler). Je kleiner der Wert, desto größer der relative Fehler | Nahezu konstante relative Genauigkeit (bei einfacher Genauigkeit etwa 7 Stellen). Je größer der Wert, desto größer die Schrittweite |
| Rechenwerk | Ganzzahl-Addierer und -Multiplizierer unverändert | Schaltungen für Exponentenvergleich, Mantissenausrichtung, Normalisierung und Rundung erforderlich |
| Schaltungsgröße und Leistung | Klein. Bei gleicher Bitbreite weit geringer als Gleitkomma | Groß. Fläche und Energie sind oft ein Mehrfaches eines Ganzzahl-Rechenwerks gleicher Bitbreite |
| Überlaufverhalten | Im Zweierkomplement Überlauf auf die Gegenseite (Wrap-around). Verhindert durch Sättigungsarithmetik oder Akkumulatoren mit Reservebits (Guard-Bits) | Bei Überschreiten des größten darstellbaren Werts ±Unendlich. 0 ÷ 0 usw. ergibt NaN |
| Skalierung | Der Programmierer schätzt die Wertebereiche ab und legt Verschiebungen und Kommapositionen für jede Operation fest | Der Exponent passt sich automatisch an, man muss kaum darauf achten |
| Reproduzierbarkeit | Bitgenau gleiche Ergebnisse sind leicht zu erreichen | Das Ergebnis ändert sich je nach Additionsreihenfolge geringfügig (das Assoziativgesetz gilt nicht) |
| Einsatzbereiche | DSPs, kleine Mikrocontroller ohne Gleitkommaeinheit, Signalverarbeitung in FPGAs und ASICs, Ganzzahlberechnungen bei der KI-Inferenz (z. B. INT8) | Allgemeine Berechnungen auf PCs und Servern, wissenschaftlich-technisches Rechnen (doppelte Genauigkeit), Grafik, KI-Training (FP32, BF16, FP16, FP8) |
Die Zahlenwerte sind typische Größenordnungen und variieren je nach Prozessgeneration und Produkt.