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 (Windows NT 10.0; Win64; x64; rv:147.0) Gecko/20100101 Firefox/147.0
Browser:
Firefox 147
Operating system:
Windows
Device Platform:
Desktop
Date tested:
6 months ago
Uint32Array.set
6.2M/s
BigUint64Array.set
6.1M/s
Uint16Array.set
6.0M/s
Uint8Array.set
6.0M/s
View exact numbers
Test name
Executions per second
✓
Uint32Array.set
6,215,728 Ops/sec
BigUint64Array.set
6,053,158 Ops/sec
Uint16Array.set
6,024,430 Ops/sec
Uint8Array.set
6,017,965 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);