Enum StreamFlags
- Namespace
- DotCompute.Abstractions.Execution
- Assembly
- DotCompute.Abstractions.dll
Flags that define stream behavior and properties for kernel execution. These flags can be combined using bitwise OR operations.
[Flags]
[SuppressMessage("Naming", "CA1711:Identifiers should not have incorrect suffix", Justification = "StreamFlags is an appropriate name for a flags enumeration")]
public enum StreamFlags
Fields
AsyncMemory = 64Stream supports asynchronous memory operations. Enables overlapping of memory transfers and kernel execution.
AutoSync = 32Stream should automatically synchronize on disposal. Ensures all operations complete before stream is destroyed.
GpuDirect = 512Stream supports GPU direct operations (peer-to-peer). Enables direct memory access between GPUs without host involvement.
HighPriority = 2Stream has high priority for scheduling. Operations in this stream will be scheduled before normal priority streams.
HighThroughput = 256Stream is optimized for high throughput operations. May increase latency to maximize throughput.
LowLatency = 128Stream is optimized for low latency operations. Reduces overhead at the cost of throughput.
LowPriority = 4Stream has low priority for scheduling. Operations in this stream will be scheduled after normal priority streams.
NonBlocking = 1Stream does not synchronize with the default stream. Enables concurrent execution with default stream operations.
None = 0Default stream behavior with no special flags.
Persistent = 16Stream operations are persistent and should not be deallocated eagerly.
Synchronized = 8Stream should wait for all preceding operations to complete. Ensures strict ordering with previous operations.