如何使用火焰箱获取使用Rayon编写的代码的详细火焰图?

时间:2018-03-12 13:17:06

标签: rust flamegraph performance-measuring

我尝试使用flame crate使用Rayon编写的代码来获取一些效果指标:

extern crate flame;

flame::start("TAG-A");
//Assume vec is a Vec<i32>
vec.par_iter_mut().filter(|a| a == 1).for_each(|b| func(b));
//func(b) operates on each i32 and sends some results to a channel
flame::end("TAG-A");
//More code but unrelated
flame::dump_stdout();

这很好,但只提供整个并行迭代器的信息。我想在函数func上获得一些更精细的细节。

我已尝试在函数中添加一个开始/结束,但运行时信息仅在我调用flame::commit_thread()时可用,然后它似乎只将其打印到stdout。理想情况下,当我在代码末尾调用dump时,我想打印出没有给定标记的时间。

有没有办法从所有线程转储标签?火焰的文件并不好。

0 个答案:

没有答案
相关问题