Toggle navigation
MeasureThat
.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
Uint(8/16/32)Array and BigInt64Array comparison performance
Uint(8/16/32)Array and BigInt64Array comparison performance
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 Safari/537.36/9uiP7EnX-09
Browser:
Chrome 112
Operating system:
Windows
Device Platform:
Desktop
Date tested:
one year ago
Uint16Array increment
3.3M/s
Uint8Array increment
3.3M/s
BigUint64Array increment
2.3M/s
Uint32Array increment
2.1M/s
View exact numbers
Test name
Executions per second
✓
Uint16Array increment
3,345,589 Ops/sec
Uint8Array increment
3,322,566 Ops/sec
BigUint64Array increment
2,255,058 Ops/sec
Uint32Array increment
2,084,863 Ops/sec
Script Preparation code:
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++; } }