mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-08 10:44:56 +00:00
215a74be21
Currently we expire old picture cache tiles at the end of the frame, immediately before garbage collecting them. This means that new textures have already been allocated for newly-created picture cache tiles, so we often end up both allocating and destroying textures in the same frame. Instead, move the call to expire_old_picture_cache_tiles() to the beginning of the frame. Picture cache tiles added to the cache during the frame can then recylce these textures rather than allocate new ones. Garbage collection still occurs at the end of the frame, destroying freed textures that were not recycled. Note that expire_old_picture_cache_tiles() frees picture cache tiles which were unused in the *previous* as well as the current frame. This is a legacy from when the function freed all types of texture cache entries, and could be called throughout the frame. Immediately prior to this change, it could in fact have just checked for usage during the *current* frame, as the function was only called at the end of the frame. However, as this change moves the call to the beginning of the frame, we do actually now need to check for usage during the *previous* frame. Differential Revision: https://phabricator.services.mozilla.com/D102349 |
||
---|---|---|
.. | ||
2d | ||
angle | ||
cairo | ||
config | ||
docs | ||
gl | ||
graphite2 | ||
harfbuzz | ||
ipc | ||
layers | ||
ots | ||
qcms | ||
sfntly | ||
skia | ||
src | ||
tests | ||
thebes | ||
vr | ||
webrender_bindings | ||
wgpu | ||
wgpu_bindings | ||
wr | ||
ycbcr | ||
moz.build |