Microsoft Edge Gains SIMD Support, Dolby Audio, And More
by Brett Howse on May 26, 2015 2:50 PM EST- Posted in
- Software
- Browsers
- Microsoft Edge
Microsoft is pushing their new Edge browser (formerly Project Spartan) as the replacement for Internet Explorer 11. Back on May 5th, Microsoft opened up the Microsoft Edge Dev Blog and ever since then they have been bringing to light a lot of the changes that are coming with Edge. One of the first posts was detailing what has been changed with Edge as compared to Internet Explorer 11.
Edge is not a completely new browser. Internet Explorer was based on the Trident web rendering engine, and the Chakra ECMAscript engine, and these continue to be the basis of Edge as well. However Edge will not have any of the legacy compatibility requirements of Internet Explorer, which has allowed the company to strip out a lot of unnecessary code. According to Microsoft, over 220,000 lines of code have been removed to strip out the features that are no longer part of the modern web. This includes things like ActiveX extensions, Browser Helper Objects, IE Document Modes, Vector Markup Language, VBScript, and more. For a full listing, check out their blog post here. They obviously did not just stop at removing old code though, and over 300,000 new lines of code have been added for 49 new features and over 4000 interoperability fixes.
Microsoft is pushing Edge as a standards compliant browser, and they have quite a bit of work to do in this regard since Internet Explorer, even at the latest version 11, did not support a lot of the standards that were upcoming. This is always a moving target, and in the past browser upgrades were slow to happen if they happened at all. IE seemed stuck out of sync with the rest of the browsers. The company seems to want to avoid that going forward, and one of the ways this will happen is that Edge can now be updated through the Windows Store, which should allow them to quickly and easily roll out updates and fixes. One thing they want to avoid if possible is vendor prefixes for experimental APIs. They will still have to support some, since they are in use on many pages, but going forward they want to eliminate any new MS prefixes if they can, and instead will be offering experimental API support through feature flags.
Chakra is the browser’s scripting engine, and it is getting a lot of updates as well. One of the most requested is the addition of Asm.js to the browser. Asm.js is a sublanguage which allows sandboxed execution of memory-unsafe languages. Toolchains are available to convert C/C++ code into Asm.js, and technologies which leverage this are things like WebGL and gaming engines like Unity and Unreal. These new features will also bring Single Instruction Multiple Data (SIMD) support to Chakra, and Microsoft got assistance with this work from Intel, so it will likely leverage Intel’s SSE extensions. Using the SIMD Mandebrot demo, Edge with SIMD support performs 200-300% faster than Edge without the support enabled, so there is a lot of performance potential here. Intel has also helped reduce navigation time and has helped reduce DOM parse times. SIMD support is something that Intel is also bringing to other browsers, but the main point is that Edge will have it as well, which should promote the use of these kinds of features on the web as a whole.
Back in January I was able to run the new Edge browser code (in IE 11 at the time) through its paces and it really was a large leap forward in performance. On May 20th, Microsoft revealed some of the changes they have made to Chakra to make such large gains. ECMAscript leverages Just-in-Time (JIT) code compliation, which means that the script is compiled into code on the fly, rather than ahead of time (AoT) compilation. Enhancements have been made to Chakra’s ability to move external functions into the running code (function inlining) and especially when the code is defined across JavaScript files. This helps reduce the overhead of function calls, which force the system to push relevant data to the stack, and bring it all back when the function returns. All browsers do this in one way or another, but IE 11 was not efficient at doing this across different script files, so Edge has a big edge here (pun intended). Performance improvements were also brought with some of the changes in ECMAScript 2015, which is the latest iteration the scripting language. It brings about a new data type of a constant value, which was not available in prior versions of the language. Chakra’s JIT compiler will now optimize existing code to identify non-constant variable declarations defined globally, but do not change, and therefore they can be identified as constants to reduce the overhead of lookups. Another big change is a how Arrays are handled, and here Chakra in Edge is up to five times faster than IE 11.
A new feature that is currently unique to Edge is the ability to support Multi-Channel audio through Dolby Audio. Edge will support Dolby Digital Plus and is supported with current DASH (MP4) and HLS (M2TS) file formats. This means that there will be support for both progressive download content and adaptive streaming content. Dolby has a Dolby Audio Experience demo which leverages WebGL if you want to try this out for yourself.
These are just some of the changes coming to Edge. After years of trailing the browser pack, it certainly seems like Microsoft has stepped up their game. Performance is much better in Edge than their outgoing browser, and it is picking up standards support much earlier. Edge already supports 81% of the ECMAscript 2015 features, which leads all other desktop browsers for the moment. HTML 5 standards support is also much improved. Browsers are one of the most important tools we have on any device, and it looks like Windows 10 is going to bring its best forward. I can't say I love the icon, but that can always be changed.
Source: Microsoft Edge Dev Blog
29 Comments
View All Comments
lilmoe - Tuesday, May 26, 2015 - link
get over the icon people... it ain't gonna change.Flunk - Tuesday, May 26, 2015 - link
Sure it will, with every new version.sandwich_hlp - Thursday, May 28, 2015 - link
Actually, it's a good thing that the icon closely resembles the IE icon if they want laypeople to use Edge instead of IE.eanazag - Tuesday, May 26, 2015 - link
Removing ActiveX, VBScript, and Browser Helper Objects, wow. (Clapping). There are malware writers over the world shaking their fists at Microsoft and wondering how much money they're going to lose over this.MS needs to make this browser available to Win 7 and Win 8 users who don't upgrade from a security standpoint. At least Win 8.
SpartanJet - Tuesday, May 26, 2015 - link
Why when any legal user can simply upgrade to Windows 10, which is what they want and why they are giving it away for free.Brett Howse - Tuesday, May 26, 2015 - link
Yes they have been very clear with their intentions and this is not coming to any build prior to Windows 10.hughlle - Tuesday, May 26, 2015 - link
A company making a feature version specific to promote upgrade? How utterly abhorrent.Maybe they should also offer win 8 users the new start menu as well..
Brett Howse - Tuesday, May 26, 2015 - link
I believe they have with the free upgrade to 10 :)close - Wednesday, May 27, 2015 - link
@hughlle, I'm not sure if that was sarcasm or you were being serious but when you have reasons directly tied to technology then it's absolutely understandable that some thing are limited to specific versions of OSes. Also this might be a core component of the OS. Supporting it on other platforms may not be feasible.How far back should software be supported in order for it to not be considered bad practice? And which features MUST be back-ported every time for this purpose? This isn't an updated IE it's a completely new piece of software, there's no reason to expect it to be available on OSes that are 5-6 years old.
If every single feature of every software out there were back ported to older versions then why would you ever buy the new one? They'll move to the subscription model which fits this perfectly and then people will complain that they have to pay constantly for new features.
Gigaplex - Wednesday, May 27, 2015 - link
Not every legal user, no. There is plenty of hardware out there that won't work properly on Windows 10. As an example, there are AMD graphics cards that have a Windows 8 driver that refuses to run on 8.1, and AMD never released an updated driver as the cards were EOL'd.