#[non_exhaustive]#[repr(u32)]pub enum CUstreamWaitValue_flags_enum {
CU_STREAM_WAIT_VALUE_GEQ = 0,
CU_STREAM_WAIT_VALUE_EQ = 1,
CU_STREAM_WAIT_VALUE_AND = 2,
CU_STREAM_WAIT_VALUE_NOR = 3,
CU_STREAM_WAIT_VALUE_FLUSH = 1_073_741_824,
}Expand description
Flags for ::cuStreamWaitValue32 and ::cuStreamWaitValue64
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
CU_STREAM_WAIT_VALUE_GEQ = 0
< Wait until (int32_t)(*addr - value) >= 0 (or int64_t for 64 bit values). Note this is a cyclic comparison which ignores wraparound. (Default behavior.)
CU_STREAM_WAIT_VALUE_EQ = 1
< Wait until *addr == value.
CU_STREAM_WAIT_VALUE_AND = 2
< Wait until (*addr & value) != 0.
CU_STREAM_WAIT_VALUE_NOR = 3
< Wait until ~(*addr | value) != 0. Support for this operation can be queried with ::cuDeviceGetAttribute() and ::CU_DEVICE_ATTRIBUTE_CAN_USE_STREAM_WAIT_VALUE_NOR.
CU_STREAM_WAIT_VALUE_FLUSH = 1_073_741_824
< Follow the wait operation with a flush of outstanding remote writes. This means that, if a remote write operation is guaranteed to have reached the device before the wait can be satisfied, that write is guaranteed to be visible to downstream device work. The device is permitted to reorder remote writes internally. For example, this flag would be required if two remote writes arrive in a defined order, the wait is satisfied by the second write, and downstream work needs to observe the first write. Support for this operation is restricted to selected platforms and can be queried with ::CU_DEVICE_ATTRIBUTE_CAN_FLUSH_REMOTE_WRITES.
Trait Implementations§
source§impl Clone for CUstreamWaitValue_flags_enum
impl Clone for CUstreamWaitValue_flags_enum
source§fn clone(&self) -> CUstreamWaitValue_flags_enum
fn clone(&self) -> CUstreamWaitValue_flags_enum
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moresource§impl Debug for CUstreamWaitValue_flags_enum
impl Debug for CUstreamWaitValue_flags_enum
source§impl Hash for CUstreamWaitValue_flags_enum
impl Hash for CUstreamWaitValue_flags_enum
source§impl PartialEq for CUstreamWaitValue_flags_enum
impl PartialEq for CUstreamWaitValue_flags_enum
source§fn eq(&self, other: &CUstreamWaitValue_flags_enum) -> bool
fn eq(&self, other: &CUstreamWaitValue_flags_enum) -> bool
self and other values to be equal, and is used
by ==.