OrderType#
Fully qualified name: cupva::OrderType
Defined in src/host/shared/include/install/cupva_host_common.hpp
-
enum cupva::OrderType#
Specifies scheduling and execution order for the commands submitted to the Stream.
Commands submitted to the Stream can be scheduled and executed by the hardware in two distinct ways. Commands submitted in IN_ORDER mode (default) will begin and complete the execution in the submission order, i.e., the order they appear in the Stream::submit() call. Commands submitted in OUT_OF_ORDER mode begin execution in submission order, but may complete out of order. Completion ordering in OUT_OF_ORDER mode can be partially or fully enforced via CmdBarrier command which blocks Stream processing until all preceding (in submission order) commands are completed. This is different from CmdWaitOnFences, which blocks subsequent command processing until specific Fence objects are signalled.
OUT_OF_ORDER mode is useful in Stream instances configured to use VPU_ANY affinity, since multiple VPU engines can be used to process multiple independent commands in parallel.
To maximize the execution performance, it is recommended to terminate the submitted command list with a CmdBarrier instance in the following scenarios:
Submission has an execution time out specified,
Submission includes a CmdProgram instance that uses L2SRAM,
Stream has CUDA interop enabled.
Maturity: GA
Values: