clock() - c 函数的执行时间

标签 c performance time clock

我正在尝试测量 C 代码块的执行时间。我的代码中有这样的内容:

clock_t begin, end;
double time_spent;
begin = clock();
ATL_dsymv(122,n,alfa,A,n,X,1,beta,Y,1);
end = clock();
time_spent = (double)(end - begin) / CLOCKS_PER_SEC;
printf ("(%f seconds)",time_spent);

但它总是返回:(0.000000 秒)。我在 for 之类的更简单的代码块上尝试了同样的事情,但结果相同。我究竟做错了什么?非常感谢。

最佳答案

clock 通常具有非常差的分辨率,大约为 10 毫秒。这很可能是您的问题。如果您使用的是 POSIX 系统,请将 clock_gettimeCLOCK_PROCESS_CPUTIME_ID 时钟一起使用以获得高分辨率结果。其他类型的系统可能有系统特定的方法来实现相同的目的。

关于clock() - c 函数的执行时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15822933/

相关文章:

无法从打开的文件中读取

mysql - 实时网站速度减慢太多

sql-server - 许多连接与大数据查询

javascript - 用于时间跟踪的正则表达式验证

perl - 如何将文件创建时间与 Perl 中的当前时间进行比较?

c - 如何从字符串中获取行?

c - 同步访问双向链接列表

php - 创建基于动态时间的事件(例如建筑施工时间等)的最佳方式是什么?

c - 'if' 应该测试 '==' 还是 '!='

python - 删除列表中条目的最有效方法