Lightweight WebAssembly runtime for embedded, IoT, edge, and cloud
Top 9.4% on sourcepulse
WebAssembly Micro Runtime (WAMR) is a versatile and highly configurable WebAssembly runtime designed for a wide range of applications, from embedded systems and IoT to cloud-native environments and trusted execution environments. It offers a small footprint, high performance, and multiple execution modes, making it suitable for developers needing to run Wasm modules efficiently across diverse hardware and software platforms.
How It Works
WAMR's core is its VMcore, which supports interpreter, Ahead-of-Time (AOT) compilation, and Just-in-Time (JIT) compilation (including a two-tier Fast JIT and LLVM JIT with dynamic tier-up). This flexibility allows for optimized execution based on the target environment's needs. It also includes iwasm
, an executable binary supporting WASI, and wamrc
, an AOT compiler. Key advantages include its self-implemented AOT loader for broad platform compatibility and choices between a built-in C library subset or WASI for application libc support.
Quick Start & Requirements
Highlighted Details
Maintenance & Community
The project is part of the Bytecode Alliance. Notable contributors include members from Sony, Amazon, Intel, Xiaomi, and Ant Group. Community interaction is available via chat.
Licensing & Compatibility
Licensed under Apache 2.0 with LLVM exception, permitting commercial use and integration into closed-source products.
Limitations & Caveats
The WAMR-IDE is noted as experimental. While extensive, some advanced features like GC and Exception Handling are listed under "post-MVP features," implying they might be less mature or still under development compared to the core MVP features.
1 day ago
1 week