Submit#

Fully qualified name: cupva::cuda::Submit

Defined in src/host/cpp_api/include/cupva_host_cuda.hpp

void cupva::cuda::Submit(
cudaStream_t const cudaStream,
Cmd const *const commands,
CmdStatus *const status = nullptr,
int32_t const count = 1,
OrderType const order = IN_ORDER,
int32_t const executionTimeout = -1,
int32_t const submitTimeout = -1,
)#

Submit a batch of Commands to a CUDA Stream.

This function is used to submit a batch of Commands to a CUDA Stream. It requires a PVA driver version >= 2007 and it is not supported in Native mode.

Usage considerations

  • Allowed context for the API call

    • Thread-safe: Yes

  • API group

    • Init: No

    • Runtime: Yes

    • De-Init: No

Parameters:
  • cudaStream[in] The CUDA stream handle.

  • commands[in] The commands to submit.

  • status[in] The status of the commands.

  • count[in] The number of commands.

  • order[in] The order of the commands.

  • executionTimeout[in] The timeout for the commands.

  • submitTimeout[in] The timeout for the submission.

Throws:
  • cupva::Exception(InvalidArgument) – The CUDA stream is invalid.

  • cupva::Exception(InvalidArgument) – The commands are invalid.

  • cupva::Exception(InvalidArgument) – The program count is invalid.

  • cupva::Exception(UnsupportedFeature) – The cuExtend is not enabled in the driver.