You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
wasm3/README.md

48 lines
3.0 KiB
Markdown

5 years ago
<img align="right" width="30%" src="/extra/screenshot.png">
5 years ago
5 years ago
# <img src="/extra/wasm-symbol.svg" width="32" height="32" /> Wasm3
5 years ago
[![GitHub issues](https://img.shields.io/github/issues/wasm3/wasm3.svg)](https://github.com/wasm3/wasm3/issues)
[![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/wasm3/wasm3)
[![CI status](https://github.com/wasm3/wasm3/workflows/spec%20tests/badge.svg)](https://github.com/wasm3/wasm3/actions)
5 years ago
5 years ago
This is an (experimental) high performance WebAssembly interpreter written in C.
5 years ago
5 years ago
** 13.5x faster** than other wasm interpreters (`wac`, `life`, `wasm-micro-runtime`)
** 5..6x slower** than state of the art wasm `JIT` engines (`liftoff`, `cranelift`)
** 12.5x slower** than native execution
5 years ago
<sub>* Based on [**CoreMark 1.0** benchmark](/test/benchmark/coremark). Your mileage may vary.</sub>
5 years ago
5 years ago
## Status
5 years ago
5 years ago
WebAssembly Core Specification conformance: **98%**
5 years ago
5 years ago
Minimum useful system requirements: **~64Kb** for code and **~10Kb** RAM
5 years ago
`wasm3` currently runs on a wide range of [platforms](/platforms):
5 years ago
- <img src="https://cdn.rawgit.com/simple-icons/simple-icons/develop/icons/linux.svg" width="18" height="18" /> Linux,
<img src="https://cdn.rawgit.com/simple-icons/simple-icons/develop/icons/windows.svg" width="18" height="18" /> Windows,
5 years ago
<img src="https://cdn.rawgit.com/simple-icons/simple-icons/develop/icons/apple.svg" width="18" height="18" /> OS X
- <img src="https://cdn.rawgit.com/simple-icons/simple-icons/develop/icons/android.svg" width="18" height="18" /> Android
5 years ago
- <img src="https://cdn.rawgit.com/simple-icons/simple-icons/develop/icons/raspberrypi.svg" width="18" height="18" /> Raspberry Pi, Orange Pi and other **SBC**s
5 years ago
- <img src="https://cdn.rawgit.com/feathericons/feather/master/icons/cpu.svg" width="18" height="18" /> **MCU**s:
5 years ago
Arduino MKR*, Arduino Due, Particle Photon,
5 years ago
ESP8266, ESP32, Air602 (W600), nRF52, nRF51,
Blue Pill (STM32F103C8T6), MXChip AZ3166 (EMW3166),
5 years ago
Maix (K210), HiFive1 (E310), Fomu (ICE40UP5K), etc.
5 years ago
- <img src="https://cdn.rawgit.com/feathericons/feather/master/icons/wifi.svg" width="18" height="18" /> **OpenWRT**-enabled routers
5 years ago
- <img src="https://cdn.rawgit.com/simple-icons/simple-icons/develop/icons/mozillafirefox.svg" width="18" height="18" /> <img src="https://cdn.rawgit.com/simple-icons/simple-icons/develop/icons/googlechrome.svg" width="18" height="18" /> <img src="https://cdn.rawgit.com/simple-icons/simple-icons/develop/icons/safari.svg" width="18" height="18" /> <img src="https://cdn.rawgit.com/simple-icons/simple-icons/develop/icons/microsoftedge.svg" width="18" height="18" /> Browsers... yes, using WebAssembly itself!
5 years ago
- <img src="extra/wasm-symbol.svg" width="18" height="18" /> `wasm3` can execute `wasm3` (self-hosting)
5 years ago
5 years ago
`wasm3` is built on top of [Steven Massey](https://github.com/soundandform)'s novel [interpreter topology](/source/README.md), with:
5 years ago
- Aim at Wasm 1.0 spec conformance
5 years ago
- WASI support
- Portability
5 years ago
## Building
See [DEV.md](./DEV.md)
5 years ago
### License
This project is released under The MIT License (MIT)