gprof 测的时间不准,求解,该如何解决
gprof 测的时间不准,求解
我用 gprof 工具测一个程序在cpu运行时间(即main 函数所用时间)为3000s 左右 ,而该程序实际的cpu运行时间为8000s以上(用top测试). 为什么 会有这么大的差距?后来我在编译时去掉-pg参数,该程序的cpu运行时间也有6000s,依然与gprof测到的总时间相差远,为什么?
------解决方案--------------------
中间有sleep吧
------解决方案--------------------
因为执行程序占用CPU负荷会影响系统时钟,所以用同一台机器上的计时程序会有误差。
最好手动掐秒表对需要计时的代码段计时。(循环执行若干次直到十秒级)
我用 gprof 工具测一个程序在cpu运行时间(即main 函数所用时间)为3000s 左右 ,而该程序实际的cpu运行时间为8000s以上(用top测试). 为什么 会有这么大的差距?后来我在编译时去掉-pg参数,该程序的cpu运行时间也有6000s,依然与gprof测到的总时间相差远,为什么?
------解决方案--------------------
中间有sleep吧
------解决方案--------------------
因为执行程序占用CPU负荷会影响系统时钟,所以用同一台机器上的计时程序会有误差。
最好手动掐秒表对需要计时的代码段计时。(循环执行若干次直到十秒级)