【问题标题】:Multicore and OProfile多核和 OProfile
【发布时间】:2012-09-10 17:54:24
【问题描述】:

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

【问题讨论】:

    标签: c linux profiling oprofile


    【解决方案1】:

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

    来自opcontroloprofile 的控制工具)的逐字记录:

    --separate=[none,lib,kernel,线程,cpu,all]

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

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

    【讨论】:

      【解决方案2】:

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

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

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-08-30
        • 1970-01-01
        相关资源
        最近更新 更多