This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH] Split mantissa calculation loop and add branchprediction to mp multiplication
On Thu, Jan 03, 2013 at 11:09:25AM -0600, Steven Munroe wrote:
> >
> I was referring to this code from your note:
OK, thanks for clarifying. That code snippet is from another patch
and is not related to this current patch. I may have started that
confusion by introducing that snippet here, so I apologize.
> > (2) u does not exist since it is replaced by a much simpler operation,
> > which results in that snippet looking like this:
> >
> > int64_t tmp = Z[k];
> > for (i=i1,j=i2-1; i<i2; i++,j--)
> > tmp += (int64_t) X[i]*Y[j];
> >
> > Z[k] = (int) (tmp % (1 << 24));
> > Z[--k] = (int) (tmp / (1 << 24));
>
> I do performance analysis and tuning for a living and this is an obvious
> problem. oprofile will show this a hot spot.
>
Let's have this discussion when I post the complete patch around that
snippet again - the snippet by itself is incomplete and says nothing.
I'll cc you on it and will also have powerpc numbers handy. I'll also
set up a branch with all of the work I have done so far on this - I'll
need some time to get the patches in at least a moderately coherent
manner.
Thanks for your comments so far!
Siddhesh