15.24. __nv_fp8x4_e4m3
-
struct __nv_fp8x4_e4m3
__nv_fp8x4_e4m3 datatype
This structure implements the datatype for storage and operations on the vector of four
fp8values ofe4m3kind 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 Functions
-
__nv_fp8x4_e4m3() = default
Constructor by default.
-
__host__ __device__ inline explicit __nv_fp8x4_e4m3(const __half2 flo, const __half2 fhi)
Constructor from a pair of
__half2data type values, relies on__NV_SATFINITEbehavior for out-of-range values.
-
__host__ __device__ inline explicit __nv_fp8x4_e4m3(const __nv_bfloat162 flo, const __nv_bfloat162 fhi)
Constructor from a pair of
__nv_bfloat162data type values, relies on__NV_SATFINITEbehavior for out-of-range values.
-
inline explicit __NV_SILENCE_DEPRECATION_BEGIN __host__ __device__ __nv_fp8x4_e4m3(const double4 f)
Constructor from
double4vector data type, relies on__NV_SATFINITEbehavior for out-of-range values.
-
inline explicit __NV_SILENCE_DEPRECATION_END __host__ __device__ __nv_fp8x4_e4m3(const double4_16a f)
Constructor from
double4_16avector data type, relies on__NV_SATFINITEbehavior for out-of-range values.
-
__host__ __device__ inline explicit __nv_fp8x4_e4m3(const double4_32a f)
Constructor from
double4_32avector data type, relies on__NV_SATFINITEbehavior for out-of-range values.
-
__host__ __device__ inline explicit __nv_fp8x4_e4m3(const float4 f)
Constructor from
float4vector data type, relies on__NV_SATFINITEbehavior for out-of-range values.
-
__host__ __device__ inline explicit operator float4() const
Conversion operator to
float4vector data type.
Public Members
-
__nv_fp8x4_storage_t __x
Storage variable contains the vector of four
fp8floating-point data values.
-
__nv_fp8x4_e4m3() = default