bfloat16(brain floating point with 16 bits) ist die Bezeichnung für ein Gleitkommaformat in Computersystemen. Es handelt sich um ein binäres Datenformat mit einem Bit für das Vorzeichen, 8 Bits für den Exponenten und 7 Bits für die Mantisse. Es handelt sich also um eine in der Mantisse gekürzte Version des halbgenauen IEEE 754Datentyps.
bfloat16 wird insbesondere in Systemen für maschinelles Lernen eingesetzt, wie beispielsweise TPUs[1][2][3], sowie bestimmten Intel-Xeon-Prozessoren und Intel FPGAs.[4][5][6]
↑Elmar Haußmann: Comparing Google’s TPUv2 against Nvidia’s V100 on ResNet-50. In: RiseML Blog. 26. April 2018, archiviert vom Original am 26. April 2018; abgerufen am 23. Mai 2018: „For the Cloud TPU, Google recommended we use the bfloat16 implementation from the official TPU repository with TensorFlow 1.7.0. Both the TPU and GPU implementations make use of mixed-precision computation on the respective architecture and store most tensors with half-precision.“
↑Michael Feldman: Intel Lays Out New Roadmap for AI Portfolio. In: TOP500 Supercomputer Sites. 23. Mai 2018, abgerufen am 23. Mai 2018: „Intel plans to support this format across all their AI products, including the Xeon and FPGA lines“
↑Lucian Armasu: Intel To Launch Spring Crest, Its First Neural Network Processor, In 2019. In: Tom’s Hardware. 23. Mai 2018, abgerufen am 23. Mai 2018: „Intel said that the NNP-L1000 would also support bfloat16, a numerical format that’s being adopted by all the ML industry players for neural networks. The company will also support bfloat16 in its FPGAs, Xeons, and other ML products. The Nervana NNP-L1000 is scheduled for release in 2019.“