mirror of
https://github.com/nodejs/node.git
synced 2026-10-29 02:35:20 +08:00
main() read `buf` instead of `buffer`, so every run measured Buffer.allocUnsafeSlow() even when labeled buffer=fast. Also benchmark the slow variant and trim the byteLength matrix. Signed-off-by: RafaelGSS <rafael.nunu@hotmail.com> PR-URL: https://github.com/nodejs/node/pull/66604 Reviewed-By: Ulises Gascón <ulisesgascongonzalez@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Minwoo Jung <nodecorelab@gmail.com>
42 lines
686 B
JavaScript
42 lines
686 B
JavaScript
'use strict';
|
|
const common = require('../common.js');
|
|
const { Buffer } = require('buffer');
|
|
|
|
const types = [
|
|
'BigUInt64LE',
|
|
'BigUInt64BE',
|
|
'BigInt64LE',
|
|
'BigInt64BE',
|
|
'UInt8',
|
|
'UInt16LE',
|
|
'UInt16BE',
|
|
'UInt32LE',
|
|
'UInt32BE',
|
|
'Int8',
|
|
'Int16LE',
|
|
'Int16BE',
|
|
'Int32LE',
|
|
'Int32BE',
|
|
];
|
|
|
|
const bench = common.createBenchmark(main, {
|
|
buffer: ['fast', 'slow'],
|
|
type: types,
|
|
n: [1e6],
|
|
});
|
|
|
|
function main({ n, buffer, type }) {
|
|
const buff = buffer === 'fast' ?
|
|
Buffer.alloc(8) :
|
|
Buffer.allocUnsafeSlow(8);
|
|
const fn = `read${type}`;
|
|
|
|
buff.writeDoubleLE(0, 0);
|
|
bench.start();
|
|
|
|
for (let i = 0; i !== n; i++) {
|
|
buff[fn](0);
|
|
}
|
|
bench.end(n);
|
|
}
|