# Features

In this chapter, you can see the complete list of features that WAMR support. And for each feature, we have an example followed demonstrating the usage of such a feature.

## IWASM features

### Key features

* Full compliant to the W3C WASM MVP
* Small runtime binary size (\~85K for interpreter and \~50K for AOT) and low memory usage
* Near to native speed by AOT and JIT
* Self-implemented AOT module loader to enable AOT work on Linux, Windows, MacOS, Android, SGX, and MCU systems
* Choices of WASM application libc support: the built-in libc subset for the embedded environment or [WASI](https://github.com/WebAssembly/WASI) for the standard libc
* [The simple C APIs to embed WAMR into host environment](https://wamr.gitbook.io/document/wamr-in-practice/tutorial/language-embedding/embed_wamr), see [how to integrate WAMR](https://wamr.gitbook.io/document/wamr-in-practice/tutorial/language-embedding/embed_wamr) and the [API list](https://github.com/TianlongLiang/wasm-micro-runtime/blob/main/core/iwasm/include/wasm_export.h)
* [The mechanism to export native APIs to WASM applications](https://wamr.gitbook.io/document/wamr-in-practice/features/export_native_api), see [how to register native APIs](https://wamr.gitbook.io/document/wamr-in-practice/features/export_native_api)
* [Multiple modules as dependencies](https://wamr.gitbook.io/document/wamr-in-practice/features/multi_module), ref to [document](https://wamr.gitbook.io/document/wamr-in-practice/features/multi_module) and [sample](https://wamr.gitbook.io/document/wamr-in-practice/features/multi_module/multi-module)
* [Multi-thread, pthread APIs and thread management](https://wamr.gitbook.io/document/wamr-in-practice/features/pthread_library), ref to [document](https://wamr.gitbook.io/document/wamr-in-practice/features/pthread_library) and [sample](https://wamr.gitbook.io/document/wamr-in-practice/features/pthread_library/multi-thread)
* [Linux SGX (Intel Software Guard Extension) support](https://wamr.gitbook.io/document/wamr-in-practice/features/linux_sgx), ref to [document](https://wamr.gitbook.io/document/wamr-in-practice/features/linux_sgx)
* [Source debugging support](https://wamr.gitbook.io/document/wamr-in-practice/tutorial/debugging-and-ide-support/source_debugging), ref to [document](https://wamr.gitbook.io/document/wamr-in-practice/tutorial/debugging-and-ide-support/source_debugging)
* [WAMR-IDE (Experimental)](https://wamr.gitbook.io/document/wamr-in-practice/tutorial/debugging-and-ide-support/wamr-ide) to develop WebAssembly applications with build, run and debug support, ref to [document](https://wamr.gitbook.io/document/wamr-in-practice/tutorial/debugging-and-ide-support/wamr-ide)
* [XIP (Execution In Place) support](https://wamr.gitbook.io/document/wamr-in-practice/features/xip), ref to [document](https://wamr.gitbook.io/document/wamr-in-practice/features/xip)
* [Berkeley/Posix Socket support](https://wamr.gitbook.io/document/wamr-in-practice/features/socket_api), ref to [document](https://wamr.gitbook.io/document/wamr-in-practice/features/socket_api) and [sample](https://wamr.gitbook.io/document/wamr-in-practice/features/socket_api/socket-api)
* Language bindings: [Go](https://wamr.gitbook.io/document/wamr-in-practice/tutorial/language-embedding/go), [Python](https://wamr.gitbook.io/document/wamr-in-practice/tutorial/language-embedding/python)

### WASM post-MVP features

There are many post-MVP features for WASM. We support some of them. You can see the details in [this section](https://wamr.gitbook.io/document/wamr-in-practice/features/demo-examples)

* [wasm-c-api](https://github.com/WebAssembly/wasm-c-api)
* [128-bit SIMD](https://github.com/WebAssembly/simd)
* [Reference Types](https://github.com/WebAssembly/reference-types)
* [Non-trapping float-to-int conversions](https://github.com/WebAssembly/nontrapping-float-to-int-conversions)
* [Sign-extension operators](https://github.com/WebAssembly/sign-extension-ops), [Bulk memory operations](https://github.com/WebAssembly/bulk-memory-operations)
* [Multi-value](https://github.com/WebAssembly/multi-value), [Tail-call](https://github.com/WebAssembly/tail-call), [Shared memory](https://github.com/WebAssembly/threads/blob/main/proposals/threads/Overview.md#shared-linear-memory)
