Skip to content

v3.1.0

Compare
Choose a tag to compare
@cary-ilm cary-ilm released this 13 Jul 21:38
· 151 commits to RB-3.1 since this release
e4b831a

Minor release with new significant features:

  • Optimized half-to-float and float-to-half conversion, using F16C SSE instruction set if available. Non-SSE conversion eliminates the float-to-half exponent lookup table, and half-to-float conversion provides a compile-time-optional bit shifting algorithm that is slower but eliminates the need for the lookup table, for applications where memory is limited.

    Half-to-float and float-to-half conversion is also available as C-language functions imath_half_to_float() and imath_float_to_half().

    All new conversions produced identical results, and new options are off by default to ensure backwards compatibility. See https://imath.readthedocs.io for more info.

  • noexcept specifier can be eliminated at compile-time via the IMATH_USE_NOEXCEPT CMake option.

  • Python bindings:

    • FixedArray objects support a "read only" state.
    • FixedArray objects support python buffer protocol.
  • Optimized 4x4 matrix multiplication.