benchmark: remove %OptimizeFunctionOnNextCall
Checklist
-
make -j8 test
(UNIX), orvcbuild test nosign
(Windows) passes -
commit message follows commit guidelines
Affected core subsystem(s)
benchmark
Description of change
This removes all instances of %OptimizeFunctionOnNextCall
from Node.js benchmarks. As it turns out, most bechmark benefit from its removal - they will perform better. See this table in gist.
Some of the benchmarks (buffers/buffer-swap.js
, crypto/get-chiper.js
, net/punnycode.js
, path/parse-*.js
, path/relative-*.js
and tls/convertprotocols.js
) benefit from warmup phase. Those are executed twice with only second run being measured. For other benchmarks warmup does not provide any advantage.
One benchmark that is slower is crypto/get-chiper.js
, when calling getCiphers
once. Previous version called this function once to trigger optimizations then to benchmark its performance. Results of that function are cached, so it didn’t provide valid data. This is fixed now.
Fixes: https://github.com/nodejs/node-chakracore/issues/134 cc @nodejs/benchmarking