From: Raymond T. <toy...@gm...> - 2014-09-23 05:48:45
|
On Mon, Sep 22, 2014 at 5:55 AM, Barton Willis <wi...@un...> wrote: > For a speed advantage, binary splitting algorithms generally require > multiplication that is faster than > > O(n * m), I think. As far as I know, Maxima doesn't have fast integer > multiplication. > > > AFAICT, Maxima just does the bignum multiplication and lets the underlying lisp do any optimization. clisp and gcl have quite fast multipliers based on fast algorithms (clisp) or gmp (gcl). sbcl and cmucl can use Karatsuba multiplication for sufficiently large bignums. I don't know what sbcl uses, but cmucl switches to Karatsuba when the numbers are about 512 bits or larger. > An exception is the factorial function--the speed advantage for > a splitting method comes from organizing the multiplications in a way that > reduces the multiplication times (and leverage that multiplication by two > is super fast). Maxima does have this method--I think Richard Fateman > contributed it some years ago. Applied to fixed length integers, I think > the splitting method for factorials doesn't have all that much advantage > over a simple-minded approach? > > > Big Oh estimates that assume fixed length integers aren't sufficient > to compare algorithms that use > > non fixed length integers. Maybe Maxima needs fast integer multiplication > to allow binary splitting methods to be viable? > > > --Barton > > > > > ------------------------------------------------------------------------------ > Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer > Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports > Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper > Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer > > http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk > _______________________________________________ > Maxima-discuss mailing list > Max...@li... > https://lists.sourceforge.net/lists/listinfo/maxima-discuss > > -- Ray |