Please note: We are aware of an issue affecting replies on the Arm Community forums, which may not be loading as expected.

We apologize for any inconvenience and appreciate your patience while we investigate and work to resolve the issue.

Thank you for your understanding.


This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Is there practical examples of Half-float (FP16) ?

Greetings,

After reading“PHENOMENAL COSMIC POWERS! Itty-bitty living space!” from edplowman, I'm wondering how the FP16 type can actually be used ?

When reading the ARMv7 and ARMv8 architectures manuals, the only instructions that I found to refer to half-precision floating-points are VCVT (ARMv7) or FCVT (ARMv8).

So, my questions are :

  • Can CPU do anything with half-precision floating points beside converting them ? Can you add/subtract/multiply/divide half-precision floating-points natively ?
  • How do you use half-precision floating points values efficiently with OpenGL ? Do you do all the operations with single-precision floats and do a conversion before sending the data to the GPU ?
  • Is there any example showing how to use this data type efficiently ?
Parents
  • Thanks for these clarifications !

    That said, what would be the general best practices for good CPU←→GPU bandwidth usage while retaining enough quality then ?

    FP32 (Highp) for close range / high detail assets and (FP16) Mediump for landscape and random filling decoration, I guess ?

Reply
  • Thanks for these clarifications !

    That said, what would be the general best practices for good CPU←→GPU bandwidth usage while retaining enough quality then ?

    FP32 (Highp) for close range / high detail assets and (FP16) Mediump for landscape and random filling decoration, I guess ?

Children