John Edward Scott
gmp-list at daedalus-solutions.co.uk
Fri Nov 14 23:17:30 CET 2003
> gmp-list at daedalus-solutions.co.uk (John Edward Scott) writes:
> > I did some profiling of my app
> You can --enable-profiling=gprof on the gmp build to find where the
> time goes within gmp.
Yes I found that, thats how I got the timings
> > 20.53 20.19 20.19 341823446 0.00 0.00 mpfr_mul
> A high-half multiply might help there, we haven't got around to doing
> that yet.
> > 19.78 39.64 19.45 550784802 0.00 0.00 mpfr_round_raw_generic
> That's a disturbingly large fraction, I suppose it's the block copies
> within that routine.
Yep, I thought it was quite high, although as you can see it's for
quite a large number of iterations (and that was for a *very* small
run...roughly about 70 seconds complete runtime....the full run
will take 8 weeks+).
> > 10.85 50.31 10.67 120318096 0.00 0.00 mpfr_sub1
> Bit hairy that function. Maybe it can sometimes get away with one
> shift instead of 2, or perhaps that ends up happening already.
> > So, given that my app has a runtime of *months*...any Opteron
> > optimisation in mpfr_mul or mpfr_round_raw_generic would *greatly*
> > help.
> The mpfr list is the place for mpfr development. Here or gmp-devel
> for the underlying gmp routines.
Ahhh sorry, I couldn't find details for the mpfr list so I posted here,
I'll search a bit better for it!
> > I know a *little* of Assembler, but I really don't want to re-invent
> > the wheel if some work is currently going on in this area.
> Torbjorn has been working on some of the primitives.
More information about the gmp-discuss