mirror of
https://github.com/bytecodealliance/wasm-micro-runtime.git
synced 2025-02-06 15:05:19 +00:00
![]() - Sync source code to b9d4073a6913891ce9cbd8965c8d506075d2a45a, which is referred by tensorflow - Upgrade emscripten to 3.1.44 - CMake outputs are .wasm files and .aot files |
||
---|---|---|
.. | ||
.gitignore | ||
benchmark.patch | ||
CMakeLists.txt | ||
README.md | ||
xnnpack.patch |
"XNNPACK" sample introduction
This sample demonstrates how to build XNNPACK benchmarks into WebAssembly with emsdk toolchain and run them with iwasm.
Installation toolchains
please refer to installation instructions.
Build XNNPACK
please build wamrc:
cd <wamr-dir>/wamr-compiler
./build_llvm.sh
mkdir build && cd build
cmake ..
make
And then build xnnpack standalone wasm files
$ cd <wamr-dir>/samples/workload/XNNPACK
$ cmake -S . -B build
$ cmake --build build
Generated .wasm(and .aot) files are under samples/workload/XNNPACK/build.
Run benchmarks
Firstly please build iwasm with simd, libc-emcc and lib-pthread supporting:
$ cd <wamr-dir>/product-mini/platforms/linux/
$ mkdir build && cd build
$ cmake .. -DWAMR_BUILD_LIBC_EMCC=1 -DWAMR_BUILD_LIB_PTHREAD=1
$ make
Then run:
$ cd <wamr-dir>/samples/workload/XNNPACK/build
$ iwasm averag_pooling_bench.aot # (or other aot files)