Toggle navigation
MeasureThat
.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
Uint(8/16/32)Array.set performance compare
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:134.0) Gecko/20100101 Firefox/134.0
Browser:
Firefox 134
Operating system:
Ubuntu
Device Platform:
Desktop
Date tested:
one year ago
Uint8Array.set
8.8M/s
BigUint64Array.set
8.7M/s
Uint32Array.set
8.4M/s
Uint16Array.set
8.2M/s
View exact numbers
Test name
Executions per second
✓
Uint8Array.set
8,841,701 Ops/sec
BigUint64Array.set
8,715,087 Ops/sec
Uint32Array.set
8,383,595 Ops/sec
Uint16Array.set
8,209,274 Ops/sec
Script Preparation code:
var size = 5000; var srcBuf = new ArrayBuffer(size); var srcBufPtr8 = new Uint8Array(srcBuf); var srcBufPtr16 = new Uint16Array(srcBuf); var srcBufPtr32 = new Uint32Array(srcBuf); var srcBufPtr64 = new BigUint64Array(srcBuf); var destBuf = new ArrayBuffer(size); var destBufPtr8 = new Uint8Array(destBuf); var destBufPtr16 = new Uint16Array(destBuf); var destBufPtr32 = new Uint32Array(destBuf); var destBufPtr64 = new BigUint64Array(destBuf); for (let i = 0; i < size; i++) { srcBufPtr8[i] = 100*Math.random(); }
Tests:
Uint8Array.set
destBufPtr8.set(srcBufPtr8);
Uint16Array.set
destBufPtr16.set(srcBufPtr16);
Uint32Array.set
destBufPtr32.set(srcBufPtr32);
BigUint64Array.set
destBufPtr64.set(srcBufPtr64);