This commit is contained in:
Brooke Vibber 2023-09-04 07:53:39 -07:00
parent 5e030cba07
commit 7dd97f6543

52
readme.md Normal file
View file

@ -0,0 +1,52 @@
# speci.js - specialization benchmark test
Tests two-property objects with {x, y} or {y, x} and access in a tight loop
When the array contains consistent elements it optimizes well, but the first
run is much slower on a randomly mixed array.
Subsequent runs come up much faster as the higher-tier compilers in V8 can
handle a couple of different variants -- but this might not be true of all
possibilities. 256 randomized variants is linearly slower.
```
% node speci.js
** x_first
run 1
72 ms
run 2
15 ms
run 3
22 ms
** y_first
run 1
73 ms
run 2
23 ms
run 3
20 ms
** mixed
run 1
2766 ms
run 2
52 ms
run 3
53 ms
** randomized
run 1
464 ms
run 2
445 ms
run 3
445 ms
```