#[repr(i32)]pub enum PrimitiveType {
Show 19 variants
Invalid = 0,
Pred = 1,
S8 = 2,
S16 = 3,
S32 = 4,
S64 = 5,
U8 = 6,
U16 = 7,
U32 = 8,
U64 = 9,
F16 = 10,
F32 = 11,
Bf16 = 16,
F64 = 12,
C64 = 15,
C128 = 18,
Tuple = 13,
OpaqueType = 14,
Token = 17,
}
Expand description
Primitive types are the individual values that can be held in rectangular multidimensional arrays. A description of the rectangular multidimensional array dimensions / primitive type is given by Shape, below.
Variants§
Invalid = 0
Invalid primitive type to serve as default.
Pred = 1
Predicates are two-state booleans.
S8 = 2
Signed integral values of fixed width.
S16 = 3
S32 = 4
S64 = 5
U8 = 6
Unsigned integral values of fixed width.
U16 = 7
U32 = 8
U64 = 9
F16 = 10
Floating-point values of fixed width.
Note: if f16s are not natively supported on the device, they will be converted to f16 from f32 at arbirary points in the computation.
F32 = 11
Bf16 = 16
Truncated 16 bit floating-point format. This is similar to IEEE’s 16 bit floating-point format, but uses 1 bit for the sign, 8 bits for the exponent and 7 bits for the mantissa.
F64 = 12
C64 = 15
Complex values of fixed width.
Paired F32 (real, imag), as in std::complex
C128 = 18
Paired F64 (real, imag), as in std::complex
Tuple = 13
A tuple is a polymorphic sequence; e.g. a shape that holds different sub-shapes. They are used for things like returning multiple values from a computation; e.g. a computation that returns weights and biases may have a signature that results in a tuple like (f32[784x2000], f32[2000])
If a shape proto has the tuple element type, it may not have any entries in the dimensions field.
OpaqueType = 14
An opaque type used for passing context-specific data to a custom operation. Shapes of this primitive type will have empty dimensions and tuple_shapes fields.
(OPAQUE would be a better name for this identifier, but that conflicts with a macro defined in windows.h.)
Token = 17
A token type threaded between side-effecting operations. Shapes of this primitive type will have empty dimensions and tuple_shapes fields.
Implementations§
Trait Implementations§
Source§impl Clone for PrimitiveType
impl Clone for PrimitiveType
Source§fn clone(&self) -> PrimitiveType
fn clone(&self) -> PrimitiveType
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more