summaryrefslogtreecommitdiff
path: root/benchmark
diff options
context:
space:
mode:
authorRich Trott <rtrott@gmail.com>2017-09-03 14:58:53 -0700
committerJames M Snell <jasnell@gmail.com>2017-09-07 15:47:37 -0700
commitb62343d83ceaec35b6af2d3cd77f5271497744a0 (patch)
tree2394a92e76acb5b1d602ec2bdd8da66f9148efbb /benchmark
parent81b2a89ad3284a71e5a622a435adc160d343d455 (diff)
downloadandroid-node-v8-b62343d83ceaec35b6af2d3cd77f5271497744a0.tar.gz
android-node-v8-b62343d83ceaec35b6af2d3cd77f5271497744a0.tar.bz2
android-node-v8-b62343d83ceaec35b6af2d3cd77f5271497744a0.zip
benchmark: add default configs to buffer benchmark
Add default values to use for `type` and `method` in `buffer` benchmarks when the provided configuration value is an empty string. This is primarily useful for testing, so the test can request a single iteration without having to worry about providing different valid values for the different benchmarks. While making this change, some `var` instances in immediately surrounding code were changed to `const`. In some cases, `var` had been preserved so that the benchmarks would continue to run in versions of Node.js prior to 4.0.0. However, now that `const` has been introduced into the benchmark `common` module, the benchmarks will no longer run with those versions of Node.js anyway. PR-URL: https://github.com/nodejs/node/pull/15175 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com
Diffstat (limited to 'benchmark')
-rw-r--r--benchmark/buffers/buffer-creation.js1
-rw-r--r--benchmark/buffers/buffer-iterate.js9
-rw-r--r--benchmark/buffers/buffer-read.js13
-rw-r--r--benchmark/buffers/buffer-swap.js2
-rw-r--r--benchmark/buffers/buffer-write.js11
-rw-r--r--benchmark/buffers/dataview-set.js11
6 files changed, 26 insertions, 21 deletions
diff --git a/benchmark/buffers/buffer-creation.js b/benchmark/buffers/buffer-creation.js
index d1acd2694e..4ca0a04922 100644
--- a/benchmark/buffers/buffer-creation.js
+++ b/benchmark/buffers/buffer-creation.js
@@ -19,6 +19,7 @@ function main(conf) {
const len = +conf.len;
const n = +conf.n;
switch (conf.type) {
+ case '':
case 'fast-alloc':
bench.start();
for (let i = 0; i < n * 1024; i++) {
diff --git a/benchmark/buffers/buffer-iterate.js b/benchmark/buffers/buffer-iterate.js
index 7c20444222..7b49bcca71 100644
--- a/benchmark/buffers/buffer-iterate.js
+++ b/benchmark/buffers/buffer-iterate.js
@@ -17,12 +17,13 @@ var methods = {
};
function main(conf) {
- var len = +conf.size;
- var clazz = conf.type === 'fast' ? Buffer : SlowBuffer;
- var buffer = new clazz(len);
+ const len = +conf.size;
+ const clazz = conf.type === 'fast' ? Buffer : SlowBuffer;
+ const buffer = new clazz(len);
buffer.fill(0);
- methods[conf.method](buffer, conf.n);
+ const method = conf.method || 'for';
+ methods[method](buffer, conf.n);
}
diff --git a/benchmark/buffers/buffer-read.js b/benchmark/buffers/buffer-read.js
index 30f3ff05ad..67d86bad4e 100644
--- a/benchmark/buffers/buffer-read.js
+++ b/benchmark/buffers/buffer-read.js
@@ -26,14 +26,15 @@ var bench = common.createBenchmark(main, {
});
function main(conf) {
- var noAssert = conf.noAssert === 'true';
- var len = +conf.millions * 1e6;
- var clazz = conf.buf === 'fast' ? Buffer : require('buffer').SlowBuffer;
- var buff = new clazz(8);
- var fn = `read${conf.type}`;
+ const noAssert = conf.noAssert === 'true';
+ const len = +conf.millions * 1e6;
+ const clazz = conf.buf === 'fast' ? Buffer : require('buffer').SlowBuffer;
+ const buff = new clazz(8);
+ const type = conf.type || 'UInt8';
+ const fn = `read${type}`;
buff.writeDoubleLE(0, 0, noAssert);
- var testFunction = new Function('buff', `
+ const testFunction = new Function('buff', `
for (var i = 0; i !== ${len}; i++) {
buff.${fn}(0, ${JSON.stringify(noAssert)});
}
diff --git a/benchmark/buffers/buffer-swap.js b/benchmark/buffers/buffer-swap.js
index 9e36985f5c..05cde00294 100644
--- a/benchmark/buffers/buffer-swap.js
+++ b/benchmark/buffers/buffer-swap.js
@@ -73,7 +73,7 @@ function genMethod(method) {
}
function main(conf) {
- const method = conf.method;
+ const method = conf.method || 'swap16';
const len = conf.len | 0;
const n = conf.n | 0;
const aligned = conf.aligned || 'true';
diff --git a/benchmark/buffers/buffer-write.js b/benchmark/buffers/buffer-write.js
index 2f1eb08763..8fcfc43f70 100644
--- a/benchmark/buffers/buffer-write.js
+++ b/benchmark/buffers/buffer-write.js
@@ -46,11 +46,12 @@ var mod = {
};
function main(conf) {
- var noAssert = conf.noAssert === 'true';
- var len = +conf.millions * 1e6;
- var clazz = conf.buf === 'fast' ? Buffer : require('buffer').SlowBuffer;
- var buff = new clazz(8);
- var fn = `write${conf.type}`;
+ const noAssert = conf.noAssert === 'true';
+ const len = +conf.millions * 1e6;
+ const clazz = conf.buf === 'fast' ? Buffer : require('buffer').SlowBuffer;
+ const buff = new clazz(8);
+ const type = conf.type || 'UInt8';
+ const fn = `write${type}`;
if (/Int/.test(fn))
benchInt(buff, fn, len, noAssert);
diff --git a/benchmark/buffers/dataview-set.js b/benchmark/buffers/dataview-set.js
index 16b2628842..f9663e6a03 100644
--- a/benchmark/buffers/dataview-set.js
+++ b/benchmark/buffers/dataview-set.js
@@ -40,11 +40,12 @@ var mod = {
};
function main(conf) {
- var len = +conf.millions * 1e6;
- var ab = new ArrayBuffer(8);
- var dv = new DataView(ab, 0, 8);
- var le = /LE$/.test(conf.type);
- var fn = `set${conf.type.replace(/[LB]E$/, '')}`;
+ const len = +conf.millions * 1e6;
+ const ab = new ArrayBuffer(8);
+ const dv = new DataView(ab, 0, 8);
+ const type = conf.type || 'Uint8';
+ const le = /LE$/.test(type);
+ const fn = `set${type.replace(/[LB]E$/, '')}`;
if (/int/i.test(fn))
benchInt(dv, fn, len, le);