用途:对 Rust 库做系统性性能优化审查,结合动态剖析与静态代码分析,找出运行时性能与内存使用方面的优化机会。
主要能力:先检测可用工具(flamegraph、cargo-bloat、samply、heaptrack 等),运行 cargo bench 并保存基线,生成火焰图或采样剖析,检查二进制与依赖体积;随后按优先级扫描代码模式,包括热路径中的 .clone()、.to_string()、.to_vec(),不必要的分配,缺失 #[inline],低效迭代器,Box/Arc 过度使用,HashMap/BTreeMap 未预分配容量,热路径中的 format!(),边界检查,以及结构体内存布局与填充。
使用方式:先运行剖析工具再分析代码,例如 cargo bench、cargo flamegraph --bench <benchmark_name>、cargo bloat --release、cargo bloat --release --crates;工具缺失时按资料提供的命令安装,如 cargo install flamegraph、cargo install cargo-bloat、cargo install samply,Linux 下 sudo apt install heaptrack heaptrack-gui。静态扫描可用 rg 命令查找 .clone()、HashMap::new()、format!()、dyn Trait 等模式。为获得准确剖析,可在 Cargo.toml 的 [profile.release] 中设置 debug = true。
输出:生成按 Critical/Important/Minor 排序的发现清单,每条含 file:line 与具体修复建议;并生成包含执行摘要、剖析结果、分类发现、建议改动与附录的 Markdown 详细报告。
适用场景:审查 Rust 代码性能、优化库或二进制体积、排查内存分配热点。
限制:资料未提供具体性能提升数值、支持平台细节或收费信息;部分工具(如 heaptrack)仅限 Linux,flamegraph 在 macOS 通过 dtrace 工作。