FP16 Precision and Conversions

The FP16 pipeline works well when reduced precision is sufficient. However, it is advisable to always check whether the optimisations resulted in precision artefacts. When 16 bit float precision hardware is available, and shaders use mediump, then 16<->32-bit conversion is free using modifiers. This is because the USC ALU pipeline includes it.

When shaders do not use the 16-bit instructions or the hardware does not contain a 16-bit float pipeline, such as with early Rogue hardware, then the instructions just run on the regular 32-bit pipeline. As a result, no conversions happen.