You're looking at Less Wrong's discussion board. This includes all posts, including those that haven't been promoted to the front page yet. For more information, see About Less Wrong.

Alexandros comments on Algorithmic Progress in Six Domains - Less Wrong Discussion

24 Post author: lukeprog 03 August 2013 02:29AM

You are viewing a comment permalink. View the original post to see all comments and the full post content.

Comments (30)

You are viewing a single comment's thread.

Comment author: Alexandros 03 August 2013 05:54:33PM *  13 points [-]

An interesting statistic I came across is the performance of JavaScript engines over the last 11 years.

According to the data here, Phoenix 0.1 (first release of Firefox, September 2002), on the v8bench version 3, is 134 times slower than Chrome 21 (released end of July 2012), on the same hardware. Other benchmarks don't run on both browsers so it's hard to know how objective v8bench ver 3 is on this. See the details of the measurements on the article History of JavaScript Performance: Firefox.

Not sure of the additional speed up over the last year or so, but JS performance is interesting since 4 companies (Google, Mozilla, Apple, Microsoft) have poured money and talent at this arms race, probably the first time we've had this happen for basically-fully-compatible implementations of the same language (happy to hear if I'm wrong).

Edit: The data here imply a further 33% or so improvement for Chrome over the last year on Octane, the newest version of v8bench. (Firefox seems to have improved a massive 70%+ in the same period.).

Comment author: gwern 03 August 2013 06:01:01PM 3 points [-]

JS performance is interesting since 4 companies (Google, Mozilla, Apple, Microsoft) have poured money and talent at this arms race, probably the first time we've had this happen for basically-fully-compatible implementations of the same language (happy to hear if I'm wrong).

There used to be an awful lot of commercial C compilers before GCC killed off most of them, and even now there's still a big 3: GCC, Intel's compiler, and LLVM.

Comment author: Alexandros 03 August 2013 06:06:46PM 2 points [-]

Yes, C is the one counterexample I had in mind, but I vaguely recall compatibility issues much larger than is acceptable for JS. I might be wrong.

I remember porting code between GCC and ICC basically painlessly but not so much the details. Are the three compilers expected to run code tuned on the others with 0 complaints? How prevalent are compiler-specific settings? (I do remember needing to do inline assembly in a special way, I think).

Comment author: Alexandros 03 August 2013 06:24:12PM *  4 points [-]

Ok, got some answers. It seems GCC leads by adding non-standard features, and ICC/Clang follow to be compatible. This doesn't seem to be the case in the JS world, where the competitors seem to be on a more equal footing (though V8 has the mindshare lead, with node.js etc.). If this is enough to support the "first ever" description is I guess a matter of personal taste at this point. All in all, thanks for the counter Gwern.