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

constexpr CK_TILE_HOST_DEVICE e8m0_bexp_t ()
 
constexpr CK_TILE_HOST_DEVICE e8m0_bexp_t (type init)
 
constexpr CK_TILE_HOST_DEVICE e8m0_bexp_t (float scale)
 
constexpr CK_TILE_HOST_DEVICE operator type () const
 
constexpr CK_TILE_HOST_DEVICE raw_typeget ()
 
constexpr CK_TILE_HOST_DEVICE raw_type get () const
 
constexpr CK_TILE_HOST_DEVICE 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]

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

◆ e8m0_bexp_t() [2/3]

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

◆ e8m0_bexp_t() [3/3]

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

Member Function Documentation

◆ get() [1/2]

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

◆ get() [2/2]

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

◆ operator float()

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

◆ operator type()

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

◆ operator!=()

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

◆ operator==()

constexpr 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:
  • /home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-composable-kernel/checkouts/develop/include/ck_tile/core/numeric/e8m0.hpp