lu-table-insert-hot — table.insert 与 t[i]=
主张
在这台机器上测量:主要热情况 table_insert 比例前/后约 ~4.74×(之后更快)。默认严重性保持 off。仅凭此填充 不要 升级到 error。
如何测量
- 测试架构:
packages/luaperf/examples/bench/evidence_lu001.lua - 协议: warm=3;取9轮的中位数;在适用的情况下进行垃圾回收/收集
- 原始数据行:
lu-table-insert-hot.jsonl
运行时(本证据文件)
| Field | Value |
|---|---|
| 时间 | 2026-10-22 亚洲/上海(机器时钟;JSONL 时间戳为 UTC) |
| Toolchain | Lua 5.4.7 |
在 (index_assign) 之后的中位数 | 2.029000 毫秒 (操作=200000,比率=1.000000) |
插入表之前的中位数 (table_insert) | 9.620000 毫秒 (操作数=200000,比例=4.741252) |
(hash_len_append) 之后的中位数 | 3.926000 毫秒 (操作次数=200000,比例=1.000000) |
插入表与长度之前的中位数 (table_insert_vs_len) | 9.620000 毫秒 (操作=200000,比例=2.450331) |
(small_index) 之后的中位数 | 3.814000 毫秒 (操作次数=100,比率=1.000000) |
插入前的中位数 (small_insert) | 13.184000 毫秒 (操作=100,比率=3.456738) |
| 主比率 前/后 | ~4.74× (table_insert) |
方向和绝对毫秒数对机器/工具链/选项敏感。在工具链或机器更改后,请重新运行测试套件。
与 lint 的对应
luaperf-lint lu-table-insert-hot 默认保持 关闭。建议升级:否。
限制
- 微基准;不是应用程序配置文件。
- 小 N 行可能接近计时器噪声;对于比率声明,建议使用热(非小)案例。
- I/O 规则(print/echo/puts/writeln)丢弃到
/dev/null— 取决于环境。