Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
get x versus array[0] versus FloatArray32 versus FloatArray32 get
(version: 1)
Comparing performance of:
array[0] vs set / get vs float 32 vs extended float 32
Created:
one year ago
by:
Guest
Jump to the latest result
Script Preparation code:
class Something extends Float32Array { constructor (val) { super(1); this[0] = val; } get x () { return this[0]; } set x (v) { this[0] = v; } } const size = 10000; const array = new Array(16).fill(1); const arrayEF32 = new Something (16); const arrayF32 = new Float32Array (16); const obj = { get x() { return array[0]; }, set x(value) { array[0] = value; } };
Tests:
array[0]
let sum = 0; for (let i = 0; i < size; i++) { array[0] = Math.random () * 1000; sum += array[0]; }
set / get
let sum = 0; for (let i = 0; i < size; i++) { obj.x = Math.random () * 1000; sum += obj.x; }
float 32
let sum = 0; for (let i = 0; i < size; i++) { arrayF32[0] = Math.random () * 1000; sum += arrayF32[0]; }
extended float 32
let sum = 0; for (let i = 0; i < size; i++) { arrayEF32.x = Math.random () * 1000; sum += arrayEF32.x; }
Rendered benchmark preparation results:
Suite status:
<idle, ready to run>
Run tests (4)
Previous results
Fork
Test case name
Result
array[0]
set / get
float 32
extended float 32
Fastest:
N/A
Slowest:
N/A
Latest run results:
Run details:
(Test run date:
one year ago
)
User agent:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36
Browser/OS:
Chrome 133 on Windows
View result in a separate tab
Embed
Embed Benchmark Result
Test name
Executions per second
array[0]
10219.9 Ops/sec
set / get
1131.7 Ops/sec
float 32
9206.7 Ops/sec
extended float 32
9062.2 Ops/sec
Related benchmarks:
Multiplying lists of vectors - SoA vs AoS vs interlaced array
soa vs aos vs typed soa
One big array or one per object
set vs subarray-set vs pre-allocated subarray-set
flat typed array vs 2d typed array
get x versus array[0] versus Float32Array versus Float32Array get versus Int32Array versus Int32Array extended
simple versus get x versus array[0] versus Float32Array versus Float32Array get versus Int32Array versus Int32Array extended
simple versus get x versus array[0] versus Float32Array versus Float32Array get versus Int32Array versus Int32Array extended revision
teardown + simple versus get x versus array[0] versus Float32Array versus Float32Array get versus Int32Array versus Int32Array extended
Comments
Confirm delete:
Do you really want to delete benchmark?