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

Make eager texture cache eviction not quite so eager. #3376

Merged
merged 1 commit into from Nov 30, 2018

Conversation

Projects
None yet
3 participants
@gw3583
Copy link
Collaborator

gw3583 commented Nov 30, 2018

Texture cache entries can be evicted at the start of
a frame, or at any time during the frame when a cache
allocation is occurring. This means that entries tagged
with eager eviction may get evicted before they have a
chance to be requested on the current frame. Instead,
advance the frame id of the entry by one before
comparison. This ensures that an eager entry will
not be evicted until it is not used for at least
one complete frame.


This change is Reviewable

Make eager texture cache eviction not quite so eager.
Texture cache entries can be evicted at the start of
a frame, or at any time during the frame when a cache
allocation is occurring. This means that entries tagged
with eager eviction may get evicted before they have a
chance to be requested on the current frame. Instead,
advance the frame id of the entry by one before
comparison. This ensures that an eager entry will
not be evicted until it is not used for at least
one complete frame.
@gw3583

This comment has been minimized.

Copy link
Collaborator

gw3583 commented Nov 30, 2018

r? @kvark or @nical or @bholley

(I discussed this with @bholley on IRC and the idea seems correct - just need to make sure I didn't mess up the implementation).

@gw3583

This comment has been minimized.

Copy link
Collaborator

gw3583 commented Nov 30, 2018

@gw3583

This comment has been minimized.

Copy link
Collaborator

gw3583 commented Nov 30, 2018

Try run looks good, I think.

@kvark

This comment has been minimized.

Copy link
Member

kvark commented Nov 30, 2018

@bors-servo

This comment has been minimized.

Copy link
Contributor

bors-servo commented Nov 30, 2018

📌 Commit c881d04 has been approved by kvark

@bors-servo

This comment has been minimized.

Copy link
Contributor

bors-servo commented Nov 30, 2018

⌛️ Testing commit c881d04 with merge d2e1c31...

bors-servo added a commit that referenced this pull request Nov 30, 2018

Auto merge of #3376 - gw3583:not-so-eager, r=kvark
Make eager texture cache eviction not quite so eager.

Texture cache entries can be evicted at the start of
a frame, or at any time during the frame when a cache
allocation is occurring. This means that entries tagged
with eager eviction may get evicted before they have a
chance to be requested on the current frame. Instead,
advance the frame id of the entry by one before
comparison. This ensures that an eager entry will
not be evicted until it is not used for at least
one complete frame.

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

This comment has been minimized.

Copy link
Contributor

bors-servo commented Nov 30, 2018

💔 Test failed - status-taskcluster

@kvark

This comment has been minimized.

Copy link
Member

kvark commented Nov 30, 2018

sccache --stop-server || true
Stopping sccache server...
error: couldn't connect to server

We need to make sscache more fault-tolerant?
@bors-servo retry

@bors-servo

This comment has been minimized.

Copy link
Contributor

bors-servo commented Nov 30, 2018

⌛️ Testing commit c881d04 with merge 0f2403d...

bors-servo added a commit that referenced this pull request Nov 30, 2018

Auto merge of #3376 - gw3583:not-so-eager, r=kvark
Make eager texture cache eviction not quite so eager.

Texture cache entries can be evicted at the start of
a frame, or at any time during the frame when a cache
allocation is occurring. This means that entries tagged
with eager eviction may get evicted before they have a
chance to be requested on the current frame. Instead,
advance the frame id of the entry by one before
comparison. This ensures that an eager entry will
not be evicted until it is not used for at least
one complete frame.

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

This comment has been minimized.

Copy link
Contributor

bors-servo commented Nov 30, 2018

☀️ Test successful - status-appveyor, status-taskcluster
Approved by: kvark
Pushing 0f2403d to master...

@bors-servo bors-servo merged commit c881d04 into servo:master Nov 30, 2018

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 Dec 2, 2018

Bug 1511662 - Update webrender to commit 0f2403d0813b5dd2113f61cc1548…
…f4a8562881a2 (WR PR #3376). r=kats

servo/webrender#3376

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

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

mykmelez pushed a commit to mykmelez/gecko that referenced this pull request Dec 2, 2018

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