回答
#include<time.h>
main()
{
clock_t t1=clock();
printf("Dummy Statement\n");
clock_t t2=clock();
printf("The time taken is.. %g ", (t2-t1));
请看下面的链接。 What’s the correct way to use printf to print a clock_t?
http://www.velocityreviews.com/forums/t454464-c-get-time-in-milliseconds.html
一条指令将花费比1毫秒更短的时间执行。如果你试图测量多条指令,它会变得复杂(关于多次调用指令的循环)。
此外,您可以使用的大多数定时功能只是:功能。这意味着他们也会执行指令。如果你想要一个指令的时间,那么最好的办法是查找你正在使用的处理器的规格,看看它需要多少个周期。
以编程方式进行此操作是不可能的。
编辑:
既然你已经更新了你的问题现在参考一些说明。您可以在某些处理器上测量亚毫秒时间。很高兴知道这个环境。这将在x86和Linux上工作,其他环境将有所不同。
Clock get time允许亚纳秒精度。或者你可以自己调用rdstc指令(在多处理器或smp系统上运行这个指令 - 你可能在测量错误的东西,比如指令运行在不同的处理器上)。
我需要测量执行一组指令所需的时间。但所花费的时间少于1毫秒。我已经尝试过使用时钟功能。有什么建议么??? – Romaan
实际到的时间实际上完成一条指令取决于时钟周期时间以及指令通过处理器的流水线深度。正如戴夫所说,通过制作程序你无法真正发现这一点。您可以使用您的操作系统提供的某种定时功能来测量完成一些小指令所需的CPU时间。如果你这样做,尽量不要使用任何依赖内存或分支的指令。理想情况下,你可能会做某种逻辑或算术运算(所以也许在C中使用一些内联汇编)。
- 1. 程序执行的C++测量时间
- 2. 使用RDTSC指令在C中测量代码执行时间
- 3. C++测量执行时间
- 4. 测量程序执行时间
- 5. 如何测量执行的汇编程序指令的数量?
- 6. 测量多线程的执行时间
- 7. C - 测量功能时间执行
- 8. 使用C#测量执行时间
- 9. 测量时间执行
- 10. 测量执行时间
- 11. 测量Java执行时间
- 12. 测量执行时间短
- 13. 测量java短时间运行的线程执行时间
- 14. C程序的时间测量为0
- 15. 用C#测量线程的执行时间
- 16. 在mapForce中测量XSLT 2.0程序的执行时间
- 17. 测量执行程序时间的方法
- 18. 如何测量100次程序执行的时间?
- 19. 问题测量程序执行时间的Linux /猛砸
- 20. 如何测量Spark GraphX应用程序的执行时间?
- 21. 测量执行时间 - 在程序代码或shell中?
- 22. C程序的命令行执行
- 23. C指令不按顺序执行
- 24. 当我从Java代码执行它时,应该如何测量C++程序的执行时间?
- 25. 如何测量每一行的执行时间在C#
- 26. 在linux中测量c程序的运行时间
- 27. 测量时间进行简单的指令
- 28. 如何在执行期间测量C/C++/Java程序使用的内存?
- 29. 如何计算在ARM程序中执行的指令数量?
- 30. 在多线程环境中测量线程的执行时间
指令?以毫秒为单位?我想这是你正在谈论的一个古老的计算机。你可以用秒表来测量它... – valdo
非常有趣...但是,谢谢 – Romaan
另一种方法是读取编译器生成的汇编代码(使用gcc试试-S开关),然后查找时钟周期数目标处理器文档中的每个汇编指令。 – potrzebie