Description
Summary
Compiling a test-app with different settings (dlmalloc and wee_alloc) the resulting binary sizes of wee_alloc builds are not as small as expected. Benefit is just 3KB, the relation is 25KB for dlmalloc-builds compared to 22KB for wee_alloc-builds with code using simple String-allocation.
see
With an application without any dynamic memory allocation, wee_alloc is adding 2500 bytes:
829 wasm-game-of-life-dlmalloc/pkg/wasm_game_of_life_bg.wasm
3666 wasm-game-of-life-wee_alloc/pkg/wasm_game_of_life_bg.wasm
With an application using simple String allocation, wee_alloc is adding ca 21000 bytes, being just 3KB better than dlmalloc.
25179 wasm-game-of-life-dlmalloc-dyn/pkg/wasm_game_of_life_bg.wasm
22141 wasm-game-of-life-wee_alloc-dyn/pkg/wasm_game_of_life_bg.wasm
Steps to Reproduce
git clone https://github.com/frehberg/wasm-dyn-mem.git
cd wasm-dyn-mem/rust-bindgen
make build print-sizes
Expected Results
Linking against wee_alloc instead of dlmalloc I expected binaries being much more smaller and gaining larger benefit compared to dlmallic. Just, in some cases the binary is larger and the relation is just 22KB vs 25KB
Maybe wee_alloc is using some code-patterns that can not be optimized as good as expected