线程感知/安全(意味着我可以安全地分析多线程应用程序),如果是oprofile
,与 有什么区别perf
?
问问题
837 次
2 回答
0
1 是的,oprofile
是线程感知的。
逐字逐句来自 man opcontrol
(oprofile
的控制工具):
--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 回答