3

线程感知/安全(意味着我可以安全地分析多线程应用程序),如果是oprofile,与 有什么区别perf

4

2 回答 2

0

1 是的,oprofile是线程感知的。

逐字逐句来自 man opcontroloprofile的控制工具):

--separate=[无、库、内核、线程、CPU、全部]

根据给定的分隔符分离样本。'lib' 分隔每个应用程序的动态链接库示例。'kernel' 将每个应用程序的内核和内核模块样本分开;“内核”意味着“库”。'thread' 为每个线程和任务提供了分离。'cpu' 为每个 CPU 分开。'all' 意味着上述所有选项,'none' 关闭分离。

2oprofile是系统范围的分析器,它作为守护进程运行,默认情况下会分析所有系统活动。

于 2012-09-21T14:32:47.147 回答
0

Oprofile 和 Perf 都是线程感知的,可以分析多线程应用程序。如果你问他们,他们甚至可以分析内核。

OProfile 是一个分析器(一个可以记录和注释的工具)。它是第一个(如果不是第一个)实际使用硬件性能计数器的分析器之一。

Perf 是一组分析工具,可帮助您了解应用程序的运行情况(stat、top、record、annotate 等)。它是 Linux 内核项目的一部分(尽管这些工具在用户空间中工作)。它仍在积极开发中,据我所知,API 不时发生巨大变化。

于 2013-03-08T17:57:09.090 回答