2.13. __nv_fp8x4_e4m3 Struct Reference

[C++ struct for handling vector type of four fp8 values of e4m3 kind.]

This structure implements the datatype for storage and operations on the vector of four fp8 values of e4m3 kind each: with 1 sign, 4 exponent, 1 implicit and 3 explicit mantissa bits. The encoding doesn't support Infinity. NaNs are limited to 0x7F and 0xFF values.

Public Constructors

__host____device__ ​ __nv_fp8x4_e4m3 ( const double4 f )
__host____device__ ​ __nv_fp8x4_e4m3 ( const float4 f )
__host____device__ ​ __nv_fp8x4_e4m3 ( const __nv_bfloat162 flo, const __nv_bfloat162 fhi )
__host____device__ ​ __nv_fp8x4_e4m3 ( const __half2 flo, const __half2 fhi )
 __nv_fp8x4_e4m3 ( )

Public Member Functions

__host____device__ ​  operator float4 ( ) const

Public Variables

__nv_fp8x4_storage_t __x

Constructors

__host____device____nv_fp8x4_e4m3::__nv_fp8x4_e4m3 ( const double4 f ) [inline, explicit]
Description

Constructor from double4 vector data type, relies on __NV_SATFINITE behavior for out-of-range values.

__host____device____nv_fp8x4_e4m3::__nv_fp8x4_e4m3 ( const float4 f ) [inline, explicit]
Description

Constructor from float4 vector data type, relies on __NV_SATFINITE behavior for out-of-range values.

__host____device____nv_fp8x4_e4m3::__nv_fp8x4_e4m3 ( const __nv_bfloat162 flo, const __nv_bfloat162 fhi ) [inline, explicit]
Description

Constructor from a pair of __nv_bfloat162 data type values, relies on __NV_SATFINITE behavior for out-of-range values.

__host____device____nv_fp8x4_e4m3::__nv_fp8x4_e4m3 ( const __half2 flo, const __half2 fhi ) [inline, explicit]
Description

Constructor from a pair of __half2 data type values, relies on __NV_SATFINITE behavior for out-of-range values.

__nv_fp8x4_e4m3::__nv_fp8x4_e4m3 ( )
Description

Constructor by default.

Member Functions

__host____device____nv_fp8x4_e4m3::operator float4 ( ) const [inherited, inline]
Description

Conversion operator to float4 vector data type.

Variables

__nv_fp8x4_storage_t__nv_fp8x4_e4m3::__x [inherited]

Storage variable contains the vector of four fp8 floating-point data values.