Bug 811467. Increase image decode chunk size. r=joe
authorJeff Muizelaar <jmuizelaar@mozilla.com>
Tue, 13 Nov 2012 15:39:04 -0800
changeset 117796 cc210f0643e120dff0c4d5a6f9e24a80d52c843a
parent 117795 6f434302bff32b1fb1bd7bb6d6e91e1d1749a3e8
child 117797 8d3046ee2f00483b95e6d8a75b11515a55bf5339
push idunknown
push userunknown
push dateunknown
reviewersjoe
bugs811467, 10000, 10240, 51200, 16384
milestone19.0a1
Bug 811467. Increase image decode chunk size. r=joe Telemetry shows us doing image decoding at around 10000 KB/s. This means we can do about 10240 bytes per ms. Since we have 5ms to do the decoding that means we should be able to 51200 bytes in 5ms. I'd suggest we change to 16384 as that gives a healthy margin. It turns out tenfourfox has also increased the size for performance reasons.
modules/libpref/src/init/all.js
--- a/modules/libpref/src/init/all.js
+++ b/modules/libpref/src/init/all.js
@@ -3609,17 +3609,17 @@ pref("image.mem.decodeondraw", true);
 // value and twice this value.
 //
 // This used to be 120 seconds, but having it that high causes our working
 // set to grow very large. Switching it back to 10 seconds will hopefully
 // be better.
 pref("image.mem.min_discard_timeout_ms", 10000);
 
 // Chunk size for calls to the image decoders
-pref("image.mem.decode_bytes_at_a_time", 4096);
+pref("image.mem.decode_bytes_at_a_time", 16384);
 
 // The longest time we can spend in an iteration of an async decode
 pref("image.mem.max_ms_before_yield", 5);
 
 // The maximum amount of decoded image data we'll willingly keep around (we
 // might keep around more than this, but we'll try to get down to this value).
 pref("image.mem.max_decoded_image_kb", 51200);
 
@@ -3835,9 +3835,9 @@ pref("network.activity.blipIntervalMilli
 // to take effect.
 pref("jsloader.reuseGlobal", false);
 
 // When we're asked to take a screenshot, don't wait more than 2000ms for the
 // event loop to become idle before actually taking the screenshot.
 pref("dom.browserElement.maxScreenshotDelayMS", 2000);
 
 // Whether we should show the placeholder when the element is focused but empty.
-pref("dom.placeholder.show_on_focus", true);
\ No newline at end of file
+pref("dom.placeholder.show_on_focus", true);