Half-precision floating-point format

In computing, half precision (sometimes called FP16) is a binaryfloating-pointcomputer number format that occupies 16 bits (two bytes in modern computers) in computer memory. It is intended for storage of floating-point values in applications where higher precision is not essential, in particular computer graphics images and neural networks.

16-bit computer number format
Not to be confused with bfloat16, a different 16-bit floating-point format.

Almost all modern uses follow the IEEE 754-2008 standard, where the 16-bit base-2 format is referred to as binary16, and the exponent uses 5 bits. This can express values in the range ±65,504, with the minimum value above 1 being 1 + 1/1024.

Depending on the computer, half-precision can be over an order of magnitude faster than double precision, e.g. 550 PFLOPS for half-precision vs 37 PFLOPS for double precision on one cloud provider.[1]

IEEE 754

. . . Half-precision floating-point format . . .

Several earlier 16-bit floating point formats have existed including that of Hitachi’s HD61810 DSP[2] of 1982, Scott’s WIF[3] and the 3dfx Voodoo Graphics processor.[4]

ILM was searching for an image format that could handle a wide dynamic range, but without the hard drive and memory cost of single or double precision floating point).[5] The hardware-accelerated programmable shading group led by John Airey at SGI (Silicon Graphics) invented the s10e5 data type in 1997 as part of the ‘bali’ design effort. This is described in a SIGGRAPH 2000 paper[6] (see section 4.3) and further documented in US patent 7518615.[7] It was popularized by its use in the open-source OpenEXR image format.

Nvidia and Microsoft defined the halfdatatype in the Cg language, released in early 2002, and implemented it in silicon in the GeForce FX, released in late 2002.[8] Since then support for 16-bit floating point math in graphics cards has become very common.[citation needed]

The F16C extension in 2012 allows x86 processors to convert half-precision floats to and from single-precision floats with a machine instruction.

. . . Half-precision floating-point format . . .

This article is issued from web site Wikipedia. The original article may be a bit shortened or modified. Some links may have been modified. The text is licensed under “Creative Commons – Attribution – Sharealike” [1] and some of the text can also be licensed under the terms of the “GNU Free Documentation License” [2]. Additional terms may apply for the media files. By using this site, you agree to our Legal pages . Web links: [1] [2]

. . . Half-precision floating-point format . . .

Previous post Spring City (Utah)
Next post Orchards, Johannesburg