2022-10-12 04:09:29 +00:00
|
|
|
# WASI-NN
|
|
|
|
|
|
|
|
## How to use
|
|
|
|
|
|
|
|
Enable WASI-NN in the WAMR by spefiying it in the cmake building configuration as follows,
|
|
|
|
|
|
|
|
```
|
|
|
|
set (WAMR_BUILD_WASI_NN 1)
|
|
|
|
```
|
|
|
|
|
|
|
|
The definition of the functions provided by WASI-NN is in the header file `core/iwasm/libraries/wasi-nn/wasi_nn.h`.
|
|
|
|
|
|
|
|
By only including this file in your WASM application you will bind WASI-NN into your module.
|
|
|
|
|
|
|
|
## Tests
|
|
|
|
|
|
|
|
To run the tests we assume that the current directory is the root of the repository.
|
|
|
|
|
|
|
|
|
|
|
|
1. Build the docker image,
|
|
|
|
|
|
|
|
```
|
|
|
|
docker build -t wasi-nn -f core/iwasm/libraries/wasi-nn/test/Dockerfile .
|
|
|
|
```
|
|
|
|
|
|
|
|
2. Run the container
|
|
|
|
|
|
|
|
```
|
|
|
|
docker run wasi-nn
|
|
|
|
```
|
|
|
|
|
|
|
|
If all the tests have run properly you will the the following message in the terminal,
|
|
|
|
|
|
|
|
```
|
|
|
|
Tests: passed!
|
|
|
|
```
|
|
|
|
|
|
|
|
## What is missing
|
|
|
|
|
2023-01-25 10:32:40 +00:00
|
|
|
Supported:
|
|
|
|
|
|
|
|
* Only 1 WASM app at a time.
|
|
|
|
* Only 1 model at a time.
|
2022-10-12 04:09:29 +00:00
|
|
|
* `graph` and `graph-execution-context` are ignored.
|
2023-01-25 10:32:40 +00:00
|
|
|
* Graph encoding: `tensorflowlite`.
|
|
|
|
* Execution target: `cpu`.
|
|
|
|
* Tensor type: `fp32`.
|