What does running Node.JS with node --nocrankshaft
actually do? Is there any documentation on these types of v8 settings options in node?
This disables the Crankshaft compiler.
...By using aggressive optimizations, Crankshaft dramatically improves the performance of compute-intensive JavaScript applications - often by more than a factor of two!...
Have a look at: A New Crankshaft for V8
For more details: a closer look at crankshaft, v8's optimizing compiler
Is there any documentation on these types of v8 settings options in node?
The --v8-options
flag can list all the settings related to V8:
$ nodejs --v8-options
Options:
--use_strict (enforce strict mode)
type: bool default: false
--es5_readonly (activate correct semantics for inheriting readonliness)
type: bool default: true
--es52_globals (activate new semantics for global var declarations)
type: bool default: true
...
The list contains all the flags related to V8, a short description of what each flag does, type information and default value.
The list is also available online here: https://github.com/joyent/node/blob/master/doc/node.1. Most of the parameters of this list correspond to V8 flags.