Skip to main content

ClikaRT::dtype::float8_e5m2_t

struct

Header: ClikaRT/compute/scalar_types.h

FP8 E5M2: 1 sign + 5 exponent + 2 mantissa, bias 15. Range ±57344, smallest normal 2^-14, eps 2^-2. IEEE-style: includes ±Inf and NaN. 8-bit storage.

Static member functions

from_bits()

static constexpr float8_e5m2_t from_bits(std::uint8_t b) noexcept

Reinterpret a raw 8-bit encoding without converting.

Declared in ClikaRT/compute/scalar_types.h, line 166

Member functions

float8_e5m2_t()

constexpr constexpr float8_e5m2_t() noexcept=default

Declared in ClikaRT/compute/scalar_types.h, line 157

float8_e5m2_t(float)

explicit float8_e5m2_t(float f) noexcept

Convert from fp32 (round-to-nearest-even; ±Inf saturates to ±max-finite).

Declared in ClikaRT/compute/scalar_types.h, line 160

operator float()

operator float() const noexcept

Convert to fp32 (lossless).

Declared in ClikaRT/compute/scalar_types.h, line 163

is_nan()

constexpr bool is_nan() const noexcept

True at the format's NaN encodings (max exponent, nonzero mantissa).

Declared in ClikaRT/compute/scalar_types.h, line 168

is_inf()

constexpr bool is_inf() const noexcept

True at the two infinity encodings (max exponent, zero mantissa).

Declared in ClikaRT/compute/scalar_types.h, line 169

Data members

bits

std::uint8_t bits = 0

Raw 8-bit encoding (the storage/ABI form).

Declared in ClikaRT/compute/scalar_types.h, line 155

Friends

operator==

friend bool operator==(float8_e5m2_t a, float8_e5m2_t b) noexcept

Compares a and b by dequantized value (IEEE rules; a NaN operand compares false).

Declared in ClikaRT/compute/scalar_types.h, line 171

operator!=

friend bool operator!=(float8_e5m2_t a, float8_e5m2_t b) noexcept

Compares a and b by dequantized value (IEEE rules; a NaN operand compares false).

Declared in ClikaRT/compute/scalar_types.h, line 172

operator<

friend bool operator<(float8_e5m2_t a, float8_e5m2_t b) noexcept

Compares a and b by dequantized value (IEEE rules; a NaN operand compares false).

Declared in ClikaRT/compute/scalar_types.h, line 173

operator<=

friend bool operator<=(float8_e5m2_t a, float8_e5m2_t b) noexcept

Compares a and b by dequantized value (IEEE rules; a NaN operand compares false).

Declared in ClikaRT/compute/scalar_types.h, line 174

operator>

friend bool operator>(float8_e5m2_t a, float8_e5m2_t b) noexcept

Compares a and b by dequantized value (IEEE rules; a NaN operand compares false).

Declared in ClikaRT/compute/scalar_types.h, line 175

operator>=

friend bool operator>=(float8_e5m2_t a, float8_e5m2_t b) noexcept

Compares a and b by dequantized value (IEEE rules; a NaN operand compares false).

Declared in ClikaRT/compute/scalar_types.h, line 176