Wherstone benchmark on the HiFive1

Hello everyone,

I just received my HiFive board today and after downloading and compiling the SDK I saw that there already where 2 benchmarks as examples. The coremark and the dhrystone benchmark.
To add another one, I ported the whetstone benchmark to the HiFive board, I managed to get 12.3MIPS on the double precision whetstone test.
My code can be found here, in theory just cloning it in the software directory of the SDK should be enough.

If someone sees any mistakes or ways to speed it up, I’d love to hear that.

Best regards,

Rik

1 Like

I think in the readme you forgot to mention to rename directory whetstone_hifive to Whetstone.

I don’t yet have a HiFive1 so I have run your Whetstone benchmark program on my Arty:

As the Arty is running at 65 MHz and not 260 MHz, I presume the results shown here are not correct. Can you point me to the place where the processor speed is entered into the calculation? Or is the 260 MHz comment only meant as a reminder of the default HiFive1 speed to enable a MIPS per MHz comparison? In that case, the HiFive would seem to have a MIPS/MHz of about 2.6 times that of the Arty, which in light of the Arty´s slightly higher DMIPS/MHz rating would surprise me.

Thank for any enlightenment.

The 260Mhz is only meant as a reminder, it uses the get_timer_value() to get the number of seconds it takes to do all the calculations. So if that test indeed took around 2135 seconds the result is correct. But there might be going something wrong there.

The 2135 seconds coincides with the actual elapsed real time, so I guess the Arty is falling way behind the HiFive1 in some or all of the Whetstone calculations.

Thanks