Skip to content

Commit

Permalink
benchmark: cleanup after forced optimization drop
Browse files Browse the repository at this point in the history
This removes all instances of %OptimizeFunctionOnNextCall from common.js
and README.md

PR-URL: #9615
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
  • Loading branch information
bzoz committed Mar 6, 2017
1 parent ca86aa5 commit 75cdc89
Show file tree
Hide file tree
Showing 2 changed files with 0 additions and 23 deletions.
9 changes: 0 additions & 9 deletions benchmark/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -235,12 +235,3 @@ it returns to accomplish what they need. This function reports timing
data to the parent process (usually created by running `compare.js`, `run.js` or
`scatter.js`).

### v8ForceOptimization(method[, ...args])

Force V8 to mark the `method` for optimization with the native function
`%OptimizeFunctionOnNextCall()` and return the optimization status
after that.

It can be used to prevent the benchmark from getting disrupted by the optimizer
kicking in halfway through. However, this could result in a less effective
optimization. In general, only use it if you know what it actually does.
14 changes: 0 additions & 14 deletions benchmark/common.js
Original file line number Diff line number Diff line change
Expand Up @@ -229,17 +229,3 @@ Benchmark.prototype.report = function(rate, elapsed) {
type: 'report'
});
};

exports.v8ForceOptimization = function(method) {
if (typeof method !== 'function')
return;

const v8 = require('v8');
v8.setFlagsFromString('--allow_natives_syntax');

const args = Array.prototype.slice.call(arguments, 1);
method.apply(null, args);
eval('%OptimizeFunctionOnNextCall(method)');
method.apply(null, args);
return eval('%GetOptimizationStatus(method)');
};

0 comments on commit 75cdc89

Please sign in to comment.