forked from bytecodealliance/wasmtime
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Decrease default guard size from 2G to 32M
This commit follows in the footsteps of SpiderMonkey to reduce the size of the default guard region from 2GiB to 32MiB. SpiderMonkey performance an analysis of some wasm modules and found the largest static offset was 20MiB so 32 is the rounded up version of that. This will reduce the size of the virtual memory reservation per linear-memory by default. Previously it was 8G due to guards being both before and after linear memory being 2G in size. Now it'll be 4G+64M with before/after guards taken into account. This should in theory make it easier to pack more instances in the pooling allocator for example and overall reduce the virtual memory footprint. This is not expected to have any major impact on the performance of wasm modules as all bounds checks should still practically be elided. We've been fuzzing differently sized guard regions for quite a long time as well so there should be a low risk of this having any issues specifically connected to a smaller guard region.
- Loading branch information
1 parent
0e6c711
commit 4b07e91
Showing
2 changed files
with
19 additions
and
16 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters