wasm-micro-runtime
wasm-micro-runtime copied to clipboard
Enhance wasm with checkpoint and restore support (#2333)
- Add wasm_runtime_checkpoint/wasm_runtime_restore API
- Support AOT and Classic Interpreter mode checkpoint and debug through OS signal, tested on windows/mac/linux aarch64/x64
- Static instrument the AOT to have the checkpoint and restore switches
- Add sub extra library folder for implementing the ckpt-restore
- Include extra dependency of yalantinglib
Create a one-commit PR for adding the functionality for now, which requires more code reviews and testing in the future, like when ther I could better organize the third-party yalantings library and test functionality for Classic Interpreter mode and AOT mode.
Hi @victoryang00 ! What is the current status of this pr? I am interested in the implementation and interfaces of this feature. (There is no intention to rush you.)
Hi @victoryang00 ! What is the current status of this pr? I am interested in the implementation and interfaces of this feature. (There is no intention to rush you.)
You can now use https://github.com/Multi-V-VM/MVVM first, this PR requires a lot more work to be accepted.
@victoryang00 Thank you!
@wenyongh This PR is ready for review, but the history commit c670c3bff9fdcbb3b90f38e67e85c3f1017d33b8 has some syntax error, could you help me revert the file in that history commit and amend the commit?
Also, I'm not sure why compilation on windows-latest / test (fast-interp, $MULTI_MODULES_TEST_OPTIONS) fails.
@victoryang00 I only read several files of this PR and added some comments, and will look into more files in the future. BTW, I merged main into dev/checkpoint_and_restore (#3511), could you rebase the code again? Many thanks.
Ready for merge. Still has problems with interpreter mode SIGINT file snapshots and AOT compilation.