gpt4 book ai didi

c - 从二进制大小得出性能影响

转载 作者:太空宇宙 更新时间:2023-11-04 05:18:55 26 4
gpt4 key购买 nike

我正在从事一个电子项目。在项目中我有一个微 Controller 。我想衡量我的更改在时间性能方面的影响。

二进制文件并不大(实际上是 11760 字节)。微 Controller 运行在 20Mhz 左右(基于晶体值)。所以基本上他每秒可以运行20M的操作。

您认为根据每个函数的指令数来检查更改对性能的影响是个好主意吗?像这样的东西:

enter image description here

最佳答案

您似乎混淆了静态指令与动态指令计数。

函数或二进制文件的大小并没有说明它将运行多少条指令。以一个简单的循环为例,它(在我编写的一些伪程序集中)翻译成

    mov r1, 100
label1:
dec r1
jnz label1

这是 3 条静态指令,会占用二进制文件的一些小空间(取决于它们的操作码大小),但运行它的处理器必须执行 100 次循环,总计 201 条动态指令。当然,性能取决于执行的动态指令的数量(加上由气泡、错误预测、管道深度等引起的任何延迟)。

例如,如果您要将 100 替换为 10000,您将在二进制文件中占用完全相同的空间(假设 100 最初存储为 int),但执行速度可能会慢 100 倍。

关于c - 从二进制大小得出性能影响,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20868445/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com