aclrtAtomicOperationCapability

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
typedef enum aclrtAtomicOperationCapability {
    ACL_RT_ATOMIC_CAPABILITY_SIGNED = 1U << 0,       // Signed type
    ACL_RT_ATOMIC_CAPABILITY_UNSIGNED = 1U << 1,     // Unsigned type
    ACL_RT_ATOMIC_CAPABILITY_REDUCATION = 1U << 2,   // Reduction operation
    ACL_RT_ATOMIC_CAPABILITY_SCALAR8 = 1U << 3,      // 8-bit (1-byte) scalar data
    ACL_RT_ATOMIC_CAPABILITY_SCALAR16 = 1U << 4,     // 16-bit (2-byte) scalar data
    ACL_RT_ATOMIC_CAPABILITY_SCALAR32 = 1U << 5,     // 32-bit (4-byte) scalar data
    ACL_RT_ATOMIC_CAPABILITY_SCALAR64 = 1U << 6,     // 64-bit (8-byte) scalar data
    ACL_RT_ATOMIC_CAPABILITY_SCALAR128 = 1U << 7,    // 128-bit (16-byte) scalar data
    ACL_RT_ATOMIC_CAPABILITY_VECTOR32X4 = 1U << 8,   // Atomic operations on four consecutive 32-bit vector data at a time
} aclrtAtomicOperationCapability;