用途:面向 Rust 应用的性能分析与优化,帮助定位 CPU、内存和二进制体积方面的性能问题。触发场景包括代码运行慢、内存占用高、需要优化函数、需要剖析代码或做基准测试。
主要能力与工具:criterion 用于函数级基准测试(cargo bench);flamegraph 生成 CPU 火焰图(cargo flamegraph);perf 用于 Linux 详细剖析(perf record);valgrind 的 massif 做堆内存分析(valgrind --tool=massif);heaptrack 追踪内存分配(heaptrack ./binary);cargo-bloat 分析二进制体积(cargo bloat);tokio-console 观察异步任务。
使用方式:基准测试可编写 benches 下的 criterion 用例后运行 cargo bench;火焰图用 cargo flamegraph --bin <名称>;内存分析用 valgrind --tool=massif 配合 ms_print,或 heaptrack 配合 heaptrack_gui;体积分析用 cargo bloat --release --crates 或 cargo bloat --release -n 20。优化策略按优先级为算法改进、数据结构调整、减少内存分配、并行化、缓存利用、SIMD 等低层优化。
限制与注意事项:应在 release 构建下测量,避免使用调试构建;文档给出 PGO 流程(-Cprofile-generate 与 -Cprofile-use 配合 llvm-profdata merge)。资料未提供具体收费、平台支持范围或效果保证,相关细节暂未提供。