Der Bericht ist nicht ganz korrekt. Erst mal führt IE keine Dead Code Elimination durch. Das bedeutet nur, dass Code gelöscht wird, der nie ausgeführt wird, also unnötig ist.
Microsoft hat dagegen versucht den Code abzuändern, sodass er von außen betrachtet das selbe tut, aber schneller läuft. So weit, so sinnvoll.
Der Haken an der Sache ist, dass sie das bisher nur für Additionen getan haben und die wesentlich teureren Operationen Multiplikation und Division außer acht gelassen haben. An der betroffenen Stelle in Sunspider wird nur addiert.
Weiter funktioniert die Optimierung nur mit diesem speziellen Codefragment, wie an
anderer Stelle aufgezeigt wurde:
He made two variations of the test little bits of codes to the original – one by adding a “true” and another by adding a “return”. As these “true” and “return” in this context does not do anything there should be minimal impact. The result though is startling – Internet Explorer 9 took around 20 times longer with the two new tests compared with the original. While the original took only 1ms in my laptop, the other two took around 20ms each.
Deren Optimierung funktioniert nur im Benchmark! Ändert man eine Kleinigkeit, wird der Code nicht mehr erkannt und vollständig ausgeführt. Keine Seite wird dadurch schneller, es sei denn es würde in einer Schleife tausendfach sinnlos addiert - jedenfalls theoretisch, es ist nicht gesagt, ob die Optimierung auch außerhalb von Sunspider funktioniert.
Und nein, sie haben keinen "Bug" ausgenutzt. Es gibt keinen Bug in Sunspider. Microsoft sagt einfach nur, dass in einem Test die Ergebnisse der Berechnungen nicht benötigt werden, man sie also nicht durchführen muss. Dabei ist der Sinn des Berechnungen doch gerade, die benötigte Zeit zu messen!
Und mal wirklich, das soll deren Argumentation sein? "Wir sind keine Cheater, nur Buguser! Ist doch alles cool oder?"
Wie schnell der IE9 wirklich ist sieht man übrigens an anderer Stelle: In Googles V8 ist er weiter mit Abstand der langsamste:
http://www.pcwelt.de/news/Browser-IE-9-PP-7-gegen-den-Rest-im-Benchmark-Test-1387317.html
PS: Eine Aktuelle Firefox-Nightly ist in V8 übrigens in etwa so schnell wie Opera 11 dort. Wird wirklich Zeit, dass die mal Beta 8 fertig kriegen, das ist ja zum heulen, wie ständig lediglich Firefox mit veralteten Versionen getestet wird.
Hier noch der
Originalartikel bei Mozilla.
dMopp schrieb:
Ich finde es echt schade, Mozilla tut glatt so als würden sie nichtmal Geld für Lizenzen haben...
Mozilla zahlt aus Prinzip keine Lizenzgebühren, nicht, weil sie es sich nicht leisten könnten. Mit Vorbis gibt es schon längst ein offenes Dateiformat, dass MP3 überlegen ist und sich vor AAC nicht verstecken muss.
Für die Entwicklung von Theora hat Mozilla einiges an Geld gestiftet, wobei sich hier eher WebM durchsetzen wird (solange die MPEG-LA nicht mal wirklich den Arsch hochkriegt und ein paar Leute verklagt).