Notes and resources related to v8 and thus Node.js performance.
- data types
- v8 compiler
- v8 garbage collector
- memory profiling
- performance profiling
- runtime functions
It's best to dig into the source to confirm assumptions about v8 performance first hand.
Documentation for specific v8 versions generated from the v8 source and included with the gh-pages of the v8-dox repo.
Below is a list of the documentation along with links to the code on github and the related Node.js version.
- v8 3.11.10 | code | node 0.8.26
- v8 3.14.5 | code | node 0.10.28
- v8 3.25.30 | code | node 0.11.13
The documentation includes code that contains links to related code, data types, etc. which is highly useful to explore how the pieces fit together.
In case you want to customize the documentation, checkout the gh-pages
branch of this repo, configure the doxygen
template and run npm start
which will
rebuild the documentation. I'm open to pull requests that improve on it. Requires doxygen and graphviz to be installed on your machine.
Some tests were added to confirm some of the assumptions made in the docs, you can run them as follows:
git clone https://github.com/thlorenz/v8-perf.git && cd v8-perf
npm install
npm test
- runtime functions: via the
--allow-runtime-functions
flag, i.e. see this test