Yes, compiled C code is much faster than perl for this task, I'm afraid. I have a C version that runs over 100 times faster than the perl, so it completes in a fraction of a second.

Math::BigInt::Lite should help to address this problem, but the normal Perl overhead will always remain. Unless you use large numbers, where the most time will be spent in the GMP/Pari etc library, Perl will be always much slower, I am afraid.

I see Math::BigIntFast is available in PPM form. Someone who was feeling ambitious could probably make that work, but the rational number support would have to be written.

Math::BigIntFast is just a *very* thin (read: empty) wrapper around Bit::Vector. Besides that Bit::Vector is slower than GMP and Pari, it also has the problem that it only works with "fixed" sized numbers, e.g. you need to determine what the max. will be in front and than use that for all numbers - or do costly resizing all the time. And if you make it really so that it works with numbers of any size in mixed ways, you will just re-invent Math::BigInt::BitVector ;) HTH, Tels PS: Next time please sent me bug reports or feature requests, it is quite embarrassing reading about things that don't work on some random website you stumble over with google. I could have easily missed it for months or years. Thanx in advance!


In reply to Re: Re: Really Fast Big Integer Library In C - Re: Re: Predict Random Numbers by Anonymous Monk
in thread Predict Random Numbers by no_slogan

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.