🟡 [M24] memory scroll_rss 的 lines_read 记录值不等于实际读取行数 #43
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
问题
bench_scroll_rss以sample_interval = 100_000步进读取行,但extra["lines_read"]记录为max_lines.min(total),不是实际读取次数。影响
quick 模式下可能只读取 1 行,却报告 100000 行;非 quick 模式也会报告 total 而非采样次数,内存 benchmark 的额外指标误导。
位置
crates/bench/src/suites/memory.rs:101crates/bench/src/suites/memory.rs:127建议
把
lines_read改为实际读取次数,例如rss_samples.len()或单独维护计数器。修复方案
Commit:
e6e0e2c改动内容 (
crates/bench/src/suites/memory.rs)upper = max_lines.min(total)作为循环上界,正确处理空文件边界lines_read计数器,仅在get_line(i).is_some()时递增,语义精确为"成功读取行数"extra["lines_read"]从max_lines.min(total)改为lines_read修复前后对比