Script Preparation code:
x
 
var size = 8 * 40;
var srcBuf8 = new ArrayBuffer(size);
var srcBufPtr8 = new Uint8Array(srcBuf8);
var srcBuf16 = new ArrayBuffer(size*2);
var srcBufPtr16 = new Uint16Array(srcBuf16);
var srcBuf32 = new ArrayBuffer(size*4);
var srcBufPtr32 = new Uint32Array(srcBuf32);
var srcBuf64 = new ArrayBuffer(size*8);
var srcBufPtr64 = new BigUint64Array(srcBuf64);
for (let i = 0; i < size; i++) {
    srcBufPtr8[i] = 100 * Math.random();
}
for (let i = 0; i < size; i++) {
    srcBufPtr16[i] = srcBufPtr8[i];
}
for (let i = 0; i < size; i++) {
    srcBufPtr32[i] = srcBufPtr8[i];
}
for (let i = 0; i < size; i++) {
    srcBufPtr64[i] = BigInt(srcBufPtr8[i]);
}
Tests:
  • Uint8Array increment

     
    let smallerCount = 0;
    for (let i = 0; i < (size-1); i++) {
        if (srcBufPtr8[i] < srcBufPtr8[i+1]) {
          smallerCount++;
        }
    }
  • Uint16Array increment

     
    let smallerCount = 0;
    for (let i = 0; i < (size-1); i++) {
        if (srcBufPtr16[i] < srcBufPtr16[i+1]) {
          smallerCount++;
        }
    }
  • Uint32Array increment

     
    let smallerCount = 0;
    for (let i = 0; i < (size-1); i++) {
        if (srcBufPtr32[i] < srcBufPtr32[i+1]) {
          smallerCount++;
        }
    }
  • BigUint64Array increment

     
    let smallerCount = 0;
    for (let i = 0; i < (size-1); i++) {
        if (srcBufPtr64[i] < srcBufPtr64[i+1]) {
          smallerCount++;
        }
    }
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    Uint8Array increment
    Uint16Array increment
    Uint32Array increment
    BigUint64Array increment

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: one month ago)
Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:134.0) Gecko/20100101 Firefox/134.0
Firefox 134 on Ubuntu
View result in a separate tab
Test name Executions per second
Uint8Array increment 3723891.0 Ops/sec
Uint16Array increment 3789454.5 Ops/sec
Uint32Array increment 3207923.5 Ops/sec
BigUint64Array increment 2862691.5 Ops/sec