【问题标题】:Calculate MIPS after running gprof?运行gprof后计算MIPS?
【发布时间】:2018-07-17 20:45:30
【问题描述】:

我的音频 DSP 算法处理输入声音文件(45 秒的 16 kHz 音频)。模拟完成后,gprof profiler 告诉我:

Cycles: total = 6846310893

这些信息是否足以计算此算法的“MIPS”?

假设我的目标 DSP 处理器是“100 MIPS”。
这个算法将从这 100 个中取出多少?

编辑:
处理器每个周期执行 1 条指令。
处理器以 600 MHz 运行。

【问题讨论】:

  • 如果“MIPS”是指“每秒数百万条指令”,那么您的问题甚至没有意义。这是对处理器能力的衡量,而不是程序或算法的特征。
  • 此外,我不了解您的特定 DSP,但处理器通常需要多个周期来执行一条指令,因此计算期间花费的周期数并不能直接说明你执行了多少指令。在任何情况下,您都需要相应的时钟速率才能将循环计数转换为时间。
  • 添加了更多信息。我同意,但我认为问题的含义很清楚。
  • 最后,在任何绝对意义上,特定计算的指令等价物的成本都不会从处理器的处理速率中“扣除”。相反,两者一起为您提供了计算需要多长时间的下限。
  • 同样,@Danijel,算法与运行它的机器的处理能力无关,也没有直接关系。 “MIPS”对于算法没有有意义的定义。相反,对特定输入数据使用算法的特定作业涉及执行一定数量的指令(可在 MI,而不是 MIPS 中测量)以及运行它的处理器的速度( 可在MIPS) 为运行该作业所需的时间设置了一个下限。

标签: c debugging profiling signal-processing


【解决方案1】:

好的...
6846310893 每 45 秒的周期是:152.14“MIPS”,这意味着我的 600 MHz 处理器可以(几乎)实时执行其中的 4 个。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-01-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多