wasm-micro-runtime/core/iwasm/common
TianlongLiang 8a55a1e7a1
Shared heap enhancements for Interpreter and AOT (#4400)
Propose two enhancements:

- Shared heap created from preallocated memory buffer: The user can create a shared heap from a pre-allocated buffer and see that memory region as one large chunk; there's no need to dynamically manage it(malloc/free). The user needs to make sure the native address and size of that memory region are valid.
- Introduce shared heap chain: The user can create a shared heap chain, from the wasm app point of view, it's still a continuous memory region in wasm app's point of view while in the native it can consist of multiple shared heaps (each of which is a continuous memory region). For example, one 500MB shared heap 1 and one 500 MB shared heap 2 form a chain, in Wasm's point of view, it's one 1GB shared heap.

After these enhancements, the data sharing between wasm apps, and between hosts can be more efficient and flexible. Admittedly shared heap management can be more complex for users, but it's similar to the zero-overhead principle. No overhead will be imposed for the users who don't use the shared heap enhancement or don't use the shared heap at all.
2025-07-04 10:44:51 +08:00
..
arch fix: correct typos and improve comments across multiple files by codespell (#4116) 2025-03-07 08:21:54 +08:00
gc Collective fix for typos and minor bugs (#4369) 2025-06-17 09:26:00 +08:00
iwasm_common.cmake Add support for universal binaries on OSX (#2060) 2023-03-30 09:53:07 +08:00
SConscript Refactor SConscript and add file checks in iwasm.c (#3945) 2024-12-06 14:54:37 +08:00
wasm_application.c fix: correct typos and improve comments across multiple files by codespell (#4116) 2025-03-07 08:21:54 +08:00
wasm_blocking_op.c Implement async termination of blocking thread (#2516) 2023-09-20 18:11:52 +08:00
wasm_c_api_internal.h Fix some spelling issues (#3385) 2024-05-06 07:56:48 +08:00
wasm_c_api.c fix: correct typos and improve comments across multiple files by codespell (#4116) 2025-03-07 08:21:54 +08:00
wasm_exec_env.c feat: Add instruction metering for interpreter (#4122) 2025-05-26 16:16:42 +08:00
wasm_exec_env.h feat: Add instruction metering for interpreter (#4122) 2025-05-26 16:16:42 +08:00
wasm_loader_common.c Refactor fast-interpreter SIMD compilation flags (#4261) 2025-05-14 10:38:30 +08:00
wasm_loader_common.h Support table64 extension in classic-interp and AOT running modes (#3811) 2024-10-11 21:14:56 +08:00
wasm_memory.c Shared heap enhancements for Interpreter and AOT (#4400) 2025-07-04 10:44:51 +08:00
wasm_memory.h Shared heap enhancements for Interpreter and AOT (#4400) 2025-07-04 10:44:51 +08:00
wasm_native.c Implement a first version of shared heap feature (#3789) 2024-09-14 10:51:42 +08:00
wasm_native.h Appease GCC strict prototypes warning (#3775) 2024-09-10 09:42:23 +08:00
wasm_runtime_common.c Shared heap enhancements for Interpreter and AOT (#4400) 2025-07-04 10:44:51 +08:00
wasm_runtime_common.h Shared heap enhancements for Interpreter and AOT (#4400) 2025-07-04 10:44:51 +08:00
wasm_shared_memory.c Implement shared heap for AOT (#3815) 2024-09-29 12:50:59 +08:00
wasm_shared_memory.h Appease GCC strict prototypes warning (#3775) 2024-09-10 09:42:23 +08:00
wasm_suspend_flags.h Do not inherit WASM_SUSPEND_FLAG_BLOCKING from the parent thread (#3051) 2024-01-19 09:55:01 +08:00