Application of Half-float (float16) accelerators in software

Application of Half-float (float16) accelerators in software

In 'Intel IPP support for Intel(R) AVX2' article:

there is a statement about '...Half-float (float16) accelerators...'. Where could I find more technical information about these accelerators?

Thanks in advance.

3 posts / novo 0
Último post
Para obter mais informações sobre otimizações de compiladores, consulte Aviso sobre otimizações.

As you can see in the referenced documentation it is no more than one command to convert 4 (XMM) or 8 (YMM) half-floats to single precision floats (VCVTPH2PS) and one command for the reverse (VCVTPS2PH).
The mentioned documentation is not up-to-date; you can download a newer version of the "Intel architecture instruction set extensions programming reference" (currently version 14) at but these commands are now "official" and were therefore moved into the regular documentation downloadable at

My understanding is that a 'float16' floating point type is a 16-bit long ( for example, NVIDIA's APIs allow to declare it in C/C++ codes ).

A regular Single-Precision floating point type is a 32-bit long: sign(1) + exponent(8) + mantissa(23). When 'sign' and 'mantissa' are combined it is known as a 24-bit precision. It could be called as 'float32' or 'float4' instead of just 'float'.

Anyway, Thanks for these web-links and I'll take a look at Intel's docs.

PS: Just found some additional information on:

Faça login para deixar um comentário.