This repository has been archived on 2023-11-05. You can view files and clone it, but cannot push or open issues or pull requests.
wasm-micro-runtime/samples/workload/tensorflow
Wenyong Huang 27e7e160af
Upgrade toolkits (#1878)
Upgrade the version of related toolkits:
- upgrade llvm to 15.0
- upgrade wasi-sdk to 19.0
- upgrade emsdk to 3.1.28
- upgrade wabt to 1.0.31
- upgrade binaryen to 111

And upgrade the CI scripts, sample workload build scripts, Dockerfiles, and documents.
2023-02-02 09:42:25 +08:00
..
build.sh Upgrade toolkits (#1878) 2023-02-02 09:42:25 +08:00
README.md Implement SIMD latest opcodes and update LLVM to 13.0 (#758) 2021-09-17 19:12:57 +08:00
tf_lite.patch Enable multi-thread for tensorflow sample, update wasm-c-api document (#651) 2021-06-14 08:58:32 +08:00

"tensorflow" sample introduction

This sample demonstrates how to build tensorflow into WebAssembly with emsdk toolchain and run it with iwasm. Please first install emsdk:

git clone https://github.com/emscripten-core/emsdk.git
cd emsdk
./emsdk install 2.0.26
./emsdk activate 2.0.26

And set up ensdk environment:

source emsdk_env.sh

Then run

./build.sh
# for linux platform, or
./build.sh --sgx
# for linux-sgx platform or
./build.sh --threads
# for multi-thread execution (on linux platform)

to build tensorflow and run it with iwasm, which basically contains the following steps:

  • hack emcc to delete some objects in libc.a
  • build tf-lite with emcc compiler
  • build iwasm with pthread enable and include libiary under libc-emcc
  • run benchmark model with iwasm: --max-secs 300: means the max training time cost is 5 minutes, you can adjust it by yourself