Dat moet veel beter kunnen, denkt de ervaren Firefox-ontwikkelaar Nicholas Nethercote. Want hoewel Adblock Plus (ABP) met gemiddeld 19,2 miljoen dagelijkse gebruikers de nummer één extensie is, schort er onder de motorkap nog genoeg aan. Hij ontdekte dat ABP de hoeveelheid geheugen die wordt gebruikt door Firefox flink kan verhogen.

Extra overhead

Nethercote omschrijft een extra overhead van 4 MiB per iframe. Dit naast de standaard overhead van 60 tot 60 MiB bij het gewoonweg activeren van Adblok Plus in de browser. Maar bij het laden van Firefox-pagina "injecteert ABP een gigantische stylesheet in elke iframe", aldus de Firefox-ontwikkelaar. Omdat veel webpagina's meerdere iframes hebben, kan het geheugengebruik snel oplopen.

Hij geeft als voorbeeld de website TechCrunch. Zonder ABP gebruikt Firefox ongeveer 194 MiB aan fysiek geheugen. "Met ABP wordt dat aantal meer dan verdubbeld, naar 417 MiB. Dit ondanks het feit dat ABP voorkomt dat sommige paginaelementen (advertenties!) worden geladen", schrijft hij.

Een extremer voorbeeld is deze testpagina met ruim 400 iframes. Zonder ABP gebruikt Firefox ongeveer 370 MiB, met reclameblokker 1960 MiB, wat voor traag laden zorgt.

Oplossing in de maak

De Firefox-ontwikkelaar, zelf een content gebruiker van Adblock Plus, hoopt dat de makers van ABP iets kunnen doen aan deze overhead. Zeker gebruikers met tragere machines zonder veel geheugen zouden daar baat bij hebben.

De makers van Adblock Plus schrijven in een reactie dat zij vanzelfsprekend werken aan onnodig geheugengebruik van hun add-on. "Maar er is weinig potentie daarbij omdat we vastzitten aan JavaScript-objecten. Daarom willen we graag een eigen manier van dataopslag implementeren, een project dat hopelijk snel voltooid is. Die aanpak moet ook de prestaties op de lange termijn verbeter, al is het nog duidelijk hoe goed de nieuwe code zal presteren." Op deze pagina is dat Typed Objects-project te volgen.