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

Sync changes from mozilla-central gfx/wr #3888

Merged
merged 4 commits into from Mar 19, 2020
Merged

Commits on Mar 19, 2020

  1. Bug 1616901 - Allocate rgb8 linear shared texture cache regions four …

    …at a time. r=gw
    
    As an initial step to reduce the reallocation churn a bit. This texture array grows up to 12 layers for any trivial page and goes up to 40+ on many sites (like the youtube front page) so it's far from enough but it's a start. Simple popups like Help > About Nightly don't need more than 4 layers, though.
    
    Differential Revision: https://phabricator.services.mozilla.com/D67366
    
    [ghsync] From https://hg.mozilla.org/mozilla-central/rev/a781ce6dd0204621001b60c291601dd7f5666690
    nical authored and moz-gfx committed Mar 19, 2020
  2. Bug 1616901 - Put a bit more texture cache eviction pressure. r=gw

    Also make sure that the pressure factor never gets to zero.
    
    These new constants aren't deinitive in any way though I think that they are a bit more reasonable.
    
    Depends on D67366
    
    Differential Revision: https://phabricator.services.mozilla.com/D67367
    
    [ghsync] From https://hg.mozilla.org/mozilla-central/rev/86167a71e7060d373e5ca4148e0e47ae5169d616
    nical authored and moz-gfx committed Mar 19, 2020
  3. Bug 1616901 - Move picture cache texture array logic into its own str…

    …uct. r=gw
    
    Doesn't make for a stellar API but texture_cache.rs has a lot of code and I had a hard time wrapping my head around the scattered parts of picture-cache specific code.
    
    In addition (and more importantly) texture arrays for each tile sizes can be allocated on demand and do not need to be created when initializing the texture cache. This avoids allocating and deallocating the mispredicted picture texture size when the initial window size is garbage.
    
    Depends on D67367
    
    Differential Revision: https://phabricator.services.mozilla.com/D67368
    
    [ghsync] From https://hg.mozilla.org/mozilla-central/rev/955e7790f963c0c99ab8ab6ba537491a24023939
    nical authored and moz-gfx committed Mar 19, 2020
  4. Bug 1616901 - Cap the maximum texture array layer count to 32 on all …

    …platforms. r=gw
    
    It was previously set on mac only due to driver mischiefs, however the cost of growing texture arrays becomes high with large layer counts, which capping the layer count to 32 everywhere helps mitigate at the expense of batch breaks.
    
    Depends on D67368
    
    Differential Revision: https://phabricator.services.mozilla.com/D67369
    
    [ghsync] From https://hg.mozilla.org/mozilla-central/rev/8f4b47079a44eeea87caa560b3b072148551aa3c
    nical authored and moz-gfx committed Mar 19, 2020
You can’t perform that action at this time.