我想做一个程序,我需要找到做数学函数的时间。假设我正在做一个计算a/b,那么我怎么才能找到完成这个计算所需的时间(毫秒)? 请帮我如何找到做数学运算所花费的时间?
1
A
回答
2
通常的过程是这样做很多时间(比方说,N
),然后除以该N
所花费的时间。
例如,在伪码:
count = 100000
startTime = secondsSinceStartOfDay()
for i = 1 to count
do nothing
duration = secondsSinceStartOfDay() - startTime
print "Milliseconds per NOP = ", (duration * 1000/count)
startTime = secondsSinceStartOfDay()
for i = 1 to count
x = a/b
duration = secondsSinceStartOfDay() - startTime
print "Milliseconds per division = ", (duration * 1000/count)
这允许你打折的循环本身,因为你具有和不操作测量的成本被测量。
你必须小心积极的优化者,这可能会决定,因为你实际上没有使用任何你计算的东西,它可以自由地优化循环代码的存在。我已经看到了这种情况。不用说,如果您正在进行性能测量,您应该了解封面下发生的情况。
+0
您还在测量执行循环的时间,这对于如此快速的操作来说是非常重要的。 – starblue 2011-01-23 09:11:48
-1
看看ctime库。
#include<ctime>
#include<time.h>
clock_t t1=clock();
//Your calculation here
clock_t t2=clock();
cout<<"Time taken" << doubel(t2-t1) << "clock cycles";
相关问题
- 1. 如何计算java中的服务所花费的总时间?
- 2. 如何找到通过UDP发送数据所花费的时间
- 3. 总共花费的时间和所有线程所花费的平均时间
- 4. SQL:高效计算花费的时间
- 5. MapReduce作业所花费的时间
- 6. 如何计算函数在jQuery中花费多少时间?
- 7. 与jQuery做数学运算
- 8. 如何使用学校数学运算找到按位与运算值
- 9. 查找过程骡流量所花费的时间
- 10. AS 2.0和gradle 2.0第一次运行所花费的时间
- 11. 如何计算一个进程在目标c中所花费的时间?
- 12. 如何计算在keil c中执行指令所花费的时间c
- 13. 如何显示所花费的月数?
- 14. 对时间值的数学运算
- 15. 算法花费时间运行但容易验证?
- 16. 如何在Hadoop中查找Map/Reduce任务所花费的CPU时间
- 17. 如何记录jdbc组件所花费的时间
- 18. 如何检查一段代码所花费的时间R
- 19. 如何管理sp-sql-server所花费的长执行时间
- 20. 如何取消所花费的时间太长使用CompletionService
- 21. Python:如何衡量等待I/O所花费的时间?
- 22. 计算从一种状态到另一种状态所花费的时间:SQL
- 23. 如何查找花费大量时间的SQL Server查询?
- 24. 花费的实际时间
- 25. 如何找出哪种方法花费很多时间?
- 26. 准确定时函数花费多长时间运行
- 27. 搜索数据库所花费的时间
- 28. Selenium webdriver find_element_by_xpath花费时间
- 29. 在json中花费时间
- 30. :app:transformClassesAndResourcesWithProguardForRelease花费太长时间
需要大约0毫秒的时间。你为什么想知道? – 2011-01-23 09:00:17