Skip to content

Commit 7cae774

Browse files
TrottFishrock123
authored andcommitted
benchmark: refactor to eliminate redeclared vars
In order to comply with linting rules used in the rest of the code base, eliminate redeclared variables. A conservative approach is used so as to avoid unintentional performance issues (for example, as might be seen in some situations when using `let` instead of `var`). PR-URL: #5468 Reviewed-By: Brian White <[email protected]>
1 parent d1a82c6 commit 7cae774

10 files changed

+51
-40
lines changed

benchmark/buffers/buffer-base64-encode.js

+4-3
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,10 @@ function main(conf) {
77
var N = 64 * 1024 * 1024;
88
var b = Buffer(N);
99
var s = '';
10-
for (var i = 0; i < 256; ++i) s += String.fromCharCode(i);
11-
for (var i = 0; i < N; i += 256) b.write(s, i, 256, 'ascii');
10+
var i;
11+
for (i = 0; i < 256; ++i) s += String.fromCharCode(i);
12+
for (i = 0; i < N; i += 256) b.write(s, i, 256, 'ascii');
1213
bench.start();
13-
for (var i = 0; i < 32; ++i) b.toString('base64');
14+
for (i = 0; i < 32; ++i) b.toString('base64');
1415
bench.end(64);
1516
}

benchmark/buffers/buffer-tostring.js

+3-2
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,13 @@ function main(conf) {
1414
const n = conf.n | 0;
1515
const buf = Buffer(len).fill(42);
1616

17+
var i;
1718
bench.start();
1819
if (arg) {
19-
for (var i = 0; i < n; i += 1)
20+
for (i = 0; i < n; i += 1)
2021
buf.toString('utf8');
2122
} else {
22-
for (var i = 0; i < n; i += 1)
23+
for (i = 0; i < n; i += 1)
2324
buf.toString();
2425
}
2526
bench.end(n);

benchmark/compare.js

+12-11
Original file line numberDiff line numberDiff line change
@@ -37,18 +37,19 @@ for (var i = 2; i < process.argv.length; i++) {
3737
}
3838
}
3939

40+
var start, green, red, reset, end;
4041
if (!html) {
41-
var start = '';
42-
var green = '\u001b[1;32m';
43-
var red = '\u001b[1;31m';
44-
var reset = '\u001b[m';
45-
var end = '';
42+
start = '';
43+
green = '\u001b[1;32m';
44+
red = '\u001b[1;31m';
45+
reset = '\u001b[m';
46+
end = '';
4647
} else {
47-
var start = '<pre style="background-color:#333;color:#eee">';
48-
var green = '<span style="background-color:#0f0;color:#000">';
49-
var red = '<span style="background-color:#f00;color:#fff">';
50-
var reset = '</span>';
51-
var end = '</pre>';
48+
start = '<pre style="background-color:#333;color:#eee">';
49+
green = '<span style="background-color:#0f0;color:#000">';
50+
red = '<span style="background-color:#f00;color:#fff">';
51+
reset = '</span>';
52+
end = '</pre>';
5253
}
5354

5455
var runBench = process.env.NODE_BENCH || 'bench';
@@ -137,7 +138,7 @@ function compare() {
137138

138139
var r0 = util.format('%s%s: %d%s', g, nodes[0], n0.toPrecision(5), g ? reset : '');
139140
var r1 = util.format('%s%s: %d%s', r, nodes[1], n1.toPrecision(5), r ? reset : '');
140-
var pct = c + pct + '%' + reset;
141+
pct = c + pct + '%' + reset;
141142
var l = util.format('%s: %s %s', bench, r0, r1);
142143
maxLen = Math.max(l.length + pct.length, maxLen);
143144
return [l, pct];

benchmark/crypto/cipher-stream.js

+5-4
Original file line numberDiff line numberDiff line change
@@ -86,13 +86,14 @@ function streamWrite(alice, bob, message, encoding, writes) {
8686

8787
function legacyWrite(alice, bob, message, encoding, writes) {
8888
var written = 0;
89+
var enc, dec;
8990
for (var i = 0; i < writes; i++) {
90-
var enc = alice.update(message, encoding);
91-
var dec = bob.update(enc);
91+
enc = alice.update(message, encoding);
92+
dec = bob.update(enc);
9293
written += dec.length;
9394
}
94-
var enc = alice.final();
95-
var dec = bob.update(enc);
95+
enc = alice.final();
96+
dec = bob.update(enc);
9697
written += dec.length;
9798
dec = bob.final();
9899
written += dec.length;

benchmark/events/ee-add-remove.js

+4-3
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,15 @@ function main(conf) {
1010
var ee = new events.EventEmitter();
1111
var listeners = [];
1212

13-
for (var k = 0; k < 10; k += 1)
13+
var k;
14+
for (k = 0; k < 10; k += 1)
1415
listeners.push(function() {});
1516

1617
bench.start();
1718
for (var i = 0; i < n; i += 1) {
18-
for (var k = listeners.length; --k >= 0; /* empty */)
19+
for (k = listeners.length; --k >= 0; /* empty */)
1920
ee.on('dummy', listeners[k]);
20-
for (var k = listeners.length; --k >= 0; /* empty */)
21+
for (k = listeners.length; --k >= 0; /* empty */)
2122
ee.removeListener('dummy', listeners[k]);
2223
}
2324
bench.end(n);

benchmark/fs-write-stream-throughput.js

+3-2
Original file line numberDiff line numberDiff line change
@@ -39,12 +39,13 @@ function parent() {
3939
function runTest(dur, size, type) {
4040
if (type !== 'string')
4141
type = 'buffer';
42+
var chunk;
4243
switch (type) {
4344
case 'string':
44-
var chunk = new Array(size + 1).join('a');
45+
chunk = new Array(size + 1).join('a');
4546
break;
4647
case 'buffer':
47-
var chunk = new Buffer(size);
48+
chunk = new Buffer(size);
4849
chunk.fill('a');
4950
break;
5051
}

benchmark/http_simple.js

+6-5
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,9 @@ var server = module.exports = http.createServer(function(req, res) {
3636
var n_chunks = parseInt(commands[3], 10);
3737
var status = 200;
3838

39+
var n, i;
3940
if (command == 'bytes') {
40-
var n = ~~arg;
41+
n = ~~arg;
4142
if (n <= 0)
4243
throw new Error('bytes called with n <= 0');
4344
if (storedBytes[n] === undefined) {
@@ -46,19 +47,19 @@ var server = module.exports = http.createServer(function(req, res) {
4647
body = storedBytes[n];
4748

4849
} else if (command == 'buffer') {
49-
var n = ~~arg;
50+
n = ~~arg;
5051
if (n <= 0)
5152
throw new Error('buffer called with n <= 0');
5253
if (storedBuffer[n] === undefined) {
5354
storedBuffer[n] = new Buffer(n);
54-
for (var i = 0; i < n; i++) {
55+
for (i = 0; i < n; i++) {
5556
storedBuffer[n][i] = 'C'.charCodeAt(0);
5657
}
5758
}
5859
body = storedBuffer[n];
5960

6061
} else if (command == 'unicode') {
61-
var n = ~~arg;
62+
n = ~~arg;
6263
if (n <= 0)
6364
throw new Error('unicode called with n <= 0');
6465
if (storedUnicode[n] === undefined) {
@@ -93,7 +94,7 @@ var server = module.exports = http.createServer(function(req, res) {
9394
var len = body.length;
9495
var step = Math.floor(len / n_chunks) || 1;
9596

96-
for (var i = 0, n = (n_chunks - 1); i < n; ++i) {
97+
for (i = 0, n = (n_chunks - 1); i < n; ++i) {
9798
res.write(body.slice(i * step, i * step + step));
9899
}
99100
res.end(body.slice((n_chunks - 1) * step));

benchmark/http_simple_auto.js

+8-6
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,8 @@ var spawn = require('child_process').spawn;
1414
var port = parseInt(process.env.PORT || 8000);
1515

1616
var fixed = '';
17-
for (var i = 0; i < 20 * 1024; i++) {
17+
var i;
18+
for (i = 0; i < 20 * 1024; i++) {
1819
fixed += 'C';
1920
}
2021

@@ -28,25 +29,26 @@ var server = http.createServer(function(req, res) {
2829
var arg = commands[2];
2930
var n_chunks = parseInt(commands[3], 10);
3031
var status = 200;
32+
var n;
3133

3234
if (command == 'bytes') {
33-
var n = parseInt(arg, 10);
35+
n = parseInt(arg, 10);
3436
if (n <= 0)
3537
throw new Error('bytes called with n <= 0');
3638
if (stored[n] === undefined) {
3739
stored[n] = '';
38-
for (var i = 0; i < n; i++) {
40+
for (i = 0; i < n; i++) {
3941
stored[n] += 'C';
4042
}
4143
}
4244
body = stored[n];
4345

4446
} else if (command == 'buffer') {
45-
var n = parseInt(arg, 10);
47+
n = parseInt(arg, 10);
4648
if (n <= 0) throw new Error('bytes called with n <= 0');
4749
if (storedBuffer[n] === undefined) {
4850
storedBuffer[n] = new Buffer(n);
49-
for (var i = 0; i < n; i++) {
51+
for (i = 0; i < n; i++) {
5052
storedBuffer[n][i] = 'C'.charCodeAt(0);
5153
}
5254
}
@@ -79,7 +81,7 @@ var server = http.createServer(function(req, res) {
7981
var len = body.length;
8082
var step = Math.floor(len / n_chunks) || 1;
8183

82-
for (var i = 0, n = (n_chunks - 1); i < n; ++i) {
84+
for (i = 0, n = (n_chunks - 1); i < n; ++i) {
8385
res.write(body.slice(i * step, i * step + step));
8486
}
8587
res.end(body.slice((n_chunks - 1) * step));

benchmark/querystring/querystring-parse.js

+3-2
Original file line numberDiff line numberDiff line change
@@ -43,14 +43,15 @@ function main(conf) {
4343
querystring.parse(input, '&&&&&&&&&&');
4444
}
4545

46+
var i;
4647
if (type !== 'multicharsep') {
4748
bench.start();
48-
for (var i = 0; i < n; i += 1)
49+
for (i = 0; i < n; i += 1)
4950
querystring.parse(input);
5051
bench.end(n);
5152
} else {
5253
bench.start();
53-
for (var i = 0; i < n; i += 1)
54+
for (i = 0; i < n; i += 1)
5455
querystring.parse(input, '&&&&&&&&&&');
5556
bench.end(n);
5657
}

benchmark/string_decoder/string-decoder.js

+3-2
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ function main(conf) {
2222
var chunks = [];
2323
var str = '';
2424
var isBase64 = (encoding === 'base64-ascii' || encoding === 'base64-utf8');
25+
var i;
2526

2627
if (encoding === 'ascii' || encoding === 'base64-ascii')
2728
alpha = ASC_ALPHA;
@@ -32,7 +33,7 @@ function main(conf) {
3233

3334
var sd = new StringDecoder(isBase64 ? 'base64' : encoding);
3435

35-
for (var i = 0; i < inLen; ++i) {
36+
for (i = 0; i < inLen; ++i) {
3637
if (i > 0 && (i % chunkLen) === 0 && !isBase64) {
3738
chunks.push(new Buffer(str, encoding));
3839
str = '';
@@ -53,7 +54,7 @@ function main(conf) {
5354
var nChunks = chunks.length;
5455

5556
bench.start();
56-
for (var i = 0; i < n; ++i) {
57+
for (i = 0; i < n; ++i) {
5758
for (var j = 0; j < nChunks; ++j)
5859
sd.write(chunks[j]);
5960
}

0 commit comments

Comments
 (0)