Skip to content
Closed
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
benchmark: refactor
  • Loading branch information
BridgeAR committed Feb 1, 2018
commit f7d9faca3595de234022d76e9f434a62469a87fa
7 changes: 4 additions & 3 deletions benchmark/async_hooks/gc-tracking.js
Original file line number Diff line number Diff line change
Expand Up @@ -22,22 +22,23 @@ function endAfterGC(n) {
}

function main({ n, method }) {
var i;
switch (method) {
case 'trackingEnabled':
bench.start();
for (let i = 0; i < n; i++) {
for (i = 0; i < n; i++) {
new AsyncResource('foobar');
}
endAfterGC(n);
break;
case 'trackingDisabled':
bench.start();
for (let i = 0; i < n; i++) {
for (i = 0; i < n; i++) {
new AsyncResource('foobar', { requireManualDestroy: true });
}
endAfterGC(n);
break;
default:
throw new Error('Unsupported method');
throw new Error(`Unsupported method "${method}"`);
}
}
7 changes: 4 additions & 3 deletions benchmark/dgram/bind-params.js
Original file line number Diff line number Diff line change
Expand Up @@ -15,18 +15,19 @@ const noop = () => {};
function main({ n, port, address }) {
port = port === 'true' ? 0 : undefined;
address = address === 'true' ? '0.0.0.0' : undefined;
var i;

if (port !== undefined && address !== undefined) {
bench.start();
for (let i = 0; i < n; i++) {
for (i = 0; i < n; i++) {
dgram.createSocket('udp4').bind(port, address)
.on('error', noop)
.unref();
}
bench.end(n);
} else if (port !== undefined) {
bench.start();
for (let i = 0; i < n; i++) {
for (i = 0; i < n; i++) {
dgram.createSocket('udp4')
.bind(port)
.on('error', noop)
Expand All @@ -35,7 +36,7 @@ function main({ n, port, address }) {
bench.end(n);
} else if (port === undefined && address === undefined) {
bench.start();
for (let i = 0; i < n; i++) {
for (i = 0; i < n; i++) {
dgram.createSocket('udp4')
.bind()
.on('error', noop)
Expand Down
11 changes: 1 addition & 10 deletions benchmark/domain/domain-fn-args.js
Original file line number Diff line number Diff line change
Expand Up @@ -28,15 +28,6 @@ function main({ n, args }) {
bench.end(n);
}

function fn(a, b, c) {
if (!a)
a = 1;

if (!b)
b = 2;

if (!c)
c = 3;

function fn(a = 1, b = 2, c = 3) {
return a + b + c;
}
4 changes: 1 addition & 3 deletions benchmark/fs/bench-realpath.js
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,8 @@ function main({ n, pathType }) {
bench.start();
if (pathType === 'relative')
relativePath(n);
else if (pathType === 'resolved')
resolvedPath(n);
else
throw new Error(`unknown "pathType": ${pathType}`);
resolvedPath(n);
}

function relativePath(n) {
Expand Down
20 changes: 3 additions & 17 deletions benchmark/fs/bench-realpathSync.js
Original file line number Diff line number Diff line change
Expand Up @@ -15,24 +15,10 @@ const bench = common.createBenchmark(main, {


function main({ n, pathType }) {
const path = pathType === 'relative' ? relative_path : resolved_path;
bench.start();
if (pathType === 'relative')
relativePath(n);
else if (pathType === 'resolved')
resolvedPath(n);
else
throw new Error(`unknown "pathType": ${pathType}`);
bench.end(n);
}

function relativePath(n) {
for (var i = 0; i < n; i++) {
fs.realpathSync(relative_path);
}
}

function resolvedPath(n) {
for (var i = 0; i < n; i++) {
fs.realpathSync(resolved_path);
fs.realpathSync(path);
}
bench.end(n);
}
7 changes: 0 additions & 7 deletions benchmark/fs/write-stream-throughput.js
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,6 @@ function main({ dur, encodingType, size }) {
try { fs.unlinkSync(filename); } catch (e) {}

var started = false;
var ending = false;
var ended = false;

var f = fs.createWriteStream(filename);
Expand All @@ -52,15 +51,9 @@ function main({ dur, encodingType, size }) {


function write() {
// don't try to write after we end, even if a 'drain' event comes.
// v0.8 streams are so sloppy!
if (ending)
return;

if (!started) {
started = true;
setTimeout(function() {
ending = true;
f.end();
}, dur * 1000);
bench.start();
Expand Down
3 changes: 1 addition & 2 deletions benchmark/misc/freelist.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ function main({ n }) {
const FreeList = require('internal/freelist');
const poolSize = 1000;
const list = new FreeList('test', poolSize, Object);
var i;
var j;
const used = [];

Expand All @@ -23,7 +22,7 @@ function main({ n }) {

bench.start();

for (i = 0; i < n; i++) {
for (var i = 0; i < n; i++) {
// Return all the items to the pool
for (j = 0; j < poolSize; j++) {
list.free(used[j]);
Expand Down
4 changes: 1 addition & 3 deletions benchmark/misc/function_call/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -32,11 +32,9 @@ const bench = common.createBenchmark(main, {
});

function main({ millions, type }) {
const n = millions * 1e6;

const fn = type === 'cxx' ? cxx : js;
bench.start();
for (var i = 0; i < n; i++) {
for (var i = 0; i < millions * 1e6; i++) {
fn();
}
bench.end(millions);
Expand Down
2 changes: 1 addition & 1 deletion benchmark/misc/object-property-bench.js
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,6 @@ function main({ millions, method }) {
runSymbol(n);
break;
default:
throw new Error('Unexpected method');
throw new Error(`Unexpected method "${method}"`);
}
}
5 changes: 2 additions & 3 deletions benchmark/misc/punycode.js
Original file line number Diff line number Diff line change
Expand Up @@ -55,9 +55,8 @@ function runPunycode(n, val) {
}

function runICU(n, val) {
var i = 0;
bench.start();
for (; i < n; i++)
for (var i = 0; i < n; i++)
usingICU(val);
bench.end(n);
}
Expand All @@ -76,6 +75,6 @@ function main({ n, val, method }) {
}
// fallthrough
default:
throw new Error('Unexpected method');
throw new Error(`Unexpected method "${method}"`);
}
}
24 changes: 11 additions & 13 deletions benchmark/module/module-loader.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,10 @@ const bench = common.createBenchmark(main, {
});

function main({ thousands, fullPath, useCache }) {
const n = thousands * 1e3;

tmpdir.refresh();
try { fs.mkdirSync(benchmarkDirectory); } catch (e) {}

for (var i = 0; i <= n; i++) {
for (var i = 0; i <= thousands * 1e3; i++) {
fs.mkdirSync(`${benchmarkDirectory}${i}`);
fs.writeFileSync(
`${benchmarkDirectory}${i}/package.json`,
Expand All @@ -31,37 +29,37 @@ function main({ thousands, fullPath, useCache }) {
}

if (fullPath === 'true')
measureFull(n, useCache === 'true');
measureFull(thousands, useCache === 'true');
else
measureDir(n, useCache === 'true');
measureDir(thousands, useCache === 'true');

tmpdir.refresh();
}

function measureFull(n, useCache) {
function measureFull(thousands, useCache) {
var i;
if (useCache) {
for (i = 0; i <= n; i++) {
for (i = 0; i <= thousands * 1e3; i++) {
require(`${benchmarkDirectory}${i}/index.js`);
}
}
bench.start();
for (i = 0; i <= n; i++) {
for (i = 0; i <= thousands * 1e3; i++) {
require(`${benchmarkDirectory}${i}/index.js`);
}
bench.end(n / 1e3);
bench.end(thousands);
}

function measureDir(n, useCache) {
function measureDir(thousands, useCache) {
var i;
if (useCache) {
for (i = 0; i <= n; i++) {
for (i = 0; i <= thousands * 1e3; i++) {
require(`${benchmarkDirectory}${i}`);
}
}
bench.start();
for (i = 0; i <= n; i++) {
for (i = 0; i <= thousands * 1e3; i++) {
require(`${benchmarkDirectory}${i}`);
}
bench.end(n / 1e3);
bench.end(thousands);
}
7 changes: 4 additions & 3 deletions benchmark/tls/convertprotocols.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,15 @@ const bench = common.createBenchmark(main, {
});

function main({ n }) {
var i = 0;
const input = ['ABC', 'XYZ123', 'FOO'];
var m = {};
// First call dominates results
if (n > 1) {
tls.convertNPNProtocols(['ABC', 'XYZ123', 'FOO'], m);
tls.convertNPNProtocols(input, m);
m = {};
}
bench.start();
for (; i < n; i++) tls.convertNPNProtocols(['ABC', 'XYZ123', 'FOO'], m);
for (var i = 0; i < n; i++)
tls.convertNPNProtocols(input, m);
bench.end(n);
}
4 changes: 1 addition & 3 deletions benchmark/util/format.js
Original file line number Diff line number Diff line change
Expand Up @@ -22,9 +22,7 @@ const bench = common.createBenchmark(main, {

function main({ n, type }) {
// For testing, if supplied with an empty type, default to string.
type = type || 'string';

const [first, second] = inputs[type];
const [first, second] = inputs[type || 'string'];

bench.start();
for (var i = 0; i < n; i++) {
Expand Down
5 changes: 2 additions & 3 deletions benchmark/util/inspect-array.js
Original file line number Diff line number Diff line change
Expand Up @@ -18,14 +18,13 @@ function main({ n, len, type }) {
var arr = Array(len);
var i, opts;

// For testing, if supplied with an empty type, default to denseArray.
type = type || 'denseArray';

switch (type) {
case 'denseArray_showHidden':
opts = { showHidden: true };
arr = arr.fill('denseArray');
break;
// For testing, if supplied with an empty type, default to denseArray.
case '':
case 'denseArray':
arr = arr.fill('denseArray');
break;
Expand Down
3 changes: 1 addition & 2 deletions benchmark/v8/get-stats.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,8 @@ const bench = common.createBenchmark(main, {
});

function main({ method, n }) {
var i = 0;
bench.start();
for (; i < n; i++)
for (var i = 0; i < n; i++)
v8[method]();
bench.end(n);
}
4 changes: 1 addition & 3 deletions benchmark/vm/run-in-context.js
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,10 @@ function main({ n, breakOnSigint, withSigintListener }) {
if (withSigintListener)
process.on('SIGINT', () => {});

var i = 0;

const contextifiedSandbox = vm.createContext();

bench.start();
for (; i < n; i++)
for (var i = 0; i < n; i++)
vm.runInContext('0', contextifiedSandbox, options);
bench.end(n);
}
4 changes: 1 addition & 3 deletions benchmark/vm/run-in-this-context.js
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,8 @@ function main({ n, breakOnSigint, withSigintListener }) {
if (withSigintListener)
process.on('SIGINT', () => {});

var i = 0;

bench.start();
for (; i < n; i++)
for (var i = 0; i < n; i++)
vm.runInThisContext('0', options);
bench.end(n);
}