Hello Pierluigi,
the DMIPS numbers are announced by ARM and almost all vendor use them.
There are three DMIPS numbers according to the compiler optimization.
DMIPS/MHz is the DMIPS per 1MHz clock frequency.
Regarding Cortex-M3, they are 1.25/1.50/1.89 DMIPS/MHz.
Regarding Cortex-M4, they are 1.25/1.52/1.91 DMIPS/MHz (without FPU) and 1.27/1.55/1.95 DMIPS/MHz (with FPU).
I don't know why the number increases with the FPU.
DMIPS is the abbreviation of Dhrystone MIPS which is measured by the relative performance of VAX-11.
And Dhrystone benchmark measures an integer performance.
From DIMIPS/MHz view point, Cortex-M3 is equivalent to Cortex-M4 because the implementations are the same other than FPU.
Therefore the higher clock frequency has, the better performance gains.
Anyway, the DMIPS number is the best case and it would not always reproduce on the real device.
Simply thinking, Cortex-M4 at 100MHz takes 125DMIPS which is better than Cortex-M3's 100DIMIPS.
Best regards,
Yasuhiko Koumoto.