e8m0_bexp_t Struct Reference

e8m0_bexp_t Struct Reference#

Composable Kernel: ck_tile::e8m0_bexp_t Struct Reference
ck_tile::e8m0_bexp_t Struct Reference

Unsigned representation of a conventional biased Float32 exponent. More...

#include <e8m0.hpp>

Public Types

using raw_type = uint8_t
using type = raw_type

Public Member Functions

CK_TILE_HOST_DEVICE constexpr e8m0_bexp_t ()
CK_TILE_HOST_DEVICE constexpr e8m0_bexp_t (type init)
CK_TILE_HOST_DEVICE constexpr e8m0_bexp_t (float scale)
CK_TILE_HOST_DEVICE constexpr operator type () const
CK_TILE_HOST_DEVICE constexpr raw_typeget ()
CK_TILE_HOST_DEVICE constexpr raw_type get () const
CK_TILE_HOST_DEVICE constexpr operator float () const
constexpr bool operator== (const e8m0_bexp_t &other) const
constexpr bool operator!= (const e8m0_bexp_t &other) const

Public Attributes

raw_type data

Detailed Description

Unsigned representation of a conventional biased Float32 exponent.

bias = 127;

E8M0_1 = 0b01111111; => 2^(127-127) = 1 E8M0_2 = 0b10000000; => 2^(128-127) = 2^1 = 2 E8M0_3 = 0b10000010; => 2^(130-127) = 2^3 = 8 E8M0_135 = 0b10000111; => 2^(135-127) = 2^8 = 256 E8M0_142 = 0b10001110; => 2^(142-127) = 2^15 = 32768 E8M0_MIN = 0b00000000; => 2^-127 E8M0_MAX = 0b11111110; => 2^127 E8M0_NAN = 0b11111111; => NaN

Member Typedef Documentation

◆ raw_type

◆ type

Constructor & Destructor Documentation

◆ e8m0_bexp_t() [1/3]

CK_TILE_HOST_DEVICE constexpr ck_tile::e8m0_bexp_t::e8m0_bexp_t ( )
inlineconstexpr

◆ e8m0_bexp_t() [2/3]

CK_TILE_HOST_DEVICE constexpr ck_tile::e8m0_bexp_t::e8m0_bexp_t ( type init)
inlineexplicitconstexpr

◆ e8m0_bexp_t() [3/3]

CK_TILE_HOST_DEVICE constexpr ck_tile::e8m0_bexp_t::e8m0_bexp_t ( float scale)
inlineexplicitconstexpr

Member Function Documentation

◆ get() [1/2]

CK_TILE_HOST_DEVICE constexpr raw_type & ck_tile::e8m0_bexp_t::get ( )
inlineconstexpr

◆ get() [2/2]

CK_TILE_HOST_DEVICE constexpr raw_type ck_tile::e8m0_bexp_t::get ( ) const
inlineconstexpr

◆ operator float()

CK_TILE_HOST_DEVICE constexpr ck_tile::e8m0_bexp_t::operator float ( ) const
constexpr

◆ operator type()

CK_TILE_HOST_DEVICE constexpr ck_tile::e8m0_bexp_t::operator type ( ) const
inlineconstexpr

◆ operator!=()

bool ck_tile::e8m0_bexp_t::operator!= ( const e8m0_bexp_t & other) const
inlineconstexpr

◆ operator==()

bool ck_tile::e8m0_bexp_t::operator== ( const e8m0_bexp_t & other) const
inlineconstexpr

Member Data Documentation

◆ data

raw_type ck_tile::e8m0_bexp_t::data

The documentation for this struct was generated from the following file: