【发布时间】:2017-07-25 14:25:41
【问题描述】:
我必须测量用户空间程序与其交互的驱动程序之间的延迟。我基本上是通过这个应用程序发送一个数据包。 latecny 在用户空间中的write 到内核中对应的write 函数之间
我在用户空间中使用了clock_gettime 和CLOCK_MONOTONIC,并且
getrawmonotonic 在内核(驱动程序)中,当我看到差异时,它是巨大的(大约 4 毫秒)。所以我肯定使用了错误的方法。
那么,最好的方法是什么?
【问题讨论】:
-
什么和什么之间的延迟?
-
@EugeneSh。更新了问题
-
perf是一个很棒的工具。参见例如perf.wiki.kernel.org/index.php/Main_Page -
valgrind 是一个相当知名的 linux 分析器
-
perf 和 valgrind 是优秀的工具,正如其他人已经提到的那样。 strace -T 也可能有帮助。
标签: c linux performance timer linux-kernel