Browser efficiency comparison - Webdriver

Windows 10 Anniversary Update

Methodology summary

The Microsoft Windows team measured the average power consumption of the CPU, GPU, and Wifi antenna while Microsoft Edge, Chrome, Firefox, and Opera ran a complex yet representative set of user activities.

These tests were done on three Surface Books running Windows 10 Anniversary Update (build 14393.105) and connected to the Internet through Wifi. Actual power consumption of the CPU, GPU, and Wifi antenna were measured using onboard Maxim chips, and read through Performance Monitor (Perfmon).

Results summary

The CPU, GPU, and Wifi antenna all used more power on the same workload when it was run using Chrome, Firefox, and Opera, when compared to Microsoft Edge, running on Windows 10 Anniversary Update (14393.105). Microsoft Edge used:

Edge, Chrome, and Opera had a lower mean power consumption when comparing the Anniversary Update (1607) to the previous release (1511) whereas Firefox had virtually no change. In the following graph, we also show Microsoft Edge (1511), Chrome 51, Opera 38, and Firefox 46 running on Windows 10 (1511). Those results are from our previous analysis. Here, we see the improvements made between the updated OS and the updated browsers since then.

Methodology details

Computer setup

The test was performed on 3 separate Surface Book laptops running Windows 10 Anniversary Update (14393.105 release). These computers were configured to the following settings, to increase consistency between measures and reduce tasks that may start during the measurement and interfere with the results, while still representing a realistic user setup:

OS and browser versions

OS Windows 10 Pro 14393.105 rs1_release
Microsoft Edge Microsoft Edge 38.14393.0.0
Chrome Google Chrome 53.0.2785.101 m (64-bit)
Firefox Firefox 47.0.1
Opera Opera 39.0.2256.71 (battery saver enabled)

Firefox was not run on the most recent version because of a known limitation in Firefox 48.

Hardware

The specifications for the Surface Books were:

Activites and automation harness

Each browser was automated using WebDriver, a cross-platform tool designed for automating web browsing, and implemented by the major browsers. While the power draw was being measured, Webdriver executed the following activities:

Note that pauses are included throughout this workload, but are not included in this description for simplicity. Each scenario (one domain in one tab) lasts about a minute before the next tab is opened, though it varies by scenario.

  1. Open the respective browser
  2. Navigate to a video on Youtube.com: "Microsoft Design: Connecting Makers"
  3. The video will autoplay and will continue in a background tab for the remainder of the test
  4. Open a new tab
  5. In the new tab, navigate to amazon.com
  6. In the search box, enter "Game of Thrones" and press enter
  7. Click on "Game of Thrones Season 1"
  8. Scroll down to the reviews
  9. Open a new tab
  10. In the new tab, navigate to Facebook.com
  11. Log in to Facebook
  12. Scroll through the feed on Facebook
  13. Open a new tab
  14. In the new tab, navigate to google.com
  15. Search for "Seattle"
  16. Open a new tab
  17. In the new tab, navigate to gmail.com
  18. Log in to Gmail
  19. Open and then close several messages in the inbox
  20. Open a new tab
  21. In the new tab, navigate to the Wikipedia article on "United States"
  22. Scroll through the article
  23. Close the browser

The code used to execute the test can be found on Github.

Measuring power

Power was measured on the Surface Book because it has integrated hardware instrumentation that's able to measure the real power consumption of the CPU, GPU and Wifi antenna while the automation is being executed. This is done using the Maxim 34407 Power Accumulator chip. The results of the Maxim chips were read using the built in Windows tool "Performance Monitor". Performance Monitor was opened and configured to measure each component independently:

It was set to measure for a max duration of 1000s, recording once per second.

For each browser and for each device, 3 iterations on TH2 and 5 iterations on RS1 were measured through the following steps:

  1. Clear measurements from Performance Monitor
  2. Start measurements in Performance Monitor
  3. Immediately execute the WebDriver automation for the browser being measured
  4. Wait for the automation to complete (steps described above)
  5. Once automation completes and the browser closes, immediately pause the measurements in Performance Monitor
  6. Record the average power consumption for each of the three instrumented components

Results details

The following results combine the data collected in the previous analysis (on 1511 with browsers that were up to date at the time) with recent results on the Anniversary Update (1607) and newer browsers. These results are in mW:

OS Avg CPU Avg GPU Avg Wifi Avg CPU+GPU+Wifi
Edge 1511 1511 1599 319 150 2068
Edge 1607 1607 1340 330 141 1811
Chrome 51 1511 1889 767 163 2819
Chrome 53 1607 1559 720 116 2395
Opera 38 1511 2381 543 152 3077
Opera 39 1607 2153 400 124 2678
Firefox 46 1511 2434 525 202 3161
Firefox 47 1607 2395 602 179 3176