Skip to content

Latest commit

 

History

History
54 lines (48 loc) · 2.02 KB

File metadata and controls

54 lines (48 loc) · 2.02 KB

Interpreter-tier cross-engine micro-bench

Subprocess wall-clock; times in ms, median of N=10 timed runs after 1 discarded warmup run. * flags a fixture whose max-min spread exceeded 10% — treat that cell as noisy.

All JIT engines run JIT-disabled (interpreter tier only): v8 --jitless, sm --no-baseline --no-ion, jsc JSC_useJIT=0. Internal regression compass — not published.

Host: Darwin 25.6.0 arm64. Generated by tools/bench-cross.sh.

fixture cynic (n=10) qjs (n=10) v8 (n=10) sm (n=10) jsc (n=10) hermes (n=10)
arith_loop 41 76 74 79* 59* 80*
array_iter 23 24 40 92* 22 31*
class_instantiate 125 65* 31 23* 20 ERR
json_stringify 41 66 23* 17 10 26*
method_call 36 18 32* 24 19 ERR
object_alloc 48 56* 29* 18 14 14
promise_chain 14* 11 20* 15* 7* 10
prop_access 14 15 30 25 21 10
prop_write 17* 16 30 24* 19 11*
string_concat 45 49 31* 19 17 152*
tail_recursion 89* ERR ERR ERR 29* ERR

Noisy cells (>10% spread):

  • cynic/promise_chain: 14% spread
  • cynic/prop_write: 17% spread
  • cynic/tail_recursion: 14% spread
  • qjs/class_instantiate: 15% spread
  • qjs/object_alloc: 23% spread
  • v8/json_stringify: 17% spread
  • v8/method_call: 12% spread
  • v8/object_alloc: 113% spread
  • v8/promise_chain: 20% spread
  • v8/string_concat: 12% spread
  • sm/arith_loop: 12% spread
  • sm/array_iter: 70% spread
  • sm/class_instantiate: 13% spread
  • sm/promise_chain: 13% spread
  • sm/prop_write: 33% spread
  • jsc/arith_loop: 11% spread
  • jsc/promise_chain: 14% spread
  • jsc/tail_recursion: 127% spread
  • hermes/arith_loop: 28% spread
  • hermes/array_iter: 54% spread
  • hermes/json_stringify: 23% spread
  • hermes/prop_write: 18% spread
  • hermes/string_concat: 128% spread

Interpreter-tier-only, internal compass. Do not publish; do not append to bench-results.md (that file is the single-engine zig build bench artifact).