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

Don't evict standalone textures when clearing shared cache. #3488

Merged
merged 1 commit into from Jan 9, 2019

Conversation

Projects
None yet
3 participants
@gw3583
Copy link
Collaborator

gw3583 commented Jan 9, 2019

When reclaiming shared texture cache memory, the final step that
can occur is to completely flush the shared cache in order to
shrink it.

However, this was calling clear() which also evicts all the
existing standalone textures, even ones that are in current use.

This results in picture caching tiles being evicted in some cases
when they shouldn't be. Instead, change the code to only clear
the shared texture cache in this code path.


This change is Reviewable

Don't evict standalone textures when clearing shared cache.
When reclaiming shared texture cache memory, the final step that
can occur is to completely flush the shared cache in order to
shrink it.

However, this was calling clear() which also evicts all the
existing standalone textures, even ones that are in current use.

This results in picture caching tiles being evicted in some cases
when they shouldn't be. Instead, change the code to only clear
the shared texture cache in this code path.
@gw3583

This comment has been minimized.

Copy link
Collaborator

gw3583 commented Jan 9, 2019

r? @bholley

Does this seem reasonable? It solves some previously unexplained evictions of picture cache tiles I was seeing.

Pending try:
https://treeherder.mozilla.org/#/jobs?repo=try&revision=3ff38c4d9c2a85697bda5a2abd4fd090a5b62f54

@gw3583 gw3583 requested a review from bholley Jan 9, 2019

@gw3583

This comment has been minimized.

Copy link
Collaborator

gw3583 commented Jan 9, 2019

Try run looks good.

@bholley

This comment has been minimized.

Copy link
Contributor

bholley commented Jan 9, 2019

@bors-servo r+

We discussed on IRC, this is just a performance optimization rather than a correctness fix.

@bors-servo

This comment has been minimized.

Copy link
Contributor

bors-servo commented Jan 9, 2019

📌 Commit 1f1ddaa has been approved by bholley

@bors-servo

This comment has been minimized.

Copy link
Contributor

bors-servo commented Jan 9, 2019

⌛️ Testing commit 1f1ddaa with merge ff9940f...

bors-servo added a commit that referenced this pull request Jan 9, 2019

Auto merge of #3488 - gw3583:narrow-clear, r=bholley
Don't evict standalone textures when clearing shared cache.

When reclaiming shared texture cache memory, the final step that
can occur is to completely flush the shared cache in order to
shrink it.

However, this was calling clear() which also evicts all the
existing standalone textures, even ones that are in current use.

This results in picture caching tiles being evicted in some cases
when they shouldn't be. Instead, change the code to only clear
the shared texture cache in this code path.

<!-- 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/3488)
<!-- Reviewable:end -->
@bors-servo

This comment has been minimized.

Copy link
Contributor

bors-servo commented Jan 9, 2019

☀️ Test successful - status-appveyor, status-taskcluster
Approved by: bholley
Pushing ff9940f to master...

@bors-servo bors-servo merged commit 1f1ddaa into servo:master Jan 9, 2019

3 checks passed

Taskcluster (pull_request) TaskGroup: success
Details
continuous-integration/appveyor/pr AppVeyor build succeeded
Details
homu Test successful
Details

moz-v2v-gh pushed a commit to mozilla/gecko-dev that referenced this pull request Jan 9, 2019

Bug 1518717 - Update webrender to commit ff9940fdf95412a3e5d1a70c78de…
…fba6e919c170 (WR PR #3488). r=kats

servo/webrender#3488

Differential Revision: https://phabricator.services.mozilla.com/D16039

--HG--
extra : moz-landing-system : lando

staktrace added a commit to staktrace/webrender that referenced this pull request Jan 9, 2019

mykmelez pushed a commit to mykmelez/gecko that referenced this pull request Jan 9, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment