Simple repo that compiles and runs llama2.c on the Web
MIT License
This repo is Mac only for now.
This builds on a minimal C++/C + libc to WASM template that I recommend to look at if you want to learn how the bare WASM stack works without the additional the complexity. Additional considerations to build llama2.c:
D_WASI_EMULATED_MMAN
flag to the compiler and linking against wasi-emulated-mman
library. For this we also need to link against clang_rt.builtins-wasm32
that the wasi-sdk distributes separatetly.The command below downloads a wasi-sdk release bundle that contains the WASI headers, libraries, compiler (clang) and linker (wasm-ld)
./setup.sh
Compiles and links C++ code to WASM
./build.sh
Starts a local Web server so you can run the code. Open in your browser http://localhost:8080
./run.sh
https://github.com/michaelfranzl/clang-wasm-browser-starterpack/tree/dev/examples/11
https://medium.com/@michaelyuan_88928/running-llama2-c-in-wasmedge-15291795c470
https://stackoverflow.com/a/29694977/717508
https://github.com/taybenlor/runno
/vendor/wasi.js
is built from the runno wasi js runtime by running mpm run build
. There are two small modifications on 9b9dc1f3142c that I might submit upstream:
I included a wasi.js.original
file as a references for the differences (git diff wasi.js wasi.js.original)