发布网友 发布时间:2022-04-21 10:04
共1个回答
热心网友 时间:2023-07-11 00:40
对于一个嵌入式程序员来说,“我的程序到底运行多快”,是我们最为关心的问题,因为速度,实时性,永远是嵌入式设备性能优化的基本立足点之一。 可惜的是,我们平时常用的测试运行时间的方法,并不是那么精确的。换句话说,想精确获取程序运行时间,不是那么容易的。也许你会想,程序不就是一条条指令 么,每一条指令序列都有固定执行时间,为什么不好算?真实情况下,我们的计算机并不是只运行一个程序的,进程的切换,各种中断,共享的多用户,网络流量, 高速缓存的访问,转移预测等,都会对计时产生影响。 可惜的是,在性能测量领域,我们有gprof,有intel的vtune,却缺少相应 的,广泛流传的参考文献。如果你希望能建立起自己的工具,或者对具体的测量方式感兴趣,那么本文也许会对你有帮助。我想,应该有很多人希望知道计时机制的 原理,因为针对不同的系统,环境,会有不同的解决方案。本文主要针对Linux和X86体系环境,主要思想来源于"Computer System A Programmer's Perspective",夹杂了一些自己的理解,并试图给出我自己写的一个通用测量工具,支持用户自配置。本文有时的对象是程序有时描述对象是进程,这个请自行理解,因为一个程序就是在一个进程里面执行的...