跟踪pthread调度

时间:2010-01-29 16:04:49

标签: linux multithreading trace

我想要做的是创建一些图表,详细说明Linux中(两个)线程的执行情况。我不需要看看线程的作用,只是在它们被安排时以及基本上是多长时间的时间线。

我花了最近几个小时在互联网上寻找跟踪pthreads计划的方法。不幸的是,我发现的两个项目需要内核重新编译(LTTng)或glibc修补(NPTL Trace Tool),这两个我都做不到(大型集中管理系统,我没有sudo权限)。

还有其他方法可以做这样的事情,还是我不得不求助于找到一台可以修补/重新编译我想要的笔记本电脑?

祝你好运

PS:我会链接到这两个项目,但该网站不允许我(声誉< 10)。 Google在项目名称上的第一个搜索结果是正确的。

3 个答案:

答案 0 :(得分:3)

构建已检测的glibc / libpthread.so不需要超级用户权限。属于ptt_traceNPTL Trace Tool程序将使用已检测的库运行您的程序。

答案 1 :(得分:1)

也许像英特尔的VTune

答案 2 :(得分:1)

还有一个名为pthreadw的工具(在sourceforge上)

这是一个包装器库,它拦截对pthread库的常用函数的调用,并报告统计数据,例如玩锁,条件变量等的典型时间...... 它目前无法导出痕迹,只能导出文本摘要报告。