Skip to content
This repository has been archived by the owner on Sep 9, 2022. It is now read-only.

Benchmarking memory footprint

Alexander Pushkov edited this page Nov 10, 2017 · 2 revisions

This version of uBlock is no longer under development.

Consider using uBlock Origin or another adblocker.

uBlock Origin: https://github.com/gorhill/uBlock

Other adblockers and privacy tools:

Please note that donations sought on https://ublock.org/ are not benefiting uBlock Origin developers.


Vim test
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)
  2. Ensure click-to-play (or whatever equivalent) is enabled before launching the benchmark
  3. 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
  2. Have only the "new tab" opened
  3. Quit browser
  4. Launch browser
  5. Paste http://news.yahoo.com/ in address bar, wait for page to finish loading
  6. Open new tab, paste http://news.google.com/, wait for page to finish loading
  7. Open new tab, paste http://www.huffingtonpost.com/, wait for page to finish loading
  8. Open new tab, paste http://www.cnn.com/, wait for page to finish loading
  9. Open new tab, paste http://www.nytimes.com/, wait for page to finish loading
  10. Open new tab, paste http://www.foxnews.com/, wait for page to finish loading
  11. Open new tab, paste http://www.nbcnews.com/, wait for page to finish loading
  12. Open new tab, paste http://www.dailymail.co.uk/, wait for page to finish loading
  13. Open new tab, paste http://www.washingtonpost.com/, wait for page to finish loading
  14. Open new tab, paste http://www.theguardian.com/, wait for page to finish loading
  15. Open new tab, paste https://news.ycombinator.com/, wait for page to finish loading
  16. Leave the browser idle for two minutes
  17. Open new tab, paste about:memory, wait for page to finish loading
  18. Firefox: Click "Minimize memory usage" button in "Free memory" section
  19. Firefox: Click Measure button in "Show memory reports" section
  20. 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 -- internally, the browsers measure the numbers differently from each others. The benchmarks are meant 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

https://github.com/chrisaljoudi/uBlock/blob/master/doc/benchmarks/mem-usage-overall-20141224.ods

Clone this wiki locally