From 32429a665b0ab511c4835aec83db3b39b2d77084 Mon Sep 17 00:00:00 2001 From: Nicolas Silva Date: Tue, 30 Aug 2022 09:44:43 +0000 Subject: [PATCH] Bug 1787706 - Increase the blob tile size to 512. r=jrmuizel It improves rasterization and upload times by a lot in almost all of the test cases I can find. The only drawback is that our invalidation granulatiry is the tile so invalidation gets coarser as we increase the tile size. 512 is a bit special because it is the limit above which a different texture upload path is taken, so there will be more risk of performance side effects if/when we decide to make tiles even larger. Differential Revision: https://phabricator.services.mozilla.com/D155822 --- gfx/thebes/gfxPlatform.cpp | 2 +- layout/reftests/svg/filters/reftest.list | 2 +- modules/libpref/init/StaticPrefList.yaml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/gfx/thebes/gfxPlatform.cpp b/gfx/thebes/gfxPlatform.cpp index a10aad915c63..b63249fa6ebf 100644 --- a/gfx/thebes/gfxPlatform.cpp +++ b/gfx/thebes/gfxPlatform.cpp @@ -590,7 +590,7 @@ static void WebRenderBatchingPrefChangeCallback(const char* aPrefName, void*) { static void WebRenderBlobTileSizePrefChangeCallback(const char* aPrefName, void*) { uint32_t tileSize = Preferences::GetUint( - StaticPrefs::GetPrefName_gfx_webrender_blob_tile_size(), 256); + StaticPrefs::GetPrefName_gfx_webrender_blob_tile_size(), 512); gfx::gfxVars::SetWebRenderBlobTileSize(tileSize); } diff --git a/layout/reftests/svg/filters/reftest.list b/layout/reftests/svg/filters/reftest.list index 46fa5daea792..d842c0ab31c6 100644 --- a/layout/reftests/svg/filters/reftest.list +++ b/layout/reftests/svg/filters/reftest.list @@ -107,7 +107,7 @@ fuzzy(0-1,0-400) == feDisplacementMap-alpha-01.svg pass.svg fuzzy(0-2,0-500) == feDisplacementMap-colour-01.svg feDisplacementMap-colour-01-ref.svg == feDisplacementMap-scale-01.svg pass.svg -fuzzy-if(/^Windows\x20NT\x2010\.0/.test(http.oscpu),0-2,0-25) fuzzy-if(!useDrawSnapshot,55-98,14033-16360) == feDropShadow-01.svg feDropShadow-01-ref.svg +fuzzy-if(/^Windows\x20NT\x2010\.0/.test(http.oscpu),0-2,0-25) fuzzy-if(!useDrawSnapshot,40-98,14033-16360) == feDropShadow-01.svg feDropShadow-01-ref.svg == feFlood-color-01.svg pass.svg diff --git a/modules/libpref/init/StaticPrefList.yaml b/modules/libpref/init/StaticPrefList.yaml index 351322df197f..5fe5f7871051 100644 --- a/modules/libpref/init/StaticPrefList.yaml +++ b/modules/libpref/init/StaticPrefList.yaml @@ -6110,7 +6110,7 @@ - name: gfx.webrender.blob-tile-size type: uint32_t - value: 256 + value: 512 mirror: always - name: gfx.webrender.batched-upload-threshold