TurboFan For Enhanced JavaScript Performance
TurboFan For Enhanced JavaScript Performance
Written by Alex Armstrong   
Thursday, 16 July 2015

TurboFan is Google's latest new optimizing, just-in-time, compiler for speeding up JavaScript execution  in Chrome.

It first appeared in Chromium almost a year ago and it has been shipping as a component of the V8 JavaScript engine since Chrome 41. 

As Ben Tizer explained in a blog post TurboFan outperforms Crankshaft and copes better with:

 some types of code that were challenging for our previous compiler to optimize, such as asm.js, class literals, with scopes, computed property names and for-of loops.

In a more technical blog post Tizer explains:

"The TurboFan JIT implements more aggressive optimizations than CrankShaft through a number of advanced techniques. JavaScript enters the compiler pipeline in a mostly unoptimized form and is translated and optimized to progressively lower forms until machine code is generated. The centerpiece of the design is a more relaxed sea-of-nodes internal representation (IR) of the code which allows more effective reordering and optimization."

 

turbo

"An optimization engine applies these local rules in a systematic and thorough way. Transitioning out of the graphical representation involves an innovative scheduling algorithm that makes use of the reordering freedom to move code out of loops and into less frequently executed paths. Finally, architecture-specific optimizations like complex instruction selection exploit features of each target platform for the best quality code."

Having turned it on selectively Google has already seen some positive results, including a 29 per cent increase in the zlib compression score of its Octane benchmark suite.

 

tfaninc

 

Tizer concludes his post saying:

Over the coming months, we expect to enable TurboFan for more and more types of JavaScript, with the eventual goal of entirely replacing our existing CrankShaft compiler. As it rolls out, developers' code will automatically get these free speedups with no changes needed. Stay tuned for future progress. 

 

chromedevs

  

Banner


IntelliJ Beefs Up Java 9 Support
01/08/2017

JetBrains Intellij IDEA has been updated with new features and better support for Java 9, including for Jigsaw, the element that makes Java 9 modular.



SharePoint Unite Early Bird Offer
22/08/2017

Delegates registering for SharePoint Unite in Haarlem, Holland this October can get  €100 off by registering before September 8th, as well as a 20% discount with an exclusive I Programmer  [ ... ]


More News

 

 
 

 

blog comments powered by Disqus

Last Updated ( Thursday, 16 July 2015 )
 
 

   
Banner
RSS feed of news items only
I Programmer News
Copyright © 2017 i-programmer.info. All Rights Reserved.
Joomla! is Free Software released under the GNU/GPL License.