mirror of
https://github.com/pjh456/OxideJS.git
synced 2026-10-23 18:21:13 +08:00
95 lines
12 KiB
Markdown
95 lines
12 KiB
Markdown
Test Name Wall(ms) Comp(ms) Exec(ms) Instrs GC Ct IC Rate Sess Objs Sess B Peak B Ret B
|
|
------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
arith_ops 285.24 0.000 285.236 4500023 0 0.0% 0 0 0 0
|
|
array_filter 586.23 0.001 586.223 51539 1 99.9% 1719 395736 412994 2760
|
|
array_for_each 613.24 0.001 613.236 31537 1 99.9% 1673 385816 420870 968
|
|
array_index_get 128.33 0.000 128.332 1615037 0 99.9% 0 38000 38000 8168
|
|
array_index_set 94.68 0.000 94.680 1315035 0 99.9% 0 38000 38000 8168
|
|
array_join 505.97 0.001 505.969 3700029 0 100.0% 0 9380000 9380000 299
|
|
array_literal 134.43 0.001 134.430 1400025 0 0.0% 0 0 192 192
|
|
array_map 595.38 0.002 595.377 51539 1 99.9% 1719 398936 412994 4360
|
|
array_push_pop 1254.23 0.002 1254.225 9100029 0 100.0% 0 20900000 20900000 480
|
|
array_reduce 620.99 0.001 620.985 53539 1 99.9% 1673 385816 420870 1512
|
|
array_slice 77.29 0.001 77.292 73539 0 99.9% 0 10401800 10401800 4360
|
|
array_sort 112.34 0.002 112.340 16739 0 99.7% 1000 1896800 1896800 4360
|
|
branch_if 141.23 0.000 141.230 2616690 0 0.0% 0 0 0 0
|
|
branch_switch 135.31 0.000 135.307 2800023 0 0.0% 0 0 0 0
|
|
call_args 84.99 0.000 84.988 840029 0 0.0% 2 323 547 547
|
|
call_closure 60.32 0.000 60.322 460044 0 0.0% 4 645 1125 1125
|
|
call_method 68.15 0.001 68.150 540032 0 50.0% 2 323 731 731
|
|
call_new_proto 118.05 0.001 118.046 760037 0 33.3% 4 646 1302 1302
|
|
call_recursion 823.34 0.001 823.341 5527029 1 0.0% 3 923 923 547
|
|
call_this 103.59 0.000 103.590 740034 0 50.0% 4 656 1296 1296
|
|
cmp_ops 420.66 0.000 420.658 5600025 0 0.0% 0 0 0 0
|
|
code_forge 788.11 0.001 788.103 100018 0 0.0% 10000 1731670 1731670 0
|
|
coercion_boolean 246.82 0.000 246.822 4250023 0 0.0% 0 0 0 0
|
|
coercion_concat 193.06 0.000 193.059 2100025 0 0.0% 0 3888890 3888890 39
|
|
coercion_nullish 351.24 0.000 351.240 4750032 0 50.0% 0 0 176 176
|
|
coercion_tonumber 135.01 0.000 135.011 2400023 0 0.0% 0 0 0 0
|
|
coercion_toprimitive 193.83 0.000 193.827 460025 1 0.0% 21770 4716080 9536800 1287
|
|
coercion_tostring 374.39 0.001 374.387 4400025 0 0.0% 0 22200000 22200000 186
|
|
gc_array 563.53 0.000 563.530 3880027 0 98.0% 0 9500000 9500000 568
|
|
gc_object 123.01 0.000 123.011 1450025 0 100.0% 0 0 184 184
|
|
gc_string 38.73 0.000 38.727 420025 0 0.0% 0 788890 788890 40
|
|
gc_string_long 1994.45 0.001 1994.453 21000025 2 0.0% 0 7334531 33554441 41
|
|
ic_cache 52.25 0.000 52.245 514039 0 78.9% 0 380000 1882840 1882840
|
|
ic_polymorphic 228.47 0.000 228.465 3833387 0 100.0% 0 0 576 576
|
|
loop_do_while 230.17 0.000 230.173 2600019 0 0.0% 0 0 0 0
|
|
loop_for 1161.60 0.000 1161.594 14000023 0 0.0% 0 0 0 0
|
|
loop_for_in 645.93 0.000 645.925 7581539 0 0.0% 0 3490 3490 968
|
|
loop_for_of 658.31 0.001 658.310 3646539 2 99.0% 4 113320 113320 968
|
|
loop_for_of_string 396.35 0.000 396.345 2723239 1 0.0% 3 58702 58702 132
|
|
loop_index 706.50 0.000 706.500 5761539 0 0.0% 0 3800 3800 968
|
|
loop_while 1171.31 0.000 1171.304 14000023 0 0.0% 0 0 0 0
|
|
loop_while_index 706.24 0.000 706.241 5761539 0 0.0% 0 3800 3800 968
|
|
map_ops 766.96 0.001 766.962 11550027 0 100.0% 0 0 680 680
|
|
math_ops 452.22 0.000 452.220 6300023 0 0.0% 0 0 0 0
|
|
mem_array_grow 375.45 0.000 375.453 3400024 0 0.0% 0 0 8168 8168
|
|
mem_closure_chain 96.61 0.000 96.605 550034 0 0.0% 40000 7038890 10159618 10159618
|
|
mem_cross_call_retain 232.62 0.000 232.617 1530032 0 25.0% 2 3810469 8671045 8671045
|
|
mem_map_retain 57.06 0.000 57.058 560021 0 100.0% 0 1977780 6596748 6596748
|
|
mem_object_graph 101.41 0.000 101.413 884727 0 0.0% 2 328 6291808 6291808
|
|
mem_set_retain 40.63 0.000 40.629 420021 0 100.0% 0 1088890 4929106 4929106
|
|
mem_string_accum 104.20 0.000 104.200 880020 0 0.0% 0 2744473 3064641 3064641
|
|
mem_string_rope 1.29 0.000 1.290 14025 6 0.0% 0 124184000 124184000 124184000
|
|
member_compound 297.07 0.000 297.075 4000076 0 100.0% 0 0 1112 1112
|
|
object_keys 480.06 0.001 480.060 3320027 0 0.0% 0 13800000 13800000 328
|
|
prop_access 162.74 0.000 162.737 2600036 0 100.0% 0 0 200 200
|
|
prop_bracket 156.50 0.000 156.499 1900036 0 100.0% 0 0 192 192
|
|
prop_delete 54.95 0.000 54.952 440034 0 50.0% 0 0 192 192
|
|
prop_dynamic 75.35 0.000 75.350 1000028 0 100.0% 0 0 176 176
|
|
prop_nested 127.90 0.000 127.895 1450025 0 100.0% 0 0 528 528
|
|
prop_set 200.58 0.000 200.578 3000032 0 100.0% 0 0 184 184
|
|
property 151.67 0.000 151.669 99035 0 0.0% 0 231780 231780 24168
|
|
set_ops 660.60 0.000 660.593 8850027 0 90.9% 0 0 296 296
|
|
string_build 1694.45 0.000 1694.453 14520027 4 0.0% 0 6791197 33554520 122
|
|
string_case 175.31 0.000 175.304 1500028 0 0.0% 0 7600000 7600000 0
|
|
string_char 286.18 0.000 286.183 3600025 0 0.0% 0 0 0 0
|
|
string_concat 171.58 0.000 171.576 1700031 0 0.0% 0 1900000 1900000 38
|
|
string_indexof 83.81 0.000 83.804 1000028 0 0.0% 0 0 0 0
|
|
string_replace 52.44 0.000 52.437 560030 0 0.0% 0 1320000 1320000 66
|
|
string_replace_fn 818.93 0.000 818.929 60887 3 0.0% 357 1648894 33562865 11712
|
|
string_split 118.19 0.000 118.194 500030 0 0.0% 0 17160000 17160000 1234
|
|
string_substring 116.74 0.000 116.737 1400030 0 0.0% 0 2150000 2150000 43
|
|
string_trim 39.92 0.000 39.917 420028 0 0.0% 0 1560000 1560000 0
|
|
try_catch_ok 55.31 0.000 55.309 950023 0 0.0% 0 0 0 0
|
|
try_catch_throw 50.82 0.000 50.817 540023 0 0.0% 0 720000 720000 0
|
|
typeof_ops 277.34 0.000 277.339 4100023 0 0.0% 0 0 0 0
|
|
unary_ops 266.91 0.000 266.911 3500023 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);epoch arena
|
|
的临时驻留不计入字节账目(数量见 JSON 的 epoch_objects)。Peak B 为顶层指令
|
|
边界采样的 session arena 高水位;单指令内瞬态与 epoch 高水位不计。Ret B 为 workload 后
|
|
晋升 + 完整 GC 的真存活集,至多含一份引擎内部副本:逃逸屏障留 epoch 原件且顶层
|
|
寄存器根不回写时,测量时晋升会把原件再克隆一份(object_graph 见留存锚测试)。
|