diff options
author | Narumol Prangnawarat <narumol.prangnawarat@arm.com> | 2019-12-12 15:10:38 +0000 |
---|---|---|
committer | Narumol Prangnawarat <narumol.prangnawarat@arm.com> | 2019-12-19 16:42:29 +0000 |
commit | f2fa51031b0cf64a93da1dec9d3abd8c4ee3a13c (patch) | |
tree | 06f3728ca077bf57ee52cd948ade88f5049f62e0 /src/dynamic/README.md | |
parent | e56fb45b81b11e205f01094a54f5c1803a871005 (diff) | |
download | armnn-f2fa51031b0cf64a93da1dec9d3abd8c4ee3a13c.tar.gz |
IVGCVSW-4214 Add README for standalone dynamic backend developer guide
* Add README of an example how to build standalone dynamic backends
* Change the links to public API for backends
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com>
Change-Id: I32ee15ba1b9ea3a6317ae184de8d28bb31eb5d9d
Diffstat (limited to 'src/dynamic/README.md')
-rw-r--r-- | src/dynamic/README.md | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/src/dynamic/README.md b/src/dynamic/README.md new file mode 100644 index 0000000000..ccdb668e73 --- /dev/null +++ b/src/dynamic/README.md @@ -0,0 +1,33 @@ +# Standalone dynamic backend developer guide + +Arm NN allows adding new dynamic backends. Dynamic Backends can be compiled as standalone against Arm NN +and can be loaded by Arm NN dynamically at runtime. + +To be properly loaded and used, the backend instances must comply to the standard interface for dynamic backends +and to the versioning rules that enforce ABI compatibility. +The details of how to add dynamic backends can be found in [src/backends/README.md](../backends/README.md). + + +## Standalone dynamic backend example + +The source code includes an example that is used to generate a dynamic implementation of the reference backend +is provided at + +[RefDynamicBackend.hpp](./reference/RefDynamicBackend.hpp) +[RefDynamicBackend.cpp](./reference/RefDynamicBackend.cpp) + +The makefile used for building the standalone reference dynamic backend is also provided: +[CMakeLists.txt](./reference/CMakeLists.txt) + + +## Dynamic backend loading paths + +During the creation of the Runtime, Arm NN will scan a given set of paths searching for suitable dynamic backend objects to load. +A list of (absolute) paths can be specified at compile-time by setting a define named ```DYNAMIC_BACKEND_PATHS``` + in the form of a colon-separated list of strings. + +```shell +-DDYNAMIC_BACKEND_PATHS="PATH_1:PATH_2...:PATH_N" +``` + +The paths will be processed in the same order as they are indicated in the macro. |