第3方的证据,证实了上面的说法: jbb -> RE: How to obtain 1.5 DMIPS/MHz ? (Apr. 24, 2008 2:45:52 AM)
Hi,
Thanks for your comments. I have continued my tests with the Dhrystone code with the following setting: - code running in Flash - 24MHz with 0 wait states I have found around 36 DMIPS, that is 1.5 DMIPS/MHz. This is in line with the number announced.
But...by reading carefully different documents about Dhrystone tests, it appears that the functions "inlining" must be disabled.
So I have re-do my measures without the inline mode and the performance fall down to approx 1.29 DMIPS/MHz. I have also tested the 16-bit instructions option and I have measured less than 0.9 DMIPS/MHz (with no inline mode).
It would be helpfull for me if someone can confirm my results. 数据来自microchip 论坛: http://forum.microchip.com/printable.aspx?m=322135
一些解释: 1.relative equivalance DMIPS/MHz指的是:“without the inline mode and the performance fall down to approx 1.29 DMIPS/MHz”。 这意味着,M4K的1.56DMIPS/MHz是因为使用了inline模式,不使用inline模式时M4K为约1.29DMIPS/MHz;而CortexM3的1.25DMIPS/MHz是在未使用inline模式下得到的。
2.but with double the code size of CortexM3...指的是:M4K的约1.29DMIPS/MHz是通过32位模式得到的,因此它的代码大小(大约)是CortexM3的2倍。另外,M4K使用16位模式时为:less than 0.9 DMIPS/MHz (with no inline mode)