-
-
Notifications
You must be signed in to change notification settings - Fork 607
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
refactor: introducing the faster code-splitting algorithm #8823
Merged
Conversation
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
✅ Deploy Preview for rspack canceled.Built without sensitive environment variables
|
CodSpeed Performance ReportMerging #8823 will not alter performanceComparing Summary
|
JSerFeng
force-pushed
the
refactor/code-splitter
branch
from
January 4, 2025 19:27
dab14a8
to
d4e7793
Compare
JSerFeng
force-pushed
the
refactor/code-splitter
branch
from
January 4, 2025 20:42
d4e7793
to
159fb7d
Compare
JSerFeng
commented
Jan 4, 2025
tests/plugin-test/css-extract/cases/dependOn-multiple-files-per-entry/expected/entry1.css
Outdated
Show resolved
Hide resolved
JSerFeng
force-pushed
the
refactor/code-splitter
branch
2 times, most recently
from
January 5, 2025 20:37
ac5893a
to
4526881
Compare
maybe we should add a benchmark case with lots of dynamic import module first and to see the bench metrics avoid future regression |
📝 Benchmark detail: Open
|
JSerFeng
force-pushed
the
refactor/code-splitter
branch
11 times, most recently
from
January 10, 2025 06:15
bca01bd
to
706ae15
Compare
ahabhgk
previously approved these changes
Jan 10, 2025
JSerFeng
force-pushed
the
refactor/code-splitter
branch
6 times, most recently
from
January 13, 2025 10:41
4a23903
to
4ea7c45
Compare
JSerFeng
force-pushed
the
refactor/code-splitter
branch
from
January 14, 2025 04:02
4ea7c45
to
91c3ff2
Compare
chenjiahan
changed the title
refactor: code splitter
refactor: introducing the faster code-splitting algorithm
Jan 15, 2025
JSerFeng
force-pushed
the
refactor/code-splitter
branch
2 times, most recently
from
January 16, 2025 08:21
25c0c61
to
391f835
Compare
JSerFeng
force-pushed
the
refactor/code-splitter
branch
from
January 17, 2025 05:59
391f835
to
d308f3e
Compare
JSerFeng
force-pushed
the
refactor/code-splitter
branch
from
January 17, 2025 07:49
d308f3e
to
425c331
Compare
ahabhgk
approved these changes
Jan 20, 2025
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
Change the algorithm of code-splitting.
Making it more maintainable, concurrent and easy to working with incoming incremental arch.
Because of the multi-threads, now the code-splitting is more performant than before even using single thread. There can be a huge improvement on large repo.
There is a internal test project which contains about 1.5 million chunk modules, using many dynamic imports, costs about 1200 ms to complete a whole code-splitting phase, using the new algorithm on my 15 core MacBook Pro M1, only takse 600 ms to finish !
The detailed benchmark data will be present soon
Checklist