mirror of https://github.com/nodejs/node.git
benchmark: add buffer fill benchmark
PR-URL: https://github.com/nodejs/node/pull/18790 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com>pull/18673/merge
parent
177b7314cf
commit
e9ec9ff269
|
@ -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);
|
||||
}
|
Loading…
Reference in New Issue