uBlock Origin performance improvements thanks to WASM (Firefox only, for now)
The most recent version of the content blocking extension uBlock Origin uses WebAssembly (WASM) code to improve the performance of the extension.
The new uBlock Origin 1.17.4 is already available on the GitHub project website and Google and Mozilla web stores for extensions.
The new versions get pushed out to users in a rolled released which means that you may not get it immediately. Chrome and Firefox users may enforce the update. Chrome users may want to read how to update Chrome extensions manually for information on how that is done, Firefox users may check this guide instead.
Raymond Hill (gorhill) notes that the new code is only active in the Firefox extension and not in the extension for Google Chrome. The reason for that is that Google Chrome does not allow wasm "without adding 'unsafe-eval' to the extension's own Content Security Policy in its manifest" which Raymond considers unsafe for use).
Firefox users who run the latest version of the extension already can run a benchmark to find out how well it performs in comparison to the algorithm that does not use WASM.
Open the benchmark in the browser and select Lookup to find out how well it performs. Compare the last two lines for that. The example above shows that the WASM version runs about a 1000 operations per second more than the previous version of the algorithm.
Gorhill plans to introduce WebAssembly versions of "key portions of code" if it is of benefit to the extension. Expect uBlock Origin to perform better in browsers that support it; whether the performance gains are large enough to be noticeable by users remains to be seen but they could certainly make the difference in some scenarios.
You can find out more about WebAssembly on the official project website. It is supported by Firefox, Chrome, Safari and Microsoft Edge (and browsers based on code of those four). The code that uBlock Origin uses is available here.
Now You: Which content blocker do you use, and why?Advertisement