Script Preparation code:
x
 
var length = 1e6;
var f32_a = Float32Array.from({length}, Math.random);
var f32_b = Float32Array.from({length}, Math.random);
var f64_a = Float64Array.from({length}, Math.random);
var f64_b = Float64Array.from({length}, Math.random);
var arr_a = Array.from({length}, Math.random);
var arr_b = Array.from({length}, Math.random);
Tests:
  • f32 iterate

     
    for (var i = 0; i < length; i++) {
      f32_b[i] = f32_a[i];
    }
  • f32 set

     
    f32_b.set(f32_a);
  • f64 iterate

     
    for (var i = 0; i < length; i++) {
      f64_b[i] = f64_a[i];
    }
  • f64 set

     
    f64_b.set(f64_a);
  • arr iterate

     
    for (var i = 0; i < length; i++) {
      arr_b[i] = arr_a[i];
    }
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    f32 iterate
    f32 set
    f64 iterate
    f64 set
    arr iterate

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: one year ago)
Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/115.0
Firefox 115 on Ubuntu
View result in a separate tab
Test name Executions per second
f32 iterate 618.9 Ops/sec
f32 set 4699.0 Ops/sec
f64 iterate 667.2 Ops/sec
f64 set 1679.6 Ops/sec
arr iterate 308.7 Ops/sec