summaryrefslogtreecommitdiff
path: root/benchmark/arrays/var-int.js
blob: 430737856313e4081508bb33d08f114ce420ae34 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
'use strict';
const common = require('../common.js');

const bench = common.createBenchmark(main, {
  type: [
    'Array',
    'Buffer',
    'Int8Array',
    'Uint8Array',
    'Int16Array',
    'Uint16Array',
    'Int32Array',
    'Uint32Array',
    'Float32Array',
    'Float64Array'
  ],
  n: [25e6]
});

function main({ type, n }) {
  const clazz = global[type];

  bench.start();
  const arr = new clazz(n);
  for (var i = 0; i < 10; ++i) {
    run();
  }
  bench.end(n);

  function run() {
    for (var j = 0, k = arr.length; j < k; ++j) {
      arr[j] = (j ^ k) & 127;
    }
  }
}