From 4e887319a392dd16fbff0bfeca67a0bddf747b3d Mon Sep 17 00:00:00 2001 From: Raymond Hill Date: Wed, 23 Sep 2015 15:01:55 -0400 Subject: [PATCH] Created Firefox version: benchmarking memory footprint (2015-03-07) (markdown) --- ...chmarking-memory-footprint-(2015-03-07).md | 66 +++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 Firefox-version:-benchmarking-memory-footprint-(2015-03-07).md diff --git a/Firefox-version:-benchmarking-memory-footprint-(2015-03-07).md b/Firefox-version:-benchmarking-memory-footprint-(2015-03-07).md new file mode 100644 index 0000000..b568f95 --- /dev/null +++ b/Firefox-version:-benchmarking-memory-footprint-(2015-03-07).md @@ -0,0 +1,66 @@ +[![Vim test](https://raw.githubusercontent.com/gorhill/uBlock/52ed1871b01cfb5edc0ba704cec8418463d648ad/doc/benchmarks/vim-test-abp-vs-ublock.png)](https://raw.githubusercontent.com/gorhill/uBlock/52ed1871b01cfb5edc0ba704cec8418463d648ad/doc/benchmarks/vim-test-abp-vs-ublock.png)
Infamous VIM test: ABP 1,900 MB vs. uBlock 392 MB. Firefox 35 64-bit. ABP systematically adds around 3.5 MB per page **and per-frame** on a page, when using only _EasyList_. + +#### Setup + +1. Ensure the blocker is the only active extension (to avoid results to be polluted by other extensions) +1. Ensure click-to-play (or whatever equivalent) is enabled before launching the benchmark +1. Select the following filter lists in the benchmarked blockers: + - EasyList + - Peter Lowe's Ad server list + - EasyPrivacy + - Fanboy's Social Blocking List + - Malware domain lists + - ABP-specifics: _"Acceptable ads"_ disabled + - uBlock-specifics: uBlock's filters enabled (+80 filters), extra malware domains (+1,459 filters) + +#### Steps + +1. Have the benchmarked blocker enabled and properly setup +1. Have only the "new tab" opened +1. Quit Firefox +1. Launch Firefox +1. Paste in address bar, wait for page to finish loading +1. Open new tab, paste , wait for page to finish loading +1. Open new tab, paste , wait for page to finish loading +1. Open new tab, paste , wait for page to finish loading +1. Open new tab, paste , wait for page to finish loading +1. Open new tab, paste , wait for page to finish loading +1. Open new tab, paste , wait for page to finish loading +1. Open new tab, paste , wait for page to finish loading +1. Open new tab, paste , wait for page to finish loading +1. Open new tab, paste , wait for page to finish loading +1. Open new tab, paste , wait for page to finish loading +1. Leave the browser idle for two minutes +1. Open new tab, paste `about:memory`, wait for page to finish loading +1. Firefox: Click _"Minimize memory usage"_ button in _"Free memory"_ section +1. Firefox: Click _Measure_ button in _"Show memory reports"_ section +1. Firefox: Write down _"Explicit Allocations"_ value (see notes below) / Chromium: Write down _Σ_ value + +So I did the **exact** above steps for no blocker, ABP, uBlock. + +#### Results + +- **Firefox** + - No blocker: **613.55 MB** (reference memory usage) + - **Adblock Plus** 2.6.6: **625.05 MB** (reference _plus_ 11.5 MB) + - **µBlock** 0.8.2.0: **426.85 MB** (reference _minus_ 186.7 MB, ABP _minus_ 198.2 MB) +- **Chromium** + - No blocker: **1,169.35 MB** (reference memory usage) + - **Adblock Plus** 1.8.8: **1,509.05 MB** (reference _plus_ 339.7 MB) + - **µBlock** 0.8.2.0: **1,042.94 MB** (reference _minus_ 126.41 MB, ABP _minus_ 466.11 MB) + +**Important:** You can't compare directly the figures between the browsers -- they are taken using different methodology from one browser to the other. The benchmarks are more to compare the figures for various blockers within the same browser. + +#### Notes + +Tested on Firefox 34 64-bit and Chromium 39 64-bit on Linux Mint. No other extensions were present. + +For Firefox, I chose the _"Explicit Allocations"_ figure because as per Firefox, it is "the single best number to focus on" with regard to memory usage. + +Without going into details, hardware is i5 quadcore + 8 GB + +If other users feel like repeating the tests, it would be nice just to confirm I got everything right. + +#### Raw data + + \ No newline at end of file