linux下统计程序/函数运行时间 您所在的位置:网站首页 c语言编译时间怎么算的 linux下统计程序/函数运行时间

linux下统计程序/函数运行时间

2024-07-07 06:40| 来源: 网络整理| 查看: 265

如果只是初步统计或比较各函数的运行时间,可以用以下方法,若是想详细统计项目中各个函数时间,建议使用第三方工具

一. 使用time 命令

例如编译一个hello.c文件

#gcc hello.c -o hello

生成了hello可执行文件,此时统计该程序的运行时间便可以使用如下命令

#time ./hello 在程序运行结束后便会显示出所需时间

real 0m2.913s user 0m0.012s sys 0m0.508s 123 二. 使用clock()函数统计 #include #include /*要包含的头文件*/ int main(int argc, char *argv[]) { /* Init */ clock_t start, end; start = clock(); /*记录起始时间*/ printf("time calc test\n"); /* * * * 函数进行的一些列操作 * * */ /* Final Status */ end = clock(); /*记录结束时间*/ { double seconds =(double)(end - start)/CLOCKS_PER_SEC; fprintf(stderr, "Use time is: %.8f\n", seconds); } return 0; } 运行结果: # time ./helloTest time calc test Use time is 0.00003100 real 0m0.003s user 0m0.000s sys 0m0.000s 1234567891011121314151617181920212223242526272829303132333435

CLOCKS_PER_SEC用于将clock()函数的结果转化为以秒为单位的量

三. 优缺点对比

time命令在不修改代码的情况下记录程序运行时间,但是,从上面对比可看出time命令统计的结果比较粗糙。 另外,time命令,统计的结果包涵程序加载和退出的时间。因此,若想得出函数运行时间较为准确的结果,建议使用clock()函数。 若想了解整个项目中各个函数的运行时间,以期获得性能提升,建议使用——开源工具



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有