Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用TSC/RDTSC_C_Time_Timestamp_Rdtsc - Fatal编程技术网

如何使用TSC/RDTSC

如何使用TSC/RDTSC,c,time,timestamp,rdtsc,C,Time,Timestamp,Rdtsc,我试图测量在代码中运行某些函数所花费的时间。因为使用RDTSC是最有效的,所以我想使用它。然而,我不明白如何实现这一点 有人能举一个例子说明我们如何用代码(C语言)实现这一点,并将周期数转换为毫秒吗?例如,测量读取文件所需的时间 我找不到关于实现的太多解释,但只找到了定义 谢谢。通过谷歌搜索“使用RDTSC对代码执行C进行计时的示例”,我发现,和其他人的搜索速度相当快。虽然在现代操作系统上,计时到周期的精度不一定是计时执行的最佳或最简单的方法,但这种精度可能无法重复。本文介绍了在第16页C:中添

我试图测量在代码中运行某些函数所花费的时间。因为使用RDTSC是最有效的,所以我想使用它。然而,我不明白如何实现这一点

有人能举一个例子说明我们如何用代码(C语言)实现这一点,并将周期数转换为毫秒吗?例如,测量读取文件所需的时间

我找不到关于实现的太多解释,但只找到了定义


谢谢。

通过谷歌搜索“使用RDTSC对代码执行C进行计时的示例”,我发现,和其他人的搜索速度相当快。虽然在现代操作系统上,计时到周期的精度不一定是计时执行的最佳或最简单的方法,但这种精度可能无法重复。本文介绍了在第16页C:中添加的内联asm。如果您的cpu支持常量_tsc,那么这非常简单,您可以使用
cat/proc/cpuinfo
检查常量_tsc,并查看“flags”字段。