#callgrind #requests #partial #stop #collect-atstart-no

partial-callgrind

Rust中的Callgrind客户端请求

1个不稳定版本

0.1.0 2023年5月7日

#311 in 性能分析

MIT许可证

4KB

partial-callgrind


lib.rs:

易于使用的客户端请求,可以在代码的特定位置启动/停止callgrind,以进行精确的性能分析(100% Rust)。

目前仅支持x86_64。

示例

跳过Vec初始化代码,仅分析排序。以发布模式编译,然后使用valgrind --tool=callgrind --collect-atstart=no --instr-atstart=no {exec}

use partial_callgrind::{start, stop};
use rand::Rng;

fn main() {
    let mut rng = rand::thread_rng();

    let mut data: Vec<u8> = (0..10_000).into_iter().map(|_| rng.gen::<u8>()).collect();
    start();
    data.sort();
    stop();
}

无运行时依赖