Function cuStreamCreateWithPriority

Source
pub unsafe extern "C" fn cuStreamCreateWithPriority(
    phStream: *mut CUstream,
    flags: c_uint,
    priority: c_int,
) -> CUresult
Expand description

\brief Create a stream with the given priority

Creates a stream with the specified priority and returns a handle in \p phStream. This affects the scheduling priority of work in the stream. Priorities provide a hint to preferentially run work with higher priority when possible, but do not preempt already-running work or provide any other functional guarantee on execution order.

\p priority follows a convention where lower numbers represent higher priorities. ‘0’ represents default priority. The range of meaningful numerical priorities can be queried using ::cuCtxGetStreamPriorityRange. If the specified priority is outside the numerical range returned by ::cuCtxGetStreamPriorityRange, it will automatically be clamped to the lowest or the highest number in the range.

\param phStream - Returned newly created stream \param flags - Flags for stream creation. See ::cuStreamCreate for a list of valid flags \param priority - Stream priority. Lower numbers represent higher priorities. See ::cuCtxGetStreamPriorityRange for more information about meaningful stream priorities that can be passed.

\return ::CUDA_SUCCESS, ::CUDA_ERROR_DEINITIALIZED, ::CUDA_ERROR_NOT_INITIALIZED, ::CUDA_ERROR_INVALID_CONTEXT, ::CUDA_ERROR_INVALID_VALUE, ::CUDA_ERROR_OUT_OF_MEMORY \notefnerr

\note Stream priorities are supported only on GPUs with compute capability 3.5 or higher.

\note In the current implementation, only compute kernels launched in priority streams are affected by the stream’s priority. Stream priorities have no effect on host-to-device and device-to-host memory operations.

\sa ::cuStreamDestroy, ::cuStreamCreate, ::cuGreenCtxStreamCreate, ::cuStreamGetPriority, ::cuCtxGetStreamPriorityRange, ::cuStreamGetFlags, ::cuStreamWaitEvent, ::cuStreamQuery, ::cuStreamSynchronize, ::cuStreamAddCallback, ::cudaStreamCreateWithPriority