jaybarbhaiya added the bug label to Issue #10287.
jaybarbhaiya opened issue #10287:
Thanks for filing a bug report! Please fill out the TODOs below.
Note: if you want to report a security issue, please read our security policy!
Test Case
Steps to Reproduce
- Clone the repo
git clone https://github.com/jaybarbhaiya/wasmtime-module-drop-test.git
- Run bench command
cargo benchExpected Results
The time taken to drop a
wasmtime::Moduleshould be comparable across different operating systems.Actual Results
The drop of a
wasmtime::Modulein MacOS is significantly higher than that of Linux and Windows.Versions and Environment
Wasmtime version or commit: 30.0.1
Operating system: MacOS 15.3.1
Architecture: arm64
Extra Info
1000
wasmtime::Moduleare created with thewasmbinary attached above and then dropped. GitHub actions are set up in the repo, which runs thecargo benchcommand inubuntu-latest,windows-latest, andmacos-latestrunners. The screenshot below shows the results:ubuntu-latest
windows-latest
macos-latest
The difference that was observed, in MacOS, the
wasmtime::CodeMemorydrop takes a significant amount of time which is not the case in Linux. It would be valuable to get some insights.Thank you.
alexcrichton commented on issue #10287:
Thanks for the report! This is likely the cause of
Config::native_unwind_infobeing default-on. OSes have widely varying implementations of how information is unregistered, and IIRC I've also seen macOS be significantly slower than other platforms.If that option is disabled, though, does it improve the performance you're seeing?
jaybarbhaiya closed issue #10287:
Thanks for filing a bug report! Please fill out the TODOs below.
Note: if you want to report a security issue, please read our security policy!
Test Case
Steps to Reproduce
- Clone the repo
git clone https://github.com/jaybarbhaiya/wasmtime-module-drop-test.git
- Run bench command
cargo benchExpected Results
The time taken to drop a
wasmtime::Moduleshould be comparable across different operating systems.Actual Results
The drop of a
wasmtime::Modulein MacOS is significantly higher than that of Linux and Windows.Versions and Environment
Wasmtime version or commit: 30.0.1
Operating system: MacOS 15.3.1
Architecture: arm64
Extra Info
1000
wasmtime::Moduleare created with thewasmbinary attached above and then dropped. GitHub actions are set up in the repo, which runs thecargo benchcommand inubuntu-latest,windows-latest, andmacos-latestrunners. The screenshot below shows the results:ubuntu-latest
windows-latest
macos-latest
The difference that was observed, in MacOS, the
wasmtime::CodeMemorydrop takes a significant amount of time which is not the case in Linux. It would be valuable to get some insights.Thank you.
jaybarbhaiya commented on issue #10287:
Hi @alexcrichton
Thank you for the quick response!
DisablingConfig::native_unwind_infoimproved performance. Please see below the updated benchmark from the macOS GitHub runner.<img width="578" alt="Image" src="https://github.com/user-attachments/assets/4b501ade-bb9e-4d70-8bf2-63b6b14e6ca9" />
Thank you again for the clarification :blush:
Last updated: Dec 13 2025 at 21:03 UTC