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
Rewrite parallel.rs #16971
Rewrite parallel.rs #16971
Conversation
Heads up! This PR modifies the following files:
|
@bors-servo try |
Rewrite parallel.rs https://bugzilla.mozilla.org/show_bug.cgi?id=1366347 <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/16971) <!-- Reviewable:end -->
💔 Test failed - linux-dev |
@bors-servo try |
Rewrite parallel.rs https://bugzilla.mozilla.org/show_bug.cgi?id=1366347 <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/16971) <!-- Reviewable:end -->
💔 Test failed - linux-dev |
@bors-servo retry |
Rewrite parallel.rs https://bugzilla.mozilla.org/show_bug.cgi?id=1366347 <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/16971) <!-- Reviewable:end -->
Ok, out of time before bed and I want to get this into the queue. @bors-servo r=emilio p=1 |
📌 Commit b298f06 has been approved by |
☀️ Test successful - android, arm32, arm64, linux-dev, linux-rel-css, linux-rel-wpt, mac-dev-unit, mac-rel-css, mac-rel-wpt1, mac-rel-wpt2, windows-msvc-dev |
👀 Test was successful, but fast-forwarding failed: 422 Update is not a fast forward |
@bors-servo retry |
🔒 Merge conflict |
☔ The latest upstream changes (presumably #16972) made this pull request unmergeable. Please resolve the merge conflicts. |
@bors-servo r=emilio |
📌 Commit a182ae4 has been approved by |
Rewrite parallel.rs https://bugzilla.mozilla.org/show_bug.cgi?id=1366347 <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/16971) <!-- Reviewable:end -->
☀️ Test successful - android, arm32, arm64, linux-dev, linux-rel-css, linux-rel-wpt, mac-dev-unit, mac-rel-css, mac-rel-wpt1, mac-rel-wpt2, windows-msvc-dev |
Parallel layout optimizations This takes some of the optimizations made to parallel styling in #16971 and applies them to parallel layout. Specifically: * Reduce the chunk size, to increase chances for parallelism on trees with small fan-out. * Reduce allocations by using SmallVec. * Reduce task switching by processing up to one chunk of children within the same rayon task as the parent. This cuts the "Primary Layout Pass" time in **half** on the MySpace page from [tp5n], and on my other real-world test pages it is a small improvement or close to no change. [tp5n]: https://wiki.mozilla.org/Buildbot/Talos/Tests#tp5n_pages_set --- - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes do not require tests because they affect performance only <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/17192) <!-- Reviewable:end -->
https://bugzilla.mozilla.org/show_bug.cgi?id=1366347
This change is