【发布时间】:2010-01-13 09:43:23
【问题描述】:
我正在用 C 做一些原型设计工作,我想比较一个程序需要多长时间才能完成各种小修改。
我一直在使用clock;来自 K&R:
clock返回程序自执行开始以来使用的处理器时间,如果不可用,则返回-1。
这对我来说似乎是明智的,并且给出的结果与我的期望大致相符。但是有没有更好的方法可以用来查看哪些修改会提高/降低我的代码效率?
更新:我对 Windows 和 Linux 都感兴趣;对两者都适用的东西是理想的。
更新 2:我对分析一个复杂问题的兴趣不如一个简单程序从开始到结束的总运行时间/时钟周期——我已经知道我的程序的哪些部分很慢. clock 似乎符合这个要求,但我不知道它对后台运行的其他进程和占用处理器时间的攻击有多么脆弱。
【问题讨论】:
-
我不知道有一个分析器可以在多个操作系统上工作。要么使用多个(针对每个 O/S),要么针对一个 O/S 使用一个,并希望您在一个平台上进行剖析而做出的改进也将自动在另一个平台上得到改进。
标签: c performance profiling