-
Notifications
You must be signed in to change notification settings - Fork 506
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Merged by Bors] - fix: Reduce wasm size by stripping symbols #2774
[Merged by Bors] - fix: Reduce wasm size by stripping symbols #2774
Conversation
What's the impact on the troubleshooting experience? (stack trace, etc). If not much impact, this is big improvement! |
I think that for release builds is not that bad to have these optimizations, there's also |
Good question. I'm not sure what most people use to debug wasm but attached below is the output I saw from running Some options would be:
With symbols
Without symbols
|
I think we can eliminate backtrace as well. We can add another release profile to include symbols, backtrace and etc. |
…p-symbols-from-wasm
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good improvement. We can create separate issues to bring back symbol for debugging and testing.
bors r+ |
stripping symbols has a large impact on wasm binary size. Is there a reason it is necessary to keep them? #### Before ``` 248K target/wasm32-unknown-unknown/release/fluvio_smartmodule_aggregate.wasm* 428K target/wasm32-unknown-unknown/release/fluvio_smartmodule_array_map_array.wasm* 428K target/wasm32-unknown-unknown/release/fluvio_smartmodule_array_map_object.wasm* 244K target/wasm32-unknown-unknown/release/fluvio_smartmodule_filter_init.wasm* 236K target/wasm32-unknown-unknown/release/fluvio_smartmodule_filter_map.wasm* 240K target/wasm32-unknown-unknown/release/fluvio_smartmodule_filter_param.wasm* 236K target/wasm32-unknown-unknown/release/fluvio_smartmodule_filter.wasm* 192K target/wasm32-unknown-unknown/release/fluvio_smartmodule_map.wasm* 432K target/wasm32-unknown-unknown/release/fluvio_wasm_aggregate_average.wasm* 404K target/wasm32-unknown-unknown/release/fluvio_wasm_aggregate_json.wasm* 252K target/wasm32-unknown-unknown/release/fluvio_wasm_aggregate_sum.wasm* 432K target/wasm32-unknown-unknown/release/fluvio_wasm_array_map_reddit.wasm* 404K target/wasm32-unknown-unknown/release/fluvio_wasm_filter_json.wasm* 240K target/wasm32-unknown-unknown/release/fluvio_wasm_filter_odd.wasm* 956K target/wasm32-unknown-unknown/release/fluvio_wasm_filter_regex.wasm* 236K target/wasm32-unknown-unknown/release/fluvio_wasm_filter_with_parameters_v1.wasm* 248K target/wasm32-unknown-unknown/release/fluvio_wasm_join.wasm* 240K target/wasm32-unknown-unknown/release/fluvio_wasm_map_double.wasm* 440K target/wasm32-unknown-unknown/release/fluvio_wasm_map_json.wasm* 1020K target/wasm32-unknown-unknown/release/fluvio_wasm_map_regex.wasm* ``` #### After ``` 72K target/wasm32-unknown-unknown/release/fluvio_smartmodule_aggregate.wasm* 160K target/wasm32-unknown-unknown/release/fluvio_smartmodule_array_map_array.wasm* 160K target/wasm32-unknown-unknown/release/fluvio_smartmodule_array_map_object.wasm* 76K target/wasm32-unknown-unknown/release/fluvio_smartmodule_filter_init.wasm* 72K target/wasm32-unknown-unknown/release/fluvio_smartmodule_filter_map.wasm* 76K target/wasm32-unknown-unknown/release/fluvio_smartmodule_filter_param.wasm* 68K target/wasm32-unknown-unknown/release/fluvio_smartmodule_filter.wasm* 52K target/wasm32-unknown-unknown/release/fluvio_smartmodule_map.wasm* 168K target/wasm32-unknown-unknown/release/fluvio_wasm_aggregate_average.wasm* 140K target/wasm32-unknown-unknown/release/fluvio_wasm_aggregate_json.wasm* 76K target/wasm32-unknown-unknown/release/fluvio_wasm_aggregate_sum.wasm* 168K target/wasm32-unknown-unknown/release/fluvio_wasm_array_map_reddit.wasm* 140K target/wasm32-unknown-unknown/release/fluvio_wasm_filter_json.wasm* 72K target/wasm32-unknown-unknown/release/fluvio_wasm_filter_odd.wasm* 736K target/wasm32-unknown-unknown/release/fluvio_wasm_filter_regex.wasm* 72K target/wasm32-unknown-unknown/release/fluvio_wasm_filter_with_parameters_v1.wasm* 72K target/wasm32-unknown-unknown/release/fluvio_wasm_join.wasm* 72K target/wasm32-unknown-unknown/release/fluvio_wasm_map_double.wasm* 200K target/wasm32-unknown-unknown/release/fluvio_wasm_map_json.wasm* 796K target/wasm32-unknown-unknown/release/fluvio_wasm_map_regex.wasm* ```
Pull request successfully merged into master. Build succeeded: |
stripping symbols has a large impact on wasm binary size. Is there a reason it is necessary to keep them?
Before
After