Releases: AcademySoftwareFoundation/Imath
v3.1.2
v3.1.1
v3.1.0
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()
andimath_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 theIMATH_USE_NOEXCEPT
CMake option. -
Python bindings:
- FixedArray objects support a "read only" state.
- FixedArray objects support python buffer protocol.
-
Optimized 4x4 matrix multiplication.
v3.0.5
v3.0.4
v3.0.2
v3.0.1
First release of Imath 3.0.
See the porting guide for details about differences from previous releases.
Summary:
- Imath includes the
half
type, formerly in a separateHalf
library. - Headers are installed in
Imath/
subdirectory. - All appropriate methods are marked
constexpr
,noexcept
- Appropriate declarations include CUDA
__host__
and__device__
directives. - Throwing methods throw
std
exceptions instead ofIex
. - New
Vec
andMatrix
interoperability constructors for conversion from other similar type objects. - Symbol linkage visibility is limited to specific public symbols.
- Python bindings are off by default, available by setting
PYTHON=ON
. - Deprecated features:
std::numeric_limits
replacesImath::limits
.Int64
andSInt64
are deprecated in favor ofuint64_t
andint64_t
.
Read library documentation at: https://imath.readthedocs.io
v3.0.1-beta
v3.0.0-beta
Beta: First release of Imath independent of OpenEXR.
See the porting guide for details about differences from previous releases.
Summary:
- Imath includes the
half
type, formerly in a separateHalf
library. - Headers are installed in
Imath/
subdirectory. - All appropriate methods are marked
constexpr
,noexcept
- Appropriate declarations include CUDA
__host__
and__device__
directives. - Throwing methods throw
std
exceptions instead ofIex
. - New
Vec
andMatrix
interoperability constructors for conversion from other similar type objects. - Symbol linkage visibility is limited to specific public symbols.
- Python bindings are off by default, available by setting
PYTHON=ON
. - Deprecated features:
std::numeric_limits
replacesImath::limits
.Int64
andSInt64
are deprecated in favor ofuint64_t
andint64_t
.
Read library documentation at: https://imath.readthedocs.io