Skip to content

Commit

Permalink
benchmark: add buffer fill benchmark
Browse files Browse the repository at this point in the history
PR-URL: nodejs#18790
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Benjamin Gruenbaum <[email protected]>
Reviewed-By: Matteo Collina <[email protected]>
  • Loading branch information
BridgeAR authored and MayaLekova committed May 8, 2018
1 parent fa86ca5 commit d6e5d80
Showing 1 changed file with 31 additions and 0 deletions.
31 changes: 31 additions & 0 deletions benchmark/buffers/buffer-fill.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
'use strict';
const common = require('../common.js');

const bench = common.createBenchmark(main, {
type: [
'fill(0)',
'fill("")',
'fill(100)',
'fill(400)',
'fill("t")',
'fill("test")',
'fill("t", "utf8")',
'fill("t", 0, "utf8")',
'fill("t", 0)',
'fill(Buffer.alloc(1), 0)'
],
size: [2 ** 8, 2 ** 13, 2 ** 16],
n: [2e4]
});

function main({ n, type, size }) {
const buffer = Buffer.allocUnsafe(size);
const testFunction = new Function('b', `
for (var i = 0; i < ${n}; i++) {
b.${type || 'fill(0)'};
}
`);
bench.start();
testFunction(buffer);
bench.end(n);
}

0 comments on commit d6e5d80

Please sign in to comment.