{"id":2887,"date":"2018-02-14T16:34:37","date_gmt":"2018-02-14T21:34:37","guid":{"rendered":"https:\/\/mikeconley.ca\/blog\/?p=2887"},"modified":"2023-12-20T16:25:10","modified_gmt":"2023-12-20T21:25:10","slug":"firefox-performance-update-1","status":"publish","type":"post","link":"https:\/\/mikeconley.ca\/blog\/2018\/02\/14\/firefox-performance-update-1\/","title":{"rendered":"Firefox Performance Update #1"},"content":{"rendered":"<p>In an attempt to fill the shoes of <a href=\"https:\/\/ehsanakhgari.org\/category\/blog\">Ehsan&#8217;s<\/a> excellent Quantum Flow Newsletters<sup id=\"rf1-2887\"><a href=\"#fn1-2887\" title=\"Like &lt;a href=&quot;https:\/\/ehsanakhgari.org\/blog\/2017-09-21\/quantum-flow-engineering-newsletter-25&quot;&gt;this one&lt;\/a&gt;! Check out &lt;a href=&quot;https:\/\/ehsanakhgari.org\/category\/blog&quot;&gt;Ehsan&#8217;s blog&lt;\/a&gt; for the rest of the series.\" rel=\"footnote\">1<\/a><\/sup>, I&#8217;ve started to keep track of interesting performance bugs that have been tackled over the past little while.<\/p>\n<p>I don&#8217;t expect I&#8217;ll be able to put together such excellent essays on performance issues in Firefox, but I can certainly try to help to raise the profile of folks helping to make Firefox faster.<\/p>\n<p>Expect these to come out pretty regularly, especially as we continue to press our performance advantage over the competition. Maybe I&#8217;ll come up with a catchy title, too!<\/p>\n<p>Anyhow, here&#8217;s the stuff that&#8217;s gone by recently that I&#8217;m pretty stoked about, performance-wise! To everybody in this list &#8211; thanks for making Firefox faster!<\/p>\n<ul>\n<li>Hiroyuki Ikezoe <a href=\"https:\/\/bugzilla.mozilla.org\/show_bug.cgi?id=1419079\">made it so that we use less CPU<\/a> when out-of-view elements and <a href=\"https:\/\/bugzilla.mozilla.org\/show_bug.cgi?id=1237454\">visibility:hidden elements<\/a> are animating in certain cases<\/li>\n<li>Mike Conley <a href=\"https:\/\/bugzilla.mozilla.org\/show_bug.cgi?id=888784\">moved FormHistory database initialization and migration<\/a> off of the main thread<\/li>\n<li>Bas Schouten <a href=\"https:\/\/bugzilla.mozilla.org\/show_bug.cgi?id=1429623\">made it so that we can get more detailed tracing information<\/a> from Gecko when profiling using VTune (example, RefreshDriver ticks). This should help us debug performance issues on Windows.<\/li>\n<li>Ryan Hunt <a href=\"https:\/\/bugzilla.mozilla.org\/show_bug.cgi?id=1430793\">enabled experimental parallel painting for macOS<\/a>. This will hopefully allow us to perform painting more quickly in the future.<\/li>\n<li>Florian Qu\u00e8ze <a href=\"https:\/\/bugzilla.mozilla.org\/show_bug.cgi?id=1371610\">made it so that we lazily instantiate the Search Service until the first search is started<\/a> instead of when the first search input is focused, which should help reduce the potential for jank when the user begins inputting a search<\/li>\n<li>Gijs Kruitbosch <a href=\"https:\/\/bugzilla.mozilla.org\/show_bug.cgi?id=1435609\">reduced the size of the blocklist by ~50%<\/a> by removing the deprecated blocked certificates list. This means less work for Firefox to do in parsing that list soon after start-up. <a href=\"https:\/\/bugzilla.mozilla.org\/show_bug.cgi?id=1434302\">He also made it so that only the blocked items that are relevant to the client application and platform are returned<\/a>, which means even fewer things to process. This should impact most Firefox users across the board, as the change occurred server-side where the blocklist is produced.<\/li>\n<li>Marco Bonardo <a href=\"https:\/\/bugzilla.mozilla.org\/show_bug.cgi?id=1361431\">refactored PlacesDBUtils to not do main-thread IO<\/a> when Telemetry data is gathered.<\/li>\n<\/ul>\n<hr class=\"footnotes\"><ol class=\"footnotes\" style=\"list-style-type:decimal\"><li id=\"fn1-2887\"><p >Like <a href=\"https:\/\/ehsanakhgari.org\/blog\/2017-09-21\/quantum-flow-engineering-newsletter-25\">this one<\/a>! Check out <a href=\"https:\/\/ehsanakhgari.org\/category\/blog\">Ehsan&#8217;s blog<\/a> for the rest of the series.&nbsp;<a href=\"#rf1-2887\" class=\"backlink\" title=\"Return to footnote 1.\">&#8617;<\/a><\/p><\/li><\/ol>","protected":false},"excerpt":{"rendered":"<p>In an attempt to fill the shoes of Ehsan&#8217;s excellent Quantum Flow Newsletters1, I&#8217;ve started to keep track of interesting performance bugs that have been tackled over the past little while. I don&#8217;t expect I&#8217;ll be able to put together such excellent essays on performance issues in Firefox, but I can certainly try to help [&hellip;]<\/p>\n","protected":false},"author":4,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[874,861],"tags":[],"class_list":["post-2887","post","type-post","status-publish","format-standard","hentry","category-firefox-mozilla-2","category-mozilla-2"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/prmTy-Kz","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/mikeconley.ca\/blog\/wp-json\/wp\/v2\/posts\/2887","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mikeconley.ca\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mikeconley.ca\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mikeconley.ca\/blog\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/mikeconley.ca\/blog\/wp-json\/wp\/v2\/comments?post=2887"}],"version-history":[{"count":6,"href":"https:\/\/mikeconley.ca\/blog\/wp-json\/wp\/v2\/posts\/2887\/revisions"}],"predecessor-version":[{"id":2893,"href":"https:\/\/mikeconley.ca\/blog\/wp-json\/wp\/v2\/posts\/2887\/revisions\/2893"}],"wp:attachment":[{"href":"https:\/\/mikeconley.ca\/blog\/wp-json\/wp\/v2\/media?parent=2887"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mikeconley.ca\/blog\/wp-json\/wp\/v2\/categories?post=2887"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mikeconley.ca\/blog\/wp-json\/wp\/v2\/tags?post=2887"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}