Mixing hard and soft floating point?
wd at denx.de
Mon Oct 19 00:10:02 EST 2009
Dear Joakim Tjernlund,
In message <OFEFBDE7C9.DA9D5B8B-ONC1257653.003E3DC6-C1257653.003F0B37 at transmode.se> you wrote:
> > If the application is really using FP instructions a lot, then there
> > is a huge difference between using soft-float and MATH_EMU; I
> > remember test cases where soft-float was faster by factors of
> > 500...1000.
> Ouch, I had no idea that it could be that much.
Well, consider really simple operations, like FP add or similar, and
compare the library code for the soft-FP implementationagainst the
cost for a trap into the kernel. Or even worse - a consider simple
assignment ("float x, foo; x = foo"); with soft-float: "lis 9,x at ha;
stw 3,x at l(9)" = 2 instructions, with MATH_EMU "lis 9,x at ha; stfs
1,x at l(9)" = 1 insn plus a kernel trap.
For real numbers, run a benchmark that models your real use case.
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Little known fact about Middle Earth: The Hobbits had a very sophi-
sticated computer network! It was a Tolkien Ring...
More information about the Linuxppc-dev