Skip to content

nvcodec: Use non-default CUDA stream to improve performance

nvenc: Use non default CUDA stream and async operation

Use CUDA async operation if possible with non default CUDA stream
nvdec: Don't use default CUDA stream

Async CUDA operation with default stream (NULL CUstream) is not much
beneficial than blocking operation since all CUDA operations which belong
to the CUDA context will be synchronized with the default stream's operation.
Note that CUDA stream will share all resources of the corresponding CUDA context
but which can help parallel operation similar to the relation between thread and process
nvdec: Push/Pop CUDA context around library API call

Merge request reports