最近有人要求我为我们开发的算法生成 MIPS(每秒百万条指令)。该算法由一组 C 风格的函数公开。我们在戴尔 Axim 上练习了代码,以对不同输入下的性能进行基准测试。
这个问题来自我们的硬件供应商,但我主要是一名 HL 软件开发人员,所以我不确定如何回应请求。也许具有类似硬件/软件背景的人可以提供帮助...
非常感谢你的帮助。
查尔斯
感谢你的帮助。我认为 S.Lott 一针见血。作为后续行动,我现在有更多问题。
5 关于如何测量 MIPS 的任何建议?我听说有人建议运行我们的算法并将其与 Dhrystone/Whetstone 基准进行比较以计算 MIS。
6 既然算法不需要实时运行,那么MIPS真的是一个有用的度量吗? (例如,阶乘(N))还有哪些其他方法可以量化处理要求? (我已经测量了运行时性能,但它不是一个令人满意的答案。)
7 最后,我假设 MIPS 是一个粗略的估计,将是 dep。关于编译器、优化设置等?
最佳答案
我敢打赌,您的硬件供应商会问您需要多少 MIPS。
如“您需要 1,000 MIPS 的处理器还是 2,000 MIPS 的处理器?”
管理层将其翻译为“多少 MIPS?”
硬件提供 MIPS。软件消耗 MIPS。
你有两个自由度。
如果处理器没有足够的 MIPS,你的算法就会“慢”。
如果处理器有足够的 MIPS,你的算法就会“快”。
我将“快”和“慢”放在引号中,因为您需要有一个性能要求来确定“足够快以满足性能要求”或“太慢而无法满足性能要求”。
在 2,000 MIPS 处理器上,您可能需要 2 秒的时间。但是在 1,000 MIPS 处理器上,这会爆炸到无法接受的 4 秒。
您需要多少 MIPS?
记住速率(以每秒指令数为单位)* 时间(以秒为单位)为您提供指令。
别说是3*750 MIPS。它不是;这是 22.5 亿条指令。
关于arm - 如何计算 ARM 处理器算法的 MIPS,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/678771/