Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.
Sign upCoalescing optimization #1271
Coalescing optimization #1271
Conversation
| free_list[work_index].union(&free_list[candidate_index]); | ||
| free_list[candidate_index].size.width = 0 | ||
| } | ||
| new_free_list.push(free_list[work_index]) |
This comment has been minimized.
This comment has been minimized.
kvark
May 18, 2017
Author
Member
this line looks like a bug to me (adding a work item during the candidates iteration), and I removed it
|
@pcwalton Would you mind taking a look at this one, if you can still recall how the coalesce code works? :) |
|
I had a look over this and it seems right to me. Also ran the Servo tests and tried a few sites manually. @bors-servo r+ |
|
|
Coalescing optimization Fixes #1266 (if it doesn't fix it yet, the PR would be a step in the right direction anyway) This PR removes indexing and dynamic allocations from `TexturePage::coalesce`, cleans up the code, adds a basic benchmark for it. Results on my machine - time dropped by about 25%. It's not super great, but I believe that real-world parameters have improved more, given that we are able to capture intermediate coalescing results now even when timed out. r? @glennw <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/webrender/1271) <!-- Reviewable:end -->
|
|
|
@kvark, This PR seems to hit an assertion failure (or something else causing a debug-only panic) when running the gecko reftest |
|
@staktrace sorry about that! looking now |
Support for allocating zero sized textures Addresses #1271 (comment) cc @staktrace r? @glennw <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/webrender/1287) <!-- Reviewable:end -->
kvark commentedMay 18, 2017
•
edited by larsbergstrom
Fixes #1266
(if it doesn't fix it yet, the PR would be a step in the right direction anyway)
This PR removes indexing and dynamic allocations from
TexturePage::coalesce, cleans up the code, adds a basic benchmark for it. Results on my machine - time dropped by about 25%. It's not super great, but I believe that real-world parameters have improved more, given that we are able to capture intermediate coalescing results now even when timed out.r? @glennw
This change is