Browsers, Web Rendering Engines And Test Setup
The Internet is an ever changing congruous mass of standards, design, and interoperability challenges. Keeping on top of it all can be a daunting task. It's a delicate balance between features, security and performance. If you're considering swapping out your web browser for something new and fresh, but are uncertain over the real world performance differences, this article should help with lots of insight.
Features are not something that can be easily compared, and will be up to you to decide what you want in a browser. As for security, that is in a constant state of flux, and issuing metrics of flaws discovered vs. fixed, paints a very distorted view of what's trule "better" between the various releases. Which leaves us with performance. There are a number of standard metrics we can throw at each browser, as well as a number of standards-based compliance tests, and it's these that we'll be focusing on.Chrome, Firefox, Opera, and Microsoft's latest browser that comes with Windows 10, Edge (formally project Spartan).
Safari is not included in these results since Apple discontinued its support for Windows back in 2012 and our focus is on Windows-based machines in this article.
The wild-cards are newcomer Vivaldi, the spin-off from Opera started by former Opera CEO, Mr. Tetzchner; and finally, Firefox Developer. The inclusion of Firefox Developer is to coincide with the major overhaul that is taking place over at Mozilla, effectively rebuilding the core from the ground up to become multi-process capable with it's new electrolysis or e10s update.
The Web Engines
It's worth pointing out some of the similarities that are likely to crop up in the results, as well as explanations in the differences. Although each browser has its own catchy name, some of them share the same web engine.
WebKit may be a familiar name, but there is only one notable desktop browser that employs it as its core, Safari. However, WebKit is the base for pretty much all mobile versions of browsers (even Firefox on iOS). Chromium (the open-source browser that Chrome is built on) and Opera, both use a fork of WebKit called Blink.
What's interesting is that Opera switched over to WebKit/Blink in 2013, after years of using Presto exclusively. This caused a rift in the community, as a lot of the features that users were fond of, were removed due to compatibility issues with WebKit. Further management issues led to the closure of the MyOpera community, which in turn led to the creation of Vivaldi by Opera's former CEO, Jon Stephenson von Tetzchner.
Vivaldi was created to re-introduce many of the features that were removed from Opera during the transition to Blink. Vivaldi doesn't use Presto either, but continues to use Blink as well, working with the engine to bring back the features, instead of dropping them completely. It's focus is on power-users, with customization at its core, as well as usability tweaks, such as easy access buttons to common features, bookmarks with user descriptions, and even saving comments for specific web pages.
Firefox, after all these years, still makes use of Gecko, the engine originally developed by Netscape. Obviously, it's been updated a fair bit over the years, but it remains the core of Mozilla's software, including Seamonkey and Thunderbird.
How We Tested And Our Test Platform
Our test machine is a modern generation Intel NUC5i5RYK, which houses a Broadwell based i5-5250U CPU with an HD 6000 IGP, 16GB of DDR3L-1600 RAM, and a 240GB M.2 SATA SSD, all running the latest Microsoft OS, Windows 10. The NUC is a dual-core system and reflects a very 'average' PC, not too dissimilar from a lot of laptops and low-end business machines.
Each browser is loaded up with 6 tabs (one for each benchmark), and each test is run sequentially. After all tests are completed and results gathered, the system is rebooted, left to sit idle for a few minutes, then the next browser tested.
In the background, Performance Monitor is recording CPU usage and total memory commit, measured at 1-second intervals. This is to provide some metrics regarding system resource consumption. It should be noted that this is not an entirely fair metric, as there are issues of scaling, as well as user preference to plugins, extensions and websites visited. However, it should give you a general idea of what's going on under the hood, regardless.