Script Preparation code:
x
 
var start = 3e6;
var end = 4e6;
// for set
var array1 = Float32Array.from({length: 1e6}, Math.random);
var array2 = Float32Array.from({length: 1e6}, Math.random);
// for subarray-set
var array3 = Float32Array.from({length: 1e6}, Math.random);
var array4 = Float32Array.from({length: 10e6}, Math.random);
// for pre-allocated subarray-set
var array5 = Float32Array.from({length: 1e6}, Math.random);
var array6 = Float32Array.from({length: 10e6}, Math.random);
var subarray6 = array6.subarray(start, end);
Tests:
  • set

     
    array1.set(array2, 0);
  • subarray-set

     
    array3.set(array4.subarray(start, end), 0);
  • pre-allocated subarray-set

     
    array5.set(subarray6, 0);
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    set
    subarray-set
    pre-allocated subarray-set

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: one year ago)
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 Safari/537.36
Chrome 112 on Mac OS X 10.15.7
View result in a separate tab
Test name Executions per second
set 1503.3 Ops/sec
subarray-set 1543.5 Ops/sec
pre-allocated subarray-set 1514.7 Ops/sec