Skip to content

Commit fcf6188

Browse files
anonrigdanielleadams
authored andcommitted
benchmark: add text-encoder benchmark
PR-URL: #45450 Reviewed-By: Stephen Belanger <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Luigi Pinca <[email protected]>
1 parent 1de1f67 commit fcf6188

File tree

1 file changed

+32
-0
lines changed

1 file changed

+32
-0
lines changed

benchmark/util/text-encoder.js

+32
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
'use strict';
2+
3+
const common = require('../common.js');
4+
5+
const BASE = 'string\ud801';
6+
7+
const bench = common.createBenchmark(main, {
8+
len: [256, 1024, 1024 * 32],
9+
n: [1e4],
10+
op: ['encode', 'encodeInto']
11+
});
12+
13+
function main({ n, op, len }) {
14+
const encoder = new TextEncoder();
15+
const input = BASE.repeat(len);
16+
const subarray = new Uint8Array(len);
17+
18+
bench.start();
19+
switch (op) {
20+
case 'encode': {
21+
for (let i = 0; i < n; i++)
22+
encoder.encode(input);
23+
break;
24+
}
25+
case 'encodeInto': {
26+
for (let i = 0; i < n; i++)
27+
encoder.encodeInto(input, subarray);
28+
break;
29+
}
30+
}
31+
bench.end(n);
32+
}

0 commit comments

Comments
 (0)