With the release of build 9926 of Windows 10, I have had some time to get to know the new build. One of the things discussed at the Windows 10 event in Redmond was an update to the browser, codenamed Project Spartan, which is a new fork of Microsoft’s browser. There will be a lot of features coming to Spartan, such as the ability to annotate web pages with digital ink or keyboard text input, a new reading experience, and Cortana integration. It will be available on all Windows 10 devices – PCs, tablets, phones, and even Xbox. Internet Explorer has never been on the fast update cycle that other browsers are on – namely Google’s Chome browser and Mozilla’s Firefox.

As a brief history, there are of course several major browsers and many smaller ones. WebKit has become one of the dominant rendering (also called layout) engines, and powers Apple’s Safari browser on both OS X and iOS. Chrome used to be based on WebKit, but in 2013, Google forked WebCore from the WebKit project and created Blink, which is also now used by the Opera browser. Firefox has their own rendering engine, called Gecko, and Internet Explorer has used a closed source rendering engine called Trident since version 4.0.

In addition to the rendering engine, each browser also has an ECMA Script engine for executing JavaScript. JavaScript has become very important on the web, so JavaScript performance of the engine is important for how fast web pages feel. Safari’s engine is branded as Nitro, Chrome has V8, Firefox has SpiderMonkey, and Internet Explorer uses Chakra. This means that even though Chrome and Safari were both based on Webkit, performance can be very different because of the different script engines in each browser.

Previous to Internet Explorer 9, IE used a script interpreter for JavaScript, which was fine back when the web was mostly static content, but not good enough with the move to dynamic webpages. Chakra was created for IE9, and it gave a large jump in performance for IE 9 over IE 8. It was certainly an improvement, but quickly fell behind in terms of performance against the other competitors. IE 10, and IE 11, both improved somewhat over the competition, but still the performance of Javascript was poor.

With Windows 10, Microsoft is finally talking about performance again, but also compatibility. For legacy sites, Spartan can load the IE 11 engine as needed, but most of the time they will be able to avoid the legacy code and use a much leaner, faster engine, along with a revamped Javascript engine which offers much greater performance.

Spartan will not be Internet Explorer. This will be a completely new browser, with a new name. Spartan will however be able to load the IE 11 engine if and when needed to maintain compatibility with older sites. For enterprises which still rely on older technologies such as ActiveX controls and Browser Helper Objects, Internet Explorer will still be available in Windows 10 for those use cases, however it will have the same dual rendering engine as Spartan, allowing modern sites to be rendered with the new rendering engine, and older sites to be rendered with IE 11.

For the Windows 10 build 9926 which was released on January 23rd, Spartan is not yet available, and will show up at a later date. However Internet Explorer does have the new Edge document mode. A small number of testers will have this mode enabled by default, and anyone who wants to test against it can manually enable it by going to about:flags in the address bar. Switch Enable Experimental Web Platform Features to Enabled, and you will be using the latest rendering engine. This is still pre-release software, so enable at your own risk of course. Also in the experimental features is the ability to set a custom user agent string, and Microsoft has continued the successful strategy that they brought forward in Windows Phone 8.1 Update 1 of having a user agent string say that it is not Internet Explorer to avoid old IE-only content.

The performance increase of the new Javascript engine is massive, and brings Internet Explorer basically up to par with Google Chome for Javascript performance. WebGL still has some work to be done, and at the moment, the only HTML5 features that have been added is WebM support Update: WebM is not supported, but it registers as available on my install of Windows 10. Let’s take a look at the numbers.

Browser Performance - Core i7-860
Benchmark IE Old IE Experimental Chrome 40 Firefox 35 Percentage Change
Sunspider (lower is better) 149.7ms 144.6ms 260.9ms 220.1ms 3.4%
Octane 2.0 (higher is better) 9861 17928 17474 16508 81.8%
Kraken 1.1 (lower is better) 3781.2ms 2077.5ms 1992.8ms 1760.4ms 45.1%
WebXPRT (higher is better) 913 1083 1251 1345 18.6%
Oort Online (higher is better) 1990 2170 5370 3900 9%
HTML5Test (higher is better) 339 344 511 449 1.5%

IE was well optimized for Sunspider already, so there is not much of a change there. Google Octane 2.0 however has always been terrible in IE, and now it comes in roughly the same as Chrome, for a massive 81.8% increase over the old rendering engine. Kraken continues this with a 45% jump in performance. It is a big change, and a welcome one too.

Spartan should have good performance when it is eventually previewed, and hopefully the standards support will increase as well. Since it will be updated through the Windows Store, the old way of updating Internet Explorer with new Operating System releases should also disappear, allowing Microsoft to ramp up the updates to the new browser. It has taken a long time, but it seems that Redmond is finally focusing on performance and standards for a new web. For those that want to read up on more of the changes, check out the MSDN IE Blog for more information.

Comments Locked

49 Comments

View All Comments

  • tuxRoller - Sunday, January 25, 2015 - link

    http://arewefastyet.com/#machine=29

    Your relative performance values don't line up with their bot.
  • tuxRoller - Sunday, January 25, 2015 - link

    Ignore.
    I misread the chart.
  • Chalabala - Sunday, January 25, 2015 - link

    Shouldn't the Kraken score be a 45% decrease in performance instead of a jump?
  • madmilk - Sunday, January 25, 2015 - link

    That's actually an 82% increase on performance (where performance is defined as the amount of work done per unit of time). Kraken does a fixed amount of work and reports the time it took to complete. Therefore lower scores represent higher performance.
  • BlueScreenJunky - Sunday, January 25, 2015 - link

    I *think* some benchmarks uses a score (higher is better) while others uses time to complete (where lower is better), which is very confusing when you have no information about that and they're all in the same table.
  • althaz - Sunday, January 25, 2015 - link

    If it helps, all of those performance changes are improvements.
  • deV14nt - Sunday, January 25, 2015 - link

    Good. Plenty of other people have noticed the problems with the charts as well. It should be broken into 2 tables: "higher is better" and "lower is better."

    As it stands, to compare IE Exp to Chrome, which is right next to it, you have to go over to "Percentage Change" and assume that means "Improvement", which it has to for the chart to not be a complete clusterf...then compare IE to IE Exp using that percentage to determine direction for that row, then finally compare IE Exp to Chrome. Just repeat that 5 more times and you're good. And remember to keep track of who won each time so you can get an overall impression at the end.

    It's easy if you just peruse the chart (using the real definition of peruse)
  • B3an - Sunday, January 25, 2015 - link

    It should be made clear in the article:

    SunSpider: Lower is better.
    Kraken: Lower is better.
  • B3an - Sunday, January 25, 2015 - link

    And all other tests: Higher is better.
  • Gothmoth - Sunday, January 25, 2015 - link

    everone with 3 brain cells should get that without additional infos.....

Log in

Don't have an account? Sign up now