执行时间Linux下探究查看函数执行时长分析(linux如何查看函数)

分析函数执行时长在Linux系统上是一项经常要面对的任务,有时候可能不得不调试完整的程序或者应用,看看函数们在某项任务上花费的时间。有一些方法可以用来查看函数开始和停止时间,大多数都可以在Linux系统上执行。

一种方法是使用 `time` 命令,可以在你运行Linux命令时容易查看执行时间:

$ time find . -name \*.txt

这将会列出花费搜索的时间:

real 0m0.009s
user 0m0.004s
sys 0m0.003s

`time` 对执行一次性、大量运行的程序或者多次运行的程序,会打印每次的用时。

另一种是使用 `perf` 工具,这是一种性能分析工具,可以用来查看Linux调用的性能细节,可以查看函数运行的耗时等信息:

perf stat find . -name '*.txt'

这将会打印出不同函数调用的时间耗费:

65544.907972 task-clock                #    0.999 CPUs utilized          
39,855 context-switches # 0.611 K/sec
28 page-faults # 0.000 K/sec
8,341,271,556 cycles # 1.272 GHz
3,337,449,969 stalled-cycles-frontend # 39.98% frontend cycles idle
214,965 branch-misses # 0.26% of all branches

`perf` 工具不仅仅可以用来查看函数的执行时长,还可以用来查看内存、系统调用、缓存等等性能方面的数据。

另外,还有一种更新的工具叫做 `ftrace`,它是一种方便探索内核当中不同函数执行时间的工具,可以用来追踪诸如系统调用,中断处理器,定时器等内核函数,以及封装在内核函数里面的子函数。

总之,在Linux系统上分析函数执行时长有很多种方法,从 `time` 命令到 `perf` 和 `ftrace` 工具,都可以很容易的获得函数的执行时长。


数据运维技术 » 执行时间Linux下探究查看函数执行时长分析(linux如何查看函数)