I'd like to get rid of NAILS support.  It adds a huge amount of
complication, and I haven't seen it actually pan out for any modern
processor.

I vote for leaving the existing NAILS code alone, but explicitly
stating that NAILS is not supported.  Perhaps, if we do discover some
use for it, it might be worth the extra effort to go back and support
it.

Jason Worth Martin
Asst. Professor of Mathematics
http://www.math.jmu.edu/~martin



On Fri, Jan 9, 2009 at 8:15 PM, Bill Hart <goodwillh...@googlemail.com> wrote:
>
> Is there anyone still working on MPIR who really thinks we should
> support NAILS?
>
> I've got slightly stronger opinions about this now than I did before:
>
> * If we want people to contribute code to MPIR, then NAILS is a
> complication which developers can really do without. We don't have
> anyone with the time required to keep maintaining NAILS for all the
> new code people commit (and inevitably make NAILS unsafe), and there
> seems to be little motivation to do so. We all know it doesn't help on
> modern architectures.
>
> * In order to use NAILS, one needs to rebuild MPIR with NAILS turned
> on, i.e. it is a configure time option. Many of the packages that use
> GMP as a standard library also use mpn's and rely on a build with
> NAILS = 0. For this reason, a build of MPIR with NAILS > 0 is unlikely
> to be very useful just hanging around on someone's drive. There's very
> little motivation for people to build MPIR with NAILS.
>
> * Most of GMP/MPIR's functionality depends on multiplication of
> multiprecision integers, where carries into the next limb are
> important. Certainly when doing scalar multiplications, as one
> encounters in linear algebra, "NAILS = 11" could be very valuable (as
> I found out recently), as modern processors will multiply doubles
> faster than unsigned longs (of course that is not what NAILS = 11
> actually does, but anyway). But for multiprecision integer
> multiplication, this is not sensible. Really NAILS is only a useful
> trick for machines without proper carry propagation.
>
> * It's another complication for the build system which we can do
> without if we ever hope to move away from automagic.
>
> So, my question is, should we jettison NAILS from MPIR?
>
> My proposal would be to:
>
> * disable it temporarily as a configure option (we have to do this at
> the very least due to the NAILS = 2 issue jason reported to do with
> the new gcd code, and we already disabled odd NAILS due to the sqrt
> code)
>
> * wait until we see how things pan out for GPU's (where perhaps NAILS
> will prove useful)
>
> * eventually remove all the NAILS code altogether from MPIR if it
> proves useless (as I believe it will)
>
> What do you guys think?
>
> Bill.
> >
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"mpir-devel" group.
To post to this group, send email to mpir-devel@googlegroups.com
To unsubscribe from this group, send email to 
mpir-devel+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/mpir-devel?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to