Skip to content
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

Merged
merged 1 commit into from May 21, 2017
Merged

Rewrite parallel.rs #16971

merged 1 commit into from May 21, 2017

Conversation

bholley
Copy link
Contributor

@bholley bholley commented May 20, 2017

@highfive
Copy link

Heads up! This PR modifies the following files:

  • @emilio: components/style/parallel.rs, components/style/matching.rs

@highfive highfive added the S-awaiting-review There is new code that needs to be reviewed. label May 20, 2017
@highfive
Copy link

warning Warning warning

  • These commits modify unsafe code. Please review it carefully!
  • These commits modify style code, but no tests are modified. Please consider adding a test!

@bholley
Copy link
Contributor Author

bholley commented May 20, 2017

@bors-servo try

@bors-servo
Copy link
Contributor

⌛ Trying commit 2fb8bcf with merge 195b3b5...

bors-servo pushed a commit that referenced this pull request May 20, 2017
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 -->
@bors-servo
Copy link
Contributor

💔 Test failed - linux-dev

@highfive highfive added the S-tests-failed The changes caused existing tests to fail. label May 20, 2017
@highfive highfive removed the S-tests-failed The changes caused existing tests to fail. label May 20, 2017
@bholley
Copy link
Contributor Author

bholley commented May 20, 2017

@bors-servo try

@bors-servo
Copy link
Contributor

⌛ Trying commit b298f06 with merge f8358ea...

bors-servo pushed a commit that referenced this pull request May 20, 2017
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 -->
@bors-servo
Copy link
Contributor

💔 Test failed - linux-dev

@highfive highfive added the S-tests-failed The changes caused existing tests to fail. label May 20, 2017
@bholley
Copy link
Contributor Author

bholley commented May 20, 2017

@bors-servo retry

@bors-servo
Copy link
Contributor

⌛ Trying commit b298f06 with merge 4f745c9...

bors-servo pushed a commit that referenced this pull request May 20, 2017
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 -->
@bholley
Copy link
Contributor Author

bholley commented May 20, 2017

Ok, out of time before bed and I want to get this into the queue.

@bors-servo r=emilio p=1

@bors-servo
Copy link
Contributor

📌 Commit b298f06 has been approved by emilio

@highfive highfive assigned emilio and unassigned glennw May 20, 2017
@highfive highfive added S-awaiting-merge The PR is in the process of compiling and running tests on the automated CI. and removed S-awaiting-review There is new code that needs to be reviewed. S-tests-failed The changes caused existing tests to fail. labels May 20, 2017
@bors-servo
Copy link
Contributor

☀️ 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
Approved by: emilio
Pushing 4f745c9 to master...

@bors-servo
Copy link
Contributor

👀 Test was successful, but fast-forwarding failed: 422 Update is not a fast forward

@emilio
Copy link
Member

emilio commented May 21, 2017

@bors-servo retry

@bors-servo
Copy link
Contributor

🔒 Merge conflict

@bors-servo
Copy link
Contributor

☔ The latest upstream changes (presumably #16972) made this pull request unmergeable. Please resolve the merge conflicts.

@highfive highfive added S-needs-rebase There are merge conflict errors. and removed S-awaiting-merge The PR is in the process of compiling and running tests on the automated CI. labels May 21, 2017
@highfive highfive added the S-awaiting-review There is new code that needs to be reviewed. label May 21, 2017
@bholley
Copy link
Contributor Author

bholley commented May 21, 2017

@bors-servo r=emilio

@bors-servo
Copy link
Contributor

📌 Commit a182ae4 has been approved by emilio

@highfive highfive added S-awaiting-merge The PR is in the process of compiling and running tests on the automated CI. and removed S-awaiting-review There is new code that needs to be reviewed. S-needs-rebase There are merge conflict errors. labels May 21, 2017
@bors-servo
Copy link
Contributor

⌛ Testing commit a182ae4 with merge f14eeb0...

bors-servo pushed a commit that referenced this pull request May 21, 2017
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 -->
@bors-servo
Copy link
Contributor

☀️ 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
Approved by: emilio
Pushing f14eeb0 to master...

@bors-servo bors-servo merged commit a182ae4 into servo:master May 21, 2017
@highfive highfive removed the S-awaiting-merge The PR is in the process of compiling and running tests on the automated CI. label May 21, 2017
@mbrubeck mbrubeck mentioned this pull request Jun 6, 2017
3 tasks
bors-servo pushed a commit that referenced this pull request Jun 8, 2017
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 -->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants