This might seem counterintuitive at first — after all, ABP blocks all of those annoying animated Flash ads from loading, and so it should save you from unnecessary memory and CPU hits. Unfortunately, the actual situation is a lot more complex than that. Basically, ABP has grown too big for its own good, and just the very process of running ABP in your web browser consumes more memory and CPU cycles than it saves.
To begin with, according to Mozilla developer Nicholas Nethercote, there is a 60-70MB memory hit having Adblock Plus run in the background on Firefox. The main problem, though, is the process by which ABP actually blocks ads. Basically, ABP inserts a massive CSS stylesheet — occupying around 4MB of RAM — into every single webpage that you visit, stripping out the ads. This wouldn’t be a problem if we were still in the ’90s or early ’00s, but nowadays it is very common for a webpage to have lots of iframes, which are separate, individual webpages that are loaded and embedded within the page you’re currently looking at. The most common example is the ubiquitous social sharing widget (Facebook, Twitter, etc.) which is actually an iframe containing a separate webpage hosted on Facebook/Twitter’s servers.
You can probably see where this is going. On a modern website, there can be dozens of iframes. On the ExtremeTech homepage there are 10, which is pretty low. In Nethercote’s testing, he found that TechCrunch used around 194MB of RAM without ABP enabled — but that doubled to 417MB with ABP enabled, after triggering all of the social widgets. In an extreme example, the VIM Color Scheme Test website — which has hundreds of iframes — goes from a few hundred megabytes of memory to almost two gigabytes. Nethercote only tested ABP’s memory consumption in Firefox, but we performed the same test in Chrome and got the same results.
Is AdBlock Plus killing the web? Massive memory usage is dragging Firefox down
As something of a browser butterfly, I like to keep an eye on what's happening with browsers other than the one I'm currently using fulltime. Like many tech journalists (and non-journalists for that matter), I gave up on Internet Explorer quite some time ago, opting for Firefox initially. I also dabbled with Opera and Waterfox, amongst others, but for a number of years it was Firefox that delivered web pages to me. Sadly, I noticed that things started to slow down. New versions were more bloated and sluggish, and in the search for better performance, I ended up with Chrome. I've been a Chrome user for years now, but I was recently spurred into trying out Firefox once again.
Quite where the impetus came from, I'm not sure -- just one of those "let’s see if anything's changed" moments, guess. Apart from little quirks like the refresh button being on the "wrong" side of the program window, Firefox seems pretty decent. I was impressed by the sharpness of the display for starters -- I had forgotten that Chrome handles high DPIs very poorly. As I'm using a Surface Pro running at 1920 x 1080, running at 150 percent DPI scaling is essential (I don’t have microscopes for eyes!) and Chrome makes everything looks slightly blurry... not enough to put me off -- I'm still using it, after all -- but Firefox was a revelation!
Performance-wise, I found there to be little difference between Chrome and Firefox. No exhaustive tests were performed, though from general usage everything "felt" about the same. So I stuck with Chrome. I'll put up with the blurriness for now -- although now it's at the forefront of my mind, it would be nice if Chrome dev pulled their thumbs out and got it sorted. It's been going on for years now, and it really shouldn’t be hard to fix. Other browsers cope with high resolution displays without problems. The point of all of this is that Firefox suddenly entered my life after years of absence, so what happened last night struck me as interesting.
Scanning through Twitter whilst nodding off in bed, I spotted a tweet from journalist Ed Bott:
Loading TechCrunch in Firefox uses 194 MiB of RAM. With AdBlock Plus, it uses 417 MiB. Jeez. https://t.co/oA19fQSsPw
— Ed Bott (@edbott) May 14, 2014
Having previously had concerns about Firefox and Chrome's memory usage, this piqued my interest. So this morning I fired up Firefox. One tab open -- BetaNews, of course -- finds memory usage sitting at around 184MB (Chrome, for comparison, eats up about 112MB for the same). OK, so let's get AdBlock Plus installed to check out these claims.
I started using it after a longer break and so far, in my opinion, FF works pretty well. Stable and probably even faster than ever before.
While working with Chrome I use Adblock (not Adblock Plus), which for me makes GC a little bit faster.
AdBlock Plus - which purports to block the garish, distracting advertisements found on a vast multitude of websites today - has attracted quite a sizable following across the globe. Many of its users find that, on the whole, it lives up to its claims, making web browsing more enjoyable and faster, while reducing the amount of data used by hiding and disabling adverts on webpages.
However, although data consumption may well be lowered, Mozilla suggests that enabling the popular plugin could result in exceptionally large amounts of RAM being consumed by the program. They found that just enabling the plugin on a 64-bit system could result in a constant additional RAM usage of 60-70MB on top of which Mozilla normally uses.
This may not sound like much until you realize that this is just the overhead incurred by simply having the plugin enabled. Whilst browsing a website with a relatively generous helping of ads, such as TechCrunch, Mozilla found that RAM usage by Firefox increased by over 200MB with AdBlock Plus enabled (417MB of RAM usage with the plugin, versus 194MB without).
With some more intensive websites such as the VIM Color Scheme Test, the plugin ended up consuming nearly 2GB of RAM at 1960MB; without it, just 370MB was used.
The AdBlock Plus development team recently acknowledged the issue on their blog and commented that the exceptional RAM usage was caused by a number of known bugs. One issue is that the plug-in's method of blocking adverts - by injecting stylesheets into HTML iFrame containers - incurs a gradual build-up of 4MB per iFrame. The issue is exacerbated as Firefox ends up duplicating these stylesheets for each new page loaded, eventually resulting in the immense RAM usage noted by Mozilla.
For users who have large amounts of RAM installed on their machines, such as 8GB or more, this memory consumption may not prove to be too significant. But those with devices that have far less RAM installed may see more significant slow-downs if AdBlock Plus's memory usage hits the levels that Mozilla saw in testing.
The issue has not been noted in the Internet Explorer or Google Chrome versions of AdBlock Plus.
I used ABE with FF but unfortunately I do not believe that it is current available for Chrome...unless you know differently?