diff --git a/benchmark/buffers/buffer-fill.js b/benchmark/buffers/buffer-fill.js new file mode 100644 index 00000000000000..590946bce96544 --- /dev/null +++ b/benchmark/buffers/buffer-fill.js @@ -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); +}