I've ported Whetstone benchmark and run it both with soft & hard float
options for or1k compiler.
The original description of the benchmark could be found on
http://www.roylongbottom.org.uk/whetstone.pdf .
The results are (I've removed the column containing calculated values as
they are the same for both cases):
case #1: -msoft-float
Single Precision C/C++ Whetstone Benchmark
Loop content MFLOPS MOPS Seconds
N1 floating point 0.392 0.049
N2 floating point 0.320 0.420
N3 if then else 3.450 0.030
N4 fixed point 0.984 0.320
N5 sin,cos etc. 0.019 4.330
N6 floating point 0.242 2.230
N7 assignments 1.680 0.110
N8 exp,sqrt etc. 0.009 4.300
MWIPS 0.848 11.789
case #2: -mhard-float, fpu32_v1.0:
Single Precision C/C++ Whetstone Benchmark
Loop content MFLOPS MOPS Seconds
N1 floating point 2.400 0.008
N2 floating point 2.240 0.060
N3 if then else 3.450 0.030
N4 fixed point 3.938 0.080
N5 sin,cos etc. 0.019 4.300
N6 floating point 1.199 0.450
N7 assignments 1.680 0.110
N8 exp,sqrt etc. 0.009 4.300
MWIPS 1.071 9.338
It is interesting to see that N5 (sin, cos, etc) and N8 (exp,sqrt, etc) have
the same performance as for hard as for soft float operation.
Does it mean that these functions are based on soft-float routines
independently on -mfloat option?
PS. I haven't found any license agreement in source package. That is why I
doubt about publishing the modified code. So, if anybody is interested in
sources of or1k port of Whetstone, e-mail me and I'll send you 6.5 KB zip
archive.
BR
Andrey
_______________________________________________
OpenRISC mailing list
[email protected]
http://lists.openrisc.net/listinfo/openrisc