[sage-devel] Re: Computing large Bernoulli numbers

2008-07-06 Thread mabshoff
On Jul 2, 12:28 pm, David Harvey <[EMAIL PROTECTED]> wrote: Hi David, > Returning to a slightly old thread. I meant to answer earlier ... > I have implemented a new algorithm for computing large Bernoulli   > numbers. > > Running on 10 cores for 5.5 days, I computed B_k for k = 10^8, wh

[sage-devel] Re: Computing large Bernoulli numbers

2008-07-02 Thread David Harvey
Returning to a slightly old thread. I have implemented a new algorithm for computing large Bernoulli numbers. Running on 10 cores for 5.5 days, I computed B_k for k = 10^8, which I believe is a new record. (Recall the Mathematica blog post from April was for k = 10^7.) Essentially it'

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-06 Thread William Stein
On Tue, May 6, 2008 at 11:55 AM, David Harvey <[EMAIL PROTECTED]> wrote: > > > On May 6, 2008, at 2:19 PM, Mike Hansen wrote: > > >> Probably not so cool, since it would be like 50 machines vs one > >> machine. > > > > Sure, but the Mathematica blog post is scalablity: "In Mathematica, a > >

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-06 Thread David Harvey
On May 6, 2008, at 2:19 PM, Mike Hansen wrote: >> Probably not so cool, since it would be like 50 machines vs one >> machine. > > Sure, but the Mathematica blog post is scalablity: "In Mathematica, a > core principle is that everything should be scalable. So in my job of > creating algorithms

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-06 Thread mhampton
I agree, I think demonstrating a distributed algorithm would be very cool. From what I can tell of processor trends, we won't see enormous gains in speed but we might see an awful lot of processors (like Intel's prototype 80-core chip). On May 6, 12:19 pm, "Mike Hansen" <[EMAIL PROTECTED]> wrote

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-06 Thread Mike Hansen
> Probably not so cool, since it would be like 50 machines vs one machine. Sure, but the Mathematica blog post is scalablity: "In Mathematica, a core principle is that everything should be scalable. So in my job of creating algorithms for Mathematica I have to make sure that everything I produce

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-06 Thread David Harvey
On May 6, 2008, at 2:12 PM, Mike Hansen wrote: > I think a blog post with PARI timings and then timings for a modular > dsage approach would be cool. Probably not so cool, since it would be like 50 machines vs one machine. david --~--~-~--~~~---~--~~ To post t

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-06 Thread Mike Hansen
I think a blog post with PARI timings and then timings for a modular dsage approach would be cool. --Mike On Tue, May 6, 2008 at 11:08 AM, William Stein <[EMAIL PROTECTED]> wrote: > > > On Tue, May 6, 2008 at 10:57 AM, David Harvey <[EMAIL PROTECTED]> wrote: > > > > > > > > On May 6, 2008,

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-06 Thread William Stein
On Tue, May 6, 2008 at 10:57 AM, David Harvey <[EMAIL PROTECTED]> wrote: > > > > On May 6, 2008, at 1:18 PM, William Stein wrote: > > > > > On Tue, May 6, 2008 at 10:15 AM, <[EMAIL PROTECTED]> wrote: > >> > >> William has mentioned some congruence tests that we can perform > >> -- I'd like

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-06 Thread David Harvey
On May 6, 2008, at 1:18 PM, William Stein wrote: > > On Tue, May 6, 2008 at 10:15 AM, <[EMAIL PROTECTED]> wrote: >> >> William has mentioned some congruence tests that we can perform >> -- I'd like to make sure that I got the right answer before we pat >> ourselves on the back too much. >>

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-06 Thread William Stein
On Tue, May 6, 2008 at 10:15 AM, <[EMAIL PROTECTED]> wrote: > > William has mentioned some congruence tests that we can perform -- I'd like > to make sure that I got the right answer before we pat ourselves on the back > too much. > > David Harvey's congruence tests would be pretty good. Jus

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-06 Thread boothby
William has mentioned some congruence tests that we can perform -- I'd like to make sure that I got the right answer before we pat ourselves on the back too much. On Tue, 6 May 2008, mhampton wrote: > > That certainly merits a blog post somewhere - ? > > On May 5, 2:02 pm, [EMAIL PROTECTED] w

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-06 Thread David Harvey
On May 6, 2008, at 12:53 PM, mhampton wrote: > > That certainly merits a blog post somewhere - ? > > On May 5, 2:02 pm, [EMAIL PROTECTED] wrote: >> My computation of bernoulli(10^7+4) using GP version 2.3.3 has >> completed in 217417011 miliseconds. That's about 2 days, 12 >> hours. Anybod

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-06 Thread mhampton
That certainly merits a blog post somewhere - ? On May 5, 2:02 pm, [EMAIL PROTECTED] wrote: > My computation of bernoulli(10^7+4) using GP version 2.3.3 has completed in > 217417011 miliseconds. That's about 2 days, 12 hours. Anybody know how I > can print the thing to file? > > Machine: >

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-05 Thread William Stein
On Mon, May 5, 2008 at 1:02 PM, <[EMAIL PROTECTED]> wrote: > > My computation of bernoulli(10^7+4) using GP version 2.3.3 has completed in > 217417011 miliseconds. That's about 2 days, 12 hours. Anybody know how I > can print the thing to file? > So PARI is already over twice as fast as Mat

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-05 Thread boothby
My computation of bernoulli(10^7+4) using GP version 2.3.3 has completed in 217417011 miliseconds. That's about 2 days, 12 hours. Anybody know how I can print the thing to file? Machine: Quad-core 2.0Ghz Xeon, 1333MHz FSB, 32GB RAM. Currently, my gp session is using 4GB of RAM. --~--~-

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-03 Thread Bill Hart
I probably also mean: Then the error in the the zeta function not: Then the error in the inverse of the zeta function Bill. On 3 May, 13:12, Bill Hart <[EMAIL PROTECTED]> wrote: > I think I nearly understand what Pari does. > > The value of B_k is given by zeta(n)*(2*n!)/(2^n pi^n). However,

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-03 Thread Bill Hart
Sorry, this: The log of this expression is never more than 0.1 of the log of n!. should read: The log of this expression is always within 0.1 of the log of n!. Bill. On 3 May, 13:12, Bill Hart <[EMAIL PROTECTED]> wrote: > I think I nearly understand what Pari does. > > The value of B_k is giv

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-03 Thread Bill Hart
I think I nearly understand what Pari does. The value of B_k is given by zeta(n)*(2*n!)/(2^n pi^n). However, zeta(n) is *very* close to 1 for large n. So one starts by computing zeta to a precision given by the size of (2*n!)/(2^n pi^n) (which is basically the size of B_k) with 3 added to the pre

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-02 Thread Bill Hart
Actually, it might be n/log(n) steps, so the time might be something like n^2 though there are other terms involved. Bill. On 3 May, 00:30, Bill Hart <[EMAIL PROTECTED]> wrote: > The theoretical complexity of all the algorithms that rely on > recurrences is supposed to be n^2. But this doesn't t

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-02 Thread Bill Hart
The theoretical complexity of all the algorithms that rely on recurrences is supposed to be n^2. But this doesn't take into account the size of the numbers themselves. When you do this they are all about n^3 as far as I can see. You can use Ramanujan identities, the Akiyama-Tanigawa algorithm, the

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-02 Thread Bill Hart
I did some computations using von Staudt's theorem and up to 40 no errors. Of course that doesn't prove anything for much larger n. Bill. On 2 May, 21:04, "William Stein" <[EMAIL PROTECTED]> wrote: > On Fri, May 2, 2008 at 12:55 PM, David Harvey <[EMAIL PROTECTED]> wrote: > > >  On May 2, 20

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-02 Thread mabshoff
On May 2, 10:34 pm, "didier deshommes" <[EMAIL PROTECTED]> wrote: > Here is some more information about the machine used to compute this: Hi, > Hi Didier, > >  I used Linux, with 64 bit AMD processor: > >  AMD Opteron(tm) Processor 250 >  cpu MHz         : 1000.000 >  cache size      : 1024 KB

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-02 Thread didier deshommes
Here is some more information about the machine used to compute this: -- Forwarded message -- From: Oleksandr Pavlyk <[EMAIL PROTECTED]> Date: Fri, May 2, 2008 at 4:29 PM Subject: Re: Today We Broke the Bernoulli Record: From the Analytical Engine to Mathematica To: didier deshomm

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-02 Thread David Harvey
One more data point (2.6GHz opteron): sage: time x = bernoulli(6) Wall time: 3.79 sage: time x = bernoulli(12) Wall time: 16.97 sage: time x = bernoulli(24) Wall time: 118.24 sage: time x = bernoulli(48) Wall time: 540.25 sage: time x = bernoulli(96) Wall time: 2436.06 Th

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-02 Thread boothby
Sorry, the y-axis in the lower plot is log(time in seconds). On Fri, 2 May 2008, David Harvey wrote: > > > On May 2, 2008, at 4:08 PM, [EMAIL PROTECTED] wrote: > >> Funny this should come up. William just gave a take-home midterm >> in which we had to predict the runtime for various computatio

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-02 Thread David Harvey
On May 2, 2008, at 4:08 PM, [EMAIL PROTECTED] wrote: > Funny this should come up. William just gave a take-home midterm > in which we had to predict the runtime for various computations, so > I wrote some generic code to help. According to my code, and some > liberal assumptions, it shou

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-02 Thread boothby
Funny this should come up. William just gave a take-home midterm in which we had to predict the runtime for various computations, so I wrote some generic code to help. According to my code, and some liberal assumptions, it should take 5.1 days. I've attached the plots that show the curves I f

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-02 Thread William Stein
On Fri, May 2, 2008 at 12:55 PM, David Harvey <[EMAIL PROTECTED]> wrote: > > > On May 2, 2008, at 3:45 PM, William Stein wrote: > > > The complexity mostly depends on the precision one uses in > > computing a certain Euler product approximation to zeta > > and also the number of factors in the

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-02 Thread David Harvey
On May 2, 2008, at 3:45 PM, William Stein wrote: > The complexity mostly depends on the precision one uses in > computing a certain Euler product approximation to zeta > and also the number of factors in the product. If you look > at the PARI source code the comments do *not* inspire confidence

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-02 Thread William Stein
On Fri, May 2, 2008 at 12:41 PM, David Harvey <[EMAIL PROTECTED]> wrote: > > > On May 2, 2008, at 3:40 PM, William Stein wrote: > > > Also, when I tried > > > > bernoulli(10^7+2) > > > > directly in Sage there were a couple of issues that arose, since > > that command > > is much more

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-02 Thread David Harvey
On May 2, 2008, at 3:43 PM, Bill Hart wrote: > I think the asymptotics aren't going to go our way if we use pari. It > takes 11s for 10^5 and I've been sitting here for quite a few minutes > and didn't get 10^6 yet. So far I have on a 2.6GHz opteron: sage: time x = bernoulli(6) Wall time:

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-02 Thread William Stein
On Fri, May 2, 2008 at 12:10 PM, John Cremona <[EMAIL PROTECTED]> wrote: > > ok, so the docstring reaveals (1) that the pari version is "by far the > fastest" as I suspected, but also that for n>5 that we use a gp > interface rather than the pari library " since the C-library interface > t

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-02 Thread Bill Hart
I think the asymptotics aren't going to go our way if we use pari. It takes 11s for 10^5 and I've been sitting here for quite a few minutes and didn't get 10^6 yet. I think pari uses the zeta function to compute bernoulli numbers. If I'm reading the code right it first computes 1/zeta(n) using t

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-02 Thread didier deshommes
On Fri, May 2, 2008 at 3:40 PM, William Stein <[EMAIL PROTECTED]> wrote: > > On Fri, May 2, 2008 at 11:34 AM, Fredrik Johansson > <[EMAIL PROTECTED]> wrote: > > > > > Oleksandr Pavlyk reports on the Wolfram Blog that he has computed the > > 10 millionth Bernoulli number using Mathematica: >

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-02 Thread David Harvey
On May 2, 2008, at 3:40 PM, William Stein wrote: > Also, when I tried > > bernoulli(10^7+2) > > directly in Sage there were a couple of issues that arose, since > that command > is much more designed for smaller input. I fixed those small issues. > I guess we'll see in a week .. I hope

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-02 Thread William Stein
On Fri, May 2, 2008 at 11:34 AM, Fredrik Johansson <[EMAIL PROTECTED]> wrote: > > Oleksandr Pavlyk reports on the Wolfram Blog that he has computed the > 10 millionth Bernoulli number using Mathematica: > > http://blog.wolfram.com/2008/04/29/today-we-broke-the-bernoulli-record-from-the-analyti

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-02 Thread William Stein
On Fri, May 2, 2008 at 11:34 AM, Fredrik Johansson <[EMAIL PROTECTED]> wrote: > > Oleksandr Pavlyk reports on the Wolfram Blog that he has computed the > 10 millionth Bernoulli number using Mathematica: > > http://blog.wolfram.com/2008/04/29/today-we-broke-the-bernoulli-record-from-the-analyti

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-02 Thread John Cremona
ok, so the docstring reaveals (1) that the pari version is "by far the fastest" as I suspected, but also that for n>5 that we use a gp interface rather than the pari library " since the C-library interface to PARI is limited in memory for individual operations" -- whatever that means!

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-02 Thread John Cremona
I might take a look at this, as there are some ways fo computing B nos which are very much faster tha others, and not everyone knows them. Pari has something respectable, certainly. John 2008/5/2 mhampton <[EMAIL PROTECTED]>: > > It takes about 30 seconds on my machine to get the 10^5 Bernoulli

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-02 Thread David Harvey
On May 2, 2008, at 2:56 PM, mhampton wrote: > It takes about 30 seconds on my machine to get the 10^5 Bernoulli > number. The mathematica blog says it took a "development" version of > mathematica 6 days to do the 10^7 calc. So it would probably take > some work, but we are not that badly off

[sage-devel] Re: Computing large Bernoulli numbers

2008-05-02 Thread mhampton
It takes about 30 seconds on my machine to get the 10^5 Bernoulli number. The mathematica blog says it took a "development" version of mathematica 6 days to do the 10^7 calc. So it would probably take some work, but we are not that badly off as is. -M. Hampton On May 2, 12:34 pm, Fredrik Joha