enum dnnl::memory::data_type

Overview

Data type specification. More…

#include <dnnl.hpp>

enum data_type
{
    undef   = dnnl_data_type_undef,
    f4_e2m1 = dnnl_f4_e2m1,
    e8m0    = dnnl_e8m0,
    f8_e5m2 = dnnl_f8_e5m2,
    f8_e4m3 = dnnl_f8_e4m3,
    f16     = dnnl_f16,
    bf16    = dnnl_bf16,
    f32     = dnnl_f32,
    f64     = dnnl_f64,
    s32     = dnnl_s32,
    s8      = dnnl_s8,
    u8      = dnnl_u8,
    s4      = dnnl_s4,
    u4      = dnnl_u4,
};

Detailed Documentation

Data type specification.

Enum Values

undef

Undefined data type (used for empty memory descriptors).

f4_e2m1

MX-compliant 4-bit float data type with 2-bit exponent and 1 bit mantissa.

e8m0

MX-compliant 8-bit compliant scale data type with 8-bit exponent.

f8_e5m2

OFP8 standard 8-bit floating-point with a 5-bit exponent and a 2-bit mantissa.

f8_e4m3

OFP8 standard 8-bit floating-point with a 4-bit exponent and a 3-bit mantissa.

f16

16-bit/half-precision floating point.

bf16

non-standard 16-bit floating point with 7-bit mantissa.

f32

32-bit/single-precision floating point.

s32

32-bit signed integer.

s8

8-bit signed integer.

u8

8-bit unsigned integer.

s4

4-bit signed integer.

u4

4-bit unsigned integer.