Skip to content

perf: improve mangle plugin #10795

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
merged 1 commit into from
Jun 26, 2025
Merged

perf: improve mangle plugin #10795

merged 1 commit into from
Jun 26, 2025

Conversation

LingyuCoder
Copy link
Contributor

@LingyuCoder LingyuCoder commented Jun 25, 2025

Summary

  • parallel calulating exports info mangle info in MangleExportsPlugin
  • parallel generating filename of string template in SourceMapDevToolPlugin::map_assets

Before:
image
image

After:
image
image

Related links

Checklist

  • Tests updated (or not required).
  • Documentation updated (or not required).

Copy link
Contributor Author

LingyuCoder commented Jun 25, 2025

@github-actions github-actions bot added team The issue/pr is created by the member of Rspack. release: performance release: performance related release(mr only) labels Jun 25, 2025
Copy link
Contributor

github-actions bot commented Jun 25, 2025

📝 Benchmark detail: Open

Name Base (2025-06-25 bdfde82) Current Change
10000_big_production-mode_disable-minimize + exec 34.1 s ± 581 ms 35.2 s ± 311 ms +3.37 %
10000_development-mode + exec 1.88 s ± 31 ms 1.87 s ± 18 ms -0.53 %
10000_development-mode_hmr + exec 706 ms ± 21 ms 700 ms ± 7.7 ms -0.81 %
10000_production-mode + exec 2.23 s ± 74 ms 2.08 s ± 126 ms -6.66 %
10000_production-mode_persistent-cold + exec 2.38 s ± 77 ms 2.21 s ± 27 ms -7.26 %
10000_production-mode_persistent-hot + exec 1.71 s ± 41 ms 1.57 s ± 10 ms -8.27 %
arco-pro_development-mode + exec 1.82 s ± 39 ms 1.84 s ± 70 ms +0.88 %
arco-pro_development-mode_hmr + exec 371 ms ± 3.3 ms 371 ms ± 1.5 ms +0.19 %
arco-pro_production-mode + exec 3.64 s ± 432 ms 3.32 s ± 101 ms -8.57 %
arco-pro_production-mode_generate-package-json-webpack-plugin + exec 3.77 s ± 414 ms 3.45 s ± 114 ms -8.43 %
arco-pro_production-mode_persistent-cold + exec 3.73 s ± 500 ms 3.45 s ± 111 ms -7.57 %
arco-pro_production-mode_persistent-hot + exec 2.16 s ± 38 ms 2.12 s ± 90 ms -1.70 %
arco-pro_production-mode_traverse-chunk-modules + exec 3.76 s ± 435 ms 3.37 s ± 60 ms -10.50 %
large-dyn-imports_development-mode + exec 2.11 s ± 51 ms 2.09 s ± 36 ms -0.72 %
large-dyn-imports_production-mode + exec 2.16 s ± 25 ms 2.11 s ± 49 ms -1.99 %
threejs_development-mode_10x + exec 1.49 s ± 96 ms 1.48 s ± 67 ms -0.69 %
threejs_development-mode_10x_hmr + exec 833 ms ± 21 ms 830 ms ± 11 ms -0.37 %
threejs_production-mode_10x + exec 4.85 s ± 63 ms 4.78 s ± 113 ms -1.42 %
threejs_production-mode_10x_persistent-cold + exec 4.96 s ± 65 ms 4.89 s ± 72 ms -1.56 %
threejs_production-mode_10x_persistent-hot + exec 4.4 s ± 242 ms 4.32 s ± 56 ms -1.84 %
10000_big_production-mode_disable-minimize + rss memory 9236 MiB ± 31 MiB 9398 MiB ± 72.3 MiB +1.75 %
10000_development-mode + rss memory 702 MiB ± 16.1 MiB 704 MiB ± 37.1 MiB +0.24 %
10000_development-mode_hmr + rss memory 841 MiB ± 34.8 MiB 820 MiB ± 23.8 MiB -2.54 %
10000_production-mode + rss memory 707 MiB ± 29.4 MiB 689 MiB ± 95.4 MiB -2.62 %
10000_production-mode_persistent-cold + rss memory 791 MiB ± 73.3 MiB 832 MiB ± 32.9 MiB +5.17 %
10000_production-mode_persistent-hot + rss memory 788 MiB ± 69 MiB 789 MiB ± 40.9 MiB +0.19 %
arco-pro_development-mode + rss memory 622 MiB ± 50.7 MiB 625 MiB ± 16.2 MiB +0.52 %
arco-pro_development-mode_hmr + rss memory 528 MiB ± 18.3 MiB 533 MiB ± 13.8 MiB +1.00 %
arco-pro_production-mode + rss memory 701 MiB ± 66.9 MiB 735 MiB ± 52.4 MiB +4.80 %
arco-pro_production-mode_generate-package-json-webpack-plugin + rss memory 700 MiB ± 57.5 MiB 711 MiB ± 21.4 MiB +1.53 %
arco-pro_production-mode_persistent-cold + rss memory 842 MiB ± 106 MiB 820 MiB ± 84.1 MiB -2.71 %
arco-pro_production-mode_persistent-hot + rss memory 674 MiB ± 67.9 MiB 690 MiB ± 35.4 MiB +2.37 %
arco-pro_production-mode_traverse-chunk-modules + rss memory 710 MiB ± 44.9 MiB 731 MiB ± 36.5 MiB +2.92 %
large-dyn-imports_development-mode + rss memory 711 MiB ± 14 MiB 715 MiB ± 9.84 MiB +0.59 %
large-dyn-imports_production-mode + rss memory 596 MiB ± 25.3 MiB 597 MiB ± 11.1 MiB +0.10 %
threejs_development-mode_10x + rss memory 650 MiB ± 19.7 MiB 709 MiB ± 40.7 MiB +9.11 %
threejs_development-mode_10x_hmr + rss memory 860 MiB ± 57.8 MiB 864 MiB ± 14.6 MiB +0.41 %
threejs_production-mode_10x + rss memory 913 MiB ± 43.6 MiB 960 MiB ± 26.5 MiB +5.11 %
threejs_production-mode_10x_persistent-cold + rss memory 989 MiB ± 31.2 MiB 1031 MiB ± 16.9 MiB +4.25 %
threejs_production-mode_10x_persistent-hot + rss memory 843 MiB ± 21.6 MiB 866 MiB ± 39.1 MiB +2.71 %

Copy link

codspeed-hq bot commented Jun 25, 2025

CodSpeed Performance Report

Merging #10795 will not alter performance

Comparing perf/mangle-plugin (ae7a2bf) with main (ba8132b)

Summary

✅ 16 untouched benchmarks

@LingyuCoder LingyuCoder force-pushed the perf/concate-plugin branch from afa00c0 to 1dcd78e Compare June 26, 2025 09:09
Base automatically changed from perf/concate-plugin to main June 26, 2025 09:38
@LingyuCoder LingyuCoder requested review from JSerFeng and SyMind June 26, 2025 09:52
Copy link

netlify bot commented Jun 26, 2025

Deploy Preview for rspack canceled.

Name Link
🔨 Latest commit ae7a2bf
🔍 Latest deploy log https://app.netlify.com/projects/rspack/deploys/685d1da273c56600082a0af2

@LingyuCoder LingyuCoder marked this pull request as ready for review June 26, 2025 10:35
@LingyuCoder LingyuCoder enabled auto-merge (squash) June 26, 2025 10:40
@LingyuCoder LingyuCoder merged commit 1d05bfe into main Jun 26, 2025
40 checks passed
@LingyuCoder LingyuCoder deleted the perf/mangle-plugin branch June 26, 2025 10:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
release: performance release: performance related release(mr only) team The issue/pr is created by the member of Rspack.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy