Script Preparation code:
x
 
var data = new Array(1000000);
for (var i = 0; i < data.length; i++) {
  data[i] = i % 2 === 0 ? i : i + 0.5;
}
var f32 = new Float32Array(data);
Tests:
  • subarray direct

     
    var copy = f32.subarray(0, 500000);
  • slice direct

     
    var copy = f32.slice(0, 500000);
  • subarray copy

     
    var copy = new Float32Array(f32.subarray(0, 500000));
  • slice copy

     
    var copy = new Float32Array(f32.slice(0, 500000));
  • subarray set

     
    var copy = new Float32Array(1000000).set(f32.subarray(0, 500000));
  • slice set

     
    var copy = new Float32Array(1000000).set(f32.slice(0, 500000));
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    subarray direct
    slice direct
    subarray copy
    slice copy
    subarray set
    slice set

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: 2 months ago)
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/132.0.0.0 Safari/537.36
Chrome 132 on Mac OS X 10.15.7
View result in a separate tab
Test name Executions per second
subarray direct 42349796.0 Ops/sec
slice direct 6794.7 Ops/sec
subarray copy 6637.1 Ops/sec
slice copy 3359.1 Ops/sec
subarray set 6253.8 Ops/sec
slice set 3092.0 Ops/sec