Optimizations applied to SunSpider math-cordic are too fragile - by sayrer

Status : 

  By Design<br /><br />
		The product team believes this item works according to its intended design.<br /><br />
		A more detailed explanation for the resolution of this particular item may have been provided in the comments section.


ID 622386 Comments
Status Closed Workarounds
Type Bug Repros 12
Opened 11/16/2010 3:41:07 PM
Access Restriction Public

Description

Performance on the SunSpider math-cordic benchmark is very fast, presumably due to some sort of dead code analysis. However, the analysis seems very fragile or narrow. Simple transformations of the benchmark code seem to prevent the analysis from being applied.

Here are two slight changes to the math-cordic code that seem to defeat the analysis in question:
http://people.mozilla.com/~sayrer/2010/sunspider/diff1.html
http://people.mozilla.com/~sayrer/2010/sunspider/diff2.html

A performance test with those two changes, in addition to the original math-cordic file, is here:
http://people.mozilla.com/~sayrer/2010/sunspider/math-cordic-variations/driver.html

What sorts of code does the analysis work on, other than the exact function included in SunSpider?
Sign in to post a comment.
Posted by Microsoft on 11/21/2010 at 4:56 AM
Thank you for your feedback on the behavior of JavaScript optimization in Platform Preview 6. This post <http://blogs.msdn.com/b/ie/archive/2010/11/17/html5-and-real-world-site-performance-seventh-ie9-platform-preview-available-for-developers.aspx> on the IE Engineering blog summarizes what the Chakra script engine does with respect to dead code elimination. We’ll make additional improvements and refinements in optimization of compiled script code and execution as we continue to develop IE9.


Best regards,

The Internet Explorer Team