![]() |
Edge AI Add-on API 2.2.0
|
Specifies the blocking mechanism for synchronous Axon command buffer execution.
nrf_axon_run_cmd_buf_sync() provides a synchronous interface to executing an Axon command buffer. The optimal blocking scheme is dependent on the work load being presented.
Smaller work loads like intrinsics are faster and more energy efficient when a hardware status polling loop is used, because the overhead of interrupt handling is high relative to the Axon work load.
Larger work loads like NN model inference will be more energy efficient using interrupts because the CPU can sleep during Axon execution. The interrupt processing overhead is small compared to the Axon execution time.
A potential future option is to defer blocking and return immediately and allow the caller to proceed with other work, then perform the wait with a call to a TBD function. Callers must ensure that no variables passed to nrf_axon_run_cmd_buf_sync fall out of scope, and that there are no interdependencies between the work Axon is doing and the work the CPU is doing.