diff options
author | Jonny Svärd <jonny.svaerd@arm.com> | 2022-02-25 16:28:21 +0100 |
---|---|---|
committer | Jonny Svärd <jonny.svaerd@arm.com> | 2022-03-31 14:39:19 +0200 |
commit | 1a3bb928b3820b089198afb99bbf410b1f210700 (patch) | |
tree | d4de9fe62c20bf92116a9dfccdb26b4780d7224a /README.md | |
parent | 24455eedb9e8939f8a28ca0101a6f2d171e1b2f9 (diff) | |
download | ethos-u-core-driver-1a3bb928b3820b089198afb99bbf410b1f210700.tar.gz |
Add driver async API
Add an asynchronous API to the driver. The current synchronous API
is now using the new async API internally. The main new functions
are ethosu_invoke_async() and ethosu_wait(). Every successfull call
to ethosu_invoke_async() must be followed by a call to ethosu_wait()
to get the status of the inference. The wait function can be called
in a blocking or non-blocking mode by specifying the `block`
argument to true/false. The regular synchronous invoke function is
implemented as a invoke_async followed by a wait(block=true) call.
Short sommary of changes:
- Add an internal ethosu_job struct to keep track of
inference data and job state.
- Use async API in blocking mode for normal flow
- Change default semaphore implementation to binary type
- Move error prints out of interrupt context
- Move ethosu_inference_begin() callback to right before HW invoke
- Always call ethosu_inference_end() callback, even in case of errors
- On NPU error, do not keep NPU powered after being reset
Change-Id: If4c3c46e3c6732a669e17251bd848dea5765a490
Diffstat (limited to 'README.md')
0 files changed, 0 insertions, 0 deletions