Home arrow JavaScript arrow Microsoft Adjusting Chakra for IE 10

Microsoft Adjusting Chakra for IE 10

No, the software giant isn't embracing new-age practices for the next version of its browser. Microsoft's new JavaScript engine, dubbed Chakra, was introduced in Internet Explorer 9. It will be updated for IE 10. Let's take a look at what's coming.

Author Info:
By: Terri Wells
Rating: 4 stars4 stars4 stars4 stars4 stars / 5
June 18, 2012

print this article

No, the software giant isn't embracing new-age practices for the next version of its browser. Microsoft's new JavaScript engine, dubbed Chakra, was introduced in Internet Explorer 9. It will be updated for IE 10. Let's take a look at what's coming.

According to Mary Jo Foley, writing for ZDNet, “Chakra is still alive and well in IE10, and will be part of the one HTML5 browsing engine that will power both the Metro-Style and Desktop in Windows 8 and Windows RT.” Since any web browser's JavaScript engine strongly impacts its performance, it behooves developers to know what's changing in the next version.

In its blog post on the subject, Microsoft describes the increasing performance burden borne by web browsers since the early days of the Internet. With the change from static content in the early days to the kind of interactivity that AJAX enabled, many applications to be run in web browsers grew very large and complicated – to the point of making “even sophisticated games on the Web possible” such as Angry Birds, Microsoft noted.
Chakra operates on the assumption that it will be functioning on hardware with at least two cores. A browser that can tap into multi-core machines, so Microsoft believes, will deliver better performance when serving HTML5 apps. Chakra uses the second core to compile JavaScript down to native machine code. Doing this helps to speed up the browser.

Microsoft has apparently thrown itself behind HTML5 in a big way. Apparently, the software giant took its cue from the immense popularity of HTML5 games and simulations. But optimizing a JavaScript web browser engine for these games is much more complicated than optimizing it to load static web pages fast. “HTML5 games often depend on fast canvas rendering, JavaScript execution and efficient garbage collection,” the company explained, noting that “browser performance is a complex problem, which requires taking into account the needs of a broad spectrum of diverse applications.”

So Microsoft spent the past year or more updating Chakra for these JavaScript-intensive apps. They started by updating Chakra's JIT (just-in-time) compiler so that it can support two additional processor architectures: x64 and ARM. Tablet users may really appreciate this tweak.

The next move for Microsoft's Chakra-adjusting team involved a change in “the fundamental approach to generating machine code.” Microsoft analyzed a number of popular JavaScript games to learn which performance improvements would have the most significant impact on users, and focused on these areas. As one example, the software giant dramatically improved Chakra's ability to handle floating point math, commonly found in JavaScript games. “Experiments show that in IE10 floating point operations execute about 50% faster than in IE9,” the company noted.

Remember Microsoft's statement above about HTML5 games requiring efficient garbage collection? The company improved that aspect of Chakra as well:   “Chakra now delays the garbage collection at the end of script execution and requests a callback from the browser after an interval of script inactivity,” it reported in its post. While this upgrade can smooth out animated games, it also means that your browser uses less memory when you're not actively doing things with one or more of its tabs.

In theory, all of these tweaks should make IE10 more nimble, capable, and less of a memory hog than IE9. Given Chakra's assumptions about the system on which its running, however, its performance will depend on the capability of the hardware backing it up. “Hopefully, next-generation PCs and laptops will have more capable processors that will take advantage of these Chakra enhancements,” Foley reflected. If not, playing browser games and using certain website interactivity features on IE10 could still be slow going. 

DISCLAIMER: The content provided in this article is not warranted or guaranteed by Developer Shed, Inc. The content provided is intended for entertainment and/or educational purposes in order to introduce to the reader key ideas, concepts, and/or product reviews. As such it is incumbent upon the reader to employ real-world tactics for security and implementation of best practices. We are not liable for any negative consequences that may result from implementing any information covered in our articles or tutorials. If this is a hardware review, it is not recommended to open and/or modify your hardware.

All JavaScript Tutorials
More By Terri Wells

blog comments powered by Disqus

- Project Nashorn to Make Java, JavaScript Wor...
- JavaScript Virus Attacks Tumblr Blogs
- Google Releases Stable Dart Version, JavaScr...
- Khan Academy Unveils New JavaScript Learning...
- Accessing Nitro? There`s an App for That
- JQuery 2.0 Leaving Older IE Versions Behind
- Fastest JavaScript Engine Might Surprise You
- Microsoft Adjusting Chakra for IE 10
- Brendan Eich: We Don`t Need Google Native Cl...
- An Overview of JavaScript Statements
- An Overview of JavaScript Operators
- Overview of JavaScript Variables
- More of the Top jQuery Social Plugins
- The Top jQuery Social Plugins
- More of the Top jQuery Slider Plugins

Watch our Tech Videos 
Dev Articles Forums 
 RSS  Articles
 RSS  Forums
 RSS  All Feeds
Write For Us 
Weekly Newsletter
Developer Updates  
Free Website Content 
Contact Us 
Site Map 
Privacy Policy 

Developer Shed Affiliates


© 2003-2019 by Developer Shed. All rights reserved. DS Cluster - Follow our Sitemap
Popular Web Development Topics
All Web Development Tutorials