13 KiB
Test Name Wall(ms) Comp(ms) Exec(ms) Instrs GC Ct IC Rate Sess Objs Sess B Peak B Ret B
arith_ops 300.00 0.415 299.588 4700023 0 0.0% 0 0 0 0 array_filter 649.68 0.390 649.286 55739 0 99.9% 208001 28479960 28479960 3416 array_for_each 680.13 0.389 679.740 35737 0 99.9% 204001 27887960 27887960 1184 array_index_get 128.42 0.317 128.104 1817037 0 99.9% 1 38160 38160 8352 array_index_set 99.04 0.459 98.580 1517035 0 99.9% 1 38160 38160 8352 array_join 528.47 0.292 528.180 4140029 0 100.0% 20000 12580000 12580000 339 array_literal 88.14 0.277 87.860 1500025 0 100.0% 50000 9200000 9200000 184 array_map 631.64 0.342 631.297 55739 0 99.9% 208001 30079960 30079960 4568 array_push_pop 1302.72 0.315 1302.406 10200029 0 100.0% 50000 28900000 28900000 552 array_reduce 641.32 0.397 640.924 57739 0 99.9% 204001 27887960 27887960 2384 array_slice 80.96 0.400 80.562 79739 0 99.9% 6001 13689960 13689960 4568 array_sort 136.78 0.392 136.393 17939 0 99.7% 51501 9168960 9168960 4568 branch_if 149.12 0.265 148.857 2816690 0 0.0% 0 0 0 0 branch_switch 146.85 0.331 146.522 3000023 0 0.0% 0 0 0 0 call_args 97.78 0.382 97.402 880029 0 0.0% 20002 2720307 2720307 715 call_closure 68.18 0.380 67.797 500044 0 0.0% 20005 2720749 2720749 1461 call_method 76.45 0.276 76.173 580032 0 50.0% 20003 2720443 2720443 907 call_new_proto 140.64 0.319 140.319 800037 0 33.3% 60004 8160614 8160614 1694 call_recursion 1099.77 0.312 1099.453 5527429 2 0.0% 147881 20112435 33554499 715 call_this 127.80 0.362 127.435 780034 0 50.0% 40005 5440760 5440760 1632 cmp_ops 440.02 0.251 439.772 5800025 0 0.0% 0 0 0 0 code_forge 806.48 0.271 806.205 110018 0 0.0% 10000 1651670 1651670 0 coercion_boolean 258.77 0.253 258.515 4450023 0 0.0% 0 0 0 0 coercion_concat 198.97 0.413 198.552 2300025 0 0.0% 0 3888890 3888890 39 coercion_nullish 357.27 0.354 356.913 5100032 0 50.0% 1 136 192 192 coercion_tonumber 144.87 0.392 144.476 2600023 0 0.0% 0 0 0 0 coercion_toprimitive 182.30 0.424 181.880 500025 0 0.0% 120000 17900000 17900000 1815 coercion_tostring 392.12 0.346 391.769 4600025 0 0.0% 0 22200000 22200000 186 gc_array 598.43 0.309 598.119 4390027 0 100.0% 5000 10300000 10300000 672 gc_object 122.77 0.294 122.479 1550025 0 100.0% 50000 6800000 6800000 192 gc_string 40.93 0.241 40.691 460025 0 0.0% 0 788890 788890 40 gc_string_long 2088.95 0.234 2088.711 23000025 2 0.0% 0 7334531 33554441 41 ic_cache 56.96 0.447 56.508 554039 0 78.9% 10001 1740160 2051232 2051232 ic_polymorphic 234.59 0.387 234.205 4033387 0 100.0% 3 408 576 576 loop_do_while 244.85 0.260 244.590 3000019 0 0.0% 0 0 0 0 loop_for 1230.76 0.366 1230.393 16000023 0 0.0% 0 0 0 0 loop_for_in 645.85 0.589 645.258 7591739 0 0.0% 1 3626 3626 1184 loop_for_of 320.69 0.576 320.110 3652739 0 99.0% 6001 927960 927960 1184 loop_for_of_string 245.23 0.418 244.811 2726339 0 0.0% 3000 466150 466150 132 loop_index 424.71 0.471 424.236 6367739 0 100.0% 1 3960 3960 1184 loop_while 1267.14 0.314 1266.828 16000023 0 0.0% 0 0 0 0 loop_while_index 425.69 0.693 424.997 6667739 0 100.0% 1 3960 3960 1184 map_ops 783.05 0.476 782.577 12650027 0 100.0% 100000 17200000 17200000 816 math_ops 466.85 0.456 466.398 6500023 0 0.0% 0 0 0 0 mem_array_grow 386.97 0.287 386.680 3800024 0 0.0% 1 160 2097312 2097312 mem_closure_chain 140.77 0.650 140.116 590034 0 0.0% 80000 12558890 12558890 10079778 mem_cross_call_retain 261.00 0.521 260.477 1590032 0 25.0% 60004 11970749 11970749 8693357 mem_map_retain 64.64 0.292 64.343 600021 0 100.0% 20002 4698124 7063172 7063172 mem_object_graph 123.41 0.363 123.041 884727 0 0.0% 65536 8912936 8912936 6291984 mem_set_retain 46.82 0.235 46.588 460021 0 100.0% 20002 3809234 5158474 5158474 mem_string_accum 109.54 0.232 109.311 960020 0 0.0% 1 2744633 3268921 3268921 mem_string_rope 2.37 0.236 2.137 16025 6 0.0% 0 124184000 124184000 124184000 member_compound 309.91 0.412 309.496 4400076 0 100.0% 6 872 1152 1152 object_keys 484.57 0.456 484.118 3740027 0 100.0% 20000 18360000 18360000 416 prop_access 171.26 0.380 170.881 2800036 0 100.0% 1 136 192 192 prop_bracket 160.98 0.423 160.559 2100036 0 100.0% 1 136 192 192 prop_delete 55.56 0.427 55.130 480034 0 50.0% 1 136 192 192 prop_dynamic 77.89 0.301 77.589 1100028 0 100.0% 1 136 192 192 prop_nested 132.86 0.347 132.517 1550025 0 100.0% 150000 20400000 20400000 576 prop_set 206.53 0.272 206.255 3200032 0 100.0% 1 136 192 192 property 154.87 0.414 154.459 111035 0 0.0% 1 231916 231916 32928 set_ops 683.32 0.399 682.919 9950027 0 90.9% 100000 17200000 17200000 320 string_build 1809.32 0.451 1808.872 16560027 4 0.0% 0 6791197 33554520 122 string_case 186.69 0.359 186.329 1600028 0 0.0% 0 7600000 7600000 0 string_char 311.22 0.266 310.953 3800025 0 0.0% 0 0 0 0 string_concat 176.82 0.378 176.445 1800031 0 0.0% 0 1900000 1900000 38 string_indexof 85.99 0.241 85.752 1100028 0 0.0% 0 0 0 0 string_replace 55.86 0.353 55.510 600030 0 0.0% 0 1320000 1320000 66 string_replace_fn 776.00 0.451 775.546 64987 3 0.0% 210 17604583 33586009 12641 string_split 104.25 0.340 103.908 540030 0 100.0% 20000 24520000 24520000 1226 string_substring 126.26 0.342 125.919 1500030 0 0.0% 0 2150000 2150000 43 string_trim 43.86 0.253 43.607 460028 0 0.0% 0 1560000 1560000 0 try_catch_ok 58.22 0.255 57.961 1050023 0 0.0% 0 0 0 0 try_catch_throw 53.50 0.319 53.183 580023 0 0.0% 20000 3440000 3440000 0 typeof_ops 311.13 0.250 310.880 4300023 0 0.0% 100000 13600000 13600000 0 unary_ops 284.57 0.314 284.253 3700023 0 0.0% 0 0 0 0
内存基准用例(mem_*):
mem_object_graph 大型对象图留存:15 层满二叉树 32767 节点整体驻留 session 堆 mem_string_accum 字符串累积留存:40000 个互不相同的字符串驻留数组(interner 压力) mem_closure_chain 闭包/upvalue 长链:10000 层闭包各自捕获前层闭包与 payload 驻留 mem_array_grow 数组增缩容量:扩到 200000 元素后截回 1000,观测元素向量容量是否回落(账目按 Vec capacity 计) mem_cross_call_retain 跨调用长存活数据:全局 store 经 30000 次调用累积 30000 条记录 mem_map_retain 原生盒边持有:Map 持 20000 组字符串键 + 对象值 mem_set_retain 原生盒边持有:Set 持 20000 个对象(各带 payload 字符串) mem_string_rope 拼接 rope 链留存:重复二元拼接形成深 Cons 链(账目按逻辑长度计,数值高于实际足迹) 口径:Peak B/Ret B 为 session 堆账目(对象头 + 堆数据 + 存活串);BigInt 不入 该账目,由单 run 分配公式按表长单列。epoch arena 的临时驻留不计入字节账目 (数量列恒零)。Peak B 为顶层指令边界采样的 session 堆账目高水位;单指令内瞬态 与 epoch 高水位不计。Ret B 为 workload 后晋升 + 完整 GC 的真存活集,至多含一份 引擎内部副本:逃逸屏障留 epoch 原件且顶层寄存器根不回写时,测量时晋升会把原件 再克隆一份(object_graph 见留存锚测试)。
A/B 判据口径:
主判(回归门):确定性列——指令数、内存账目(session/peak/retained)、 垃圾回收计数、内联缓存计数——跨运行逐字节一致,零容差,双向任何变化即信号; 基线对比的退出码 1 只认这些列。 次判(墙时间):wall/exec/compile/gc_collection 列在 ±5% 带内(固定核、 warmup 2、三轮中位);基线对比容差 0.50,信息性,不影响退出码。 基线文件是陈旧锚(安静树单次快照),不是 A/B 仪器;A/B 是同机同宿主 严格交错对比。