需求
在 tutorial/test.py 增加 --bench 参数,用于性能基准测试。
行为
- 对每个
.kv 文件,在同目录下查找同名的 .py 和 .c 实现(逻辑等价,仅语言不同)。
- 分别运行 kvlang、Python、C(
gcc -O3 编译)三个版本,测量 wall-clock 耗时。
- 输出
benchmark.csv,列:file, kvlang_ms, python_ms, c_ms。
约束
- C 代码使用
gcc -O3 编译。
- 三个版本输出必须一致(与
.kv 文件 # 期望输出 注释对齐),不一致时 benchmark 结果标记为 invalid。
- 缺失
.py 或 .c 对应文件时,该文件跳过(不参与 benchmark),但不应报错中断。
--bench 应与现有 --filter / --no-build 等参数兼容。
参考
当前 test.py 路径:tutorial/test.py,已通过 # 期望输出 注释自动生成测试用例。
需求
在
tutorial/test.py增加--bench参数,用于性能基准测试。行为
.kv文件,在同目录下查找同名的.py和.c实现(逻辑等价,仅语言不同)。gcc -O3编译)三个版本,测量 wall-clock 耗时。benchmark.csv,列:file, kvlang_ms, python_ms, c_ms。约束
gcc -O3编译。.kv文件# 期望输出注释对齐),不一致时 benchmark 结果标记为 invalid。.py或.c对应文件时,该文件跳过(不参与 benchmark),但不应报错中断。--bench应与现有--filter/--no-build等参数兼容。参考
当前
test.py路径:tutorial/test.py,已通过# 期望输出注释自动生成测试用例。