Force V8 to optimize url.parse() before starting the actual benchmark. Tries to minimize variance between successive runs caused by the optimizer kicking in at different points. It does not seem to have much impact, CPU times are roughly the same before and afterwards; url.parse() quickly plateaus at a local optimum where most time is spent in V8 builtins, notably Runtime_StringSplit() and Object::GetElementWithReceiver() calls originating from deps/v8/src/uri.js, with no recurring optimize/deoptimize cycles that I could spot. Still, I don't see any downsides to pre-optimizing the function being benchmarked so in it goes. PR-URL: https://github.com/iojs/io.js/pull/132 Reviewed-By: Chris Dickinson <christopher.s.dickinson@gmail.com> Reviewed-By: Fedor Indutny <fedor@indutny.com>
io.js

This repository began as a GitHub fork of joyent/node. io.js contributions, releases, and contributorship are under an open governance model. We intend to land, with increasing regularity, releases which are compatible with the npm ecosystem that has been built to date for node.js.
Is it io.js or IO.js or iojs or IOjs or iOjS?
The official name is io.js, which should never be capitalized, especially not at the start of a sentence, unless it is being displayed in a location that is customarily all-caps (such as the title of man pages.)
To build:
Prerequisites (Unix only):
gccandg++4.8 or newer, orclangandclang++3.3 or newer- Python 2.6 or 2.7
- GNU Make 3.81 or newer
- libexecinfo (FreeBSD and OpenBSD only)
Unix/Macintosh:
./configure
make
make install
If your python binary is in a non-standard location or has a non-standard name, run the following instead:
export PYTHON=/path/to/python
$PYTHON ./configure
make
make install
Prerequisites (Windows only):
- Python 2.6 or 2.7
- Visual Studio 2013 for Windows Desktop, or
- Visual Studio Express 2013 for Windows Desktop
Windows:
vcbuild nosign
You can download pre-built binaries for various operating systems from http://nodejs.org/download/. The Windows and OS X installers will prompt you for the location in which to install. The tarballs are self-contained; you can extract them to a local directory with:
tar xzf /path/to/node-<version>-<platform>-<arch>.tar.gz
Or system-wide with:
cd /usr/local && tar --strip-components 1 -xzf \
/path/to/node-<version>-<platform>-<arch>.tar.gz
To run the tests:
Unix/Macintosh:
make test
Windows:
vcbuild test
To build the documentation:
make doc
To read the documentation:
man doc/node.1
To build Intl (ECMA-402) support:
Note: more docs, including how to reduce disk footprint, are on the wiki.
Use existing installed ICU (Unix/Macintosh only):
pkg-config --modversion icu-i18n && ./configure --with-intl=system-icu
Build ICU from source:
First: Unpack latest ICU
icu4c-##.#-src.tgz (or .zip)
as deps/icu (You'll have: deps/icu/source/...)
Unix/Macintosh:
./configure --with-intl=full-icu
Windows:
vcbuild full-icu