Run details:
Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Mobile Safari/537.36
Chrome Mobile 134
Android
Mobile
21 days ago
Test name Executions per second
array[i] = i; 167495.2 Ops/sec
view.setFloat64(i, i) 434529.6 Ops/sec
array[i] = i; 2 169697.5 Ops/sec
view.setFloat64(i, i) 2 463214.6 Ops/sec
Script Preparation code:
AخA
 
var buffer1 = new ArrayBuffer(1024 * Float64Array.BYTES_PER_ELEMENT);
var array = new Float64Array(buffer1);
var buffer2 = new ArrayBuffer(1024 * Float64Array.BYTES_PER_ELEMENT);
var view = new DataView(buffer2);
Tests:
  • array[i] = i;

     
    for (let i = 0; i < 1024; i += 1) {
      if (i === 0) {
        array[i] = 1;   
      } else {
        array[i] = array[i-1] + i;;
      }
    }
  • view.setFloat64(i, i)

     
    for (let i = 0; i < 1024; i += 8) {
      if (i === 0) {
        view.setFloat64(i, 1);
      } else {
        view.setFloat64(i, view.getFloat64(i - 1) + i);
      }
    }
  • array[i] = i; 2

     
    for (let i = 0; i < 1024; i += 1) {
      if (i === 0) {
        array[i] = 1;   
      } else {
        array[i] = array[i-1] + i;
      }
    }
  • view.setFloat64(i, i) 2

     
    for (let i = 0; i < 1024; i += 8) {
      if (i === 0) {
        view.setFloat64(i, 1);
      } else {
        view.setFloat64(i, view.getFloat64(i - 1) + i);
      }
    }