Script Preparation code:
AخA
 
var continuous = [];
var sparse = [];
var C = 900000;
for(var i=0; i<C; ++i){
  continuous.push(C-i);
}
for(var i=0; i<C; ++i){
  sparse[i * 2] = C - i;
}
Tests:
  • continuous reduce

     
    var total = continuous.reduce(function(acc, cur){
      return acc + cur;
    });
  • sparse reduce

     
    var total = sparse.reduce(function(acc, cur){
      return acc + cur;
    });
  • continuous update

     
    continuous.forEach(function(cur, i, arr){
      arr[i] += 100;
    });
  • sparse update

     
    sparse.forEach(function(cur, i, arr){
      arr[i] += 100;
    });
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    continuous reduce
    sparse reduce
    continuous update
    sparse update

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: 3 years ago)
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.63 Safari/537.36
Chrome 93 on Windows
View result in a separate tab
Test name Executions per second
continuous reduce 114.0 Ops/sec
sparse reduce 95.9 Ops/sec
continuous update 133.8 Ops/sec
sparse update 111.7 Ops/sec