## New Pi Computation Record Using a Desktop PC 204

Posted
by
kdawson

from the more-digits-than-you dept.

from the more-digits-than-you dept.

hint3 writes

*"Fabrice Bellard has calculated Pi to about 2.7 trillion decimal digits, besting the previous record by over 120 billion digits. While the improvement may seem small, it is an outstanding achievement because only a single desktop PC, costing less than $3,000, was used — instead of a multi-million dollar supercomputer as in the previous records."*
## Verification (Score:3, Interesting)

I didn't read the article, only the summery but it made me wonder.

Do they verify these numbers somehow?

Anyone can write down a series of a numbers and claim it's a specific sequence.

Not saying these numbers aren't correct, just a thought.

## One thing to say (Score:5, Informative)

From the FAQ

"How does your record compares to the previous one ?

The previous Pi computation record of about 2577 billion decimal digits was published by Daisuke Takahashi on August 17th 2009. The main computation lasted 29 hours and used 640 nodes of a T2K Open Supercomputer (Appro Xtreme-X3 Server). Each node contains 4 Opteron Quad Core CPUs at 2.3 GHz, giving a peak processing power of 94.2 Tflops (trillion floating point operations per second).

My computation used a single Core i7 Quad Core CPU at 2.93 GHz giving a peak processing power of 46.9 Gflops. So the supercomputer is about 2000 times faster than my computer. However, my computation lasted 116 days, which is 96 times slower than the supercomputer for about the same number of digits. So my computation is roughly 20 times more efficient. It can be explained by the following facts:

* The Pi computation is I/O bound, so it needs very high communication speed between the nodes on a parallel supercomputer. So the full power of the supercomputer cannot really be used.

* The algorithm I used (Chudnovsky series evaluated using the binary splitting algorithm) is asymptotically slower than the Arithmetic-Geometric Mean algorithm used by Daisuke Takahashi, but it makes a more efficient use of the various CPU caches, so in practice it can be faster. Moreover, some mathematical tricks were used to speed up the binary splitting. " ( http://bellard.org/pi/pi2700e9/faq.html [bellard.org] )

Mathematical and Programming Ownage.

## Re:One thing to say (Score:4, Funny)

HE USED TRICKS!!!!1111Burn the witch...eehh communist...eeeh climate researcher...eeeeh....PI guy.

## Re: (Score:2)

The Pi computation is I/O bound, so it needs very high communication speed between the nodes on a parallel supercomputer. So the full power of the supercomputer cannot really be used.

The algorithm I used (Chudnovsky series evaluated using the binary splitting algorithm) is asymptotically slower than the Arithmetic-Geometric Mean algorithm used by Daisuke Takahashi, but it makes a more efficient use of the various CPU caches, so in practice it can be faster.

Before the next Top 500 list is published in June,

## Re: (Score:2)

I would love to give you mod points as insightful.

The first thing I thought of after reading was .... How to run this as a 10 minute test on a personal computer as a benchmark I/O.

I looked at the FAQ and it seemed that ram was not the real issue but the I/O is the most important part. so again, this might be the best tool for testing systems for I/O performance ...

I would think that it might be interesting to test this on raid systems, database servers and anything that has a ton of read/writes and since it

## Re:One thing to say (Score:5, Interesting)

## Re: (Score:2)

If you reply to the first post, it's almost just as good as having the 1st post. You get more views. So then the next guy replies to that reply, so on and so forth. Mods be on the lookout for offtopic.

## Re:One thing to say (Score:5, Insightful)

In another thread someone had posted that there was no reason for any modern CPUs; the idea being that anything one could reasonably want to do with a computer was possible with decade old hardware.

This.. *This* article is why I enjoy the breakneck pace of processor speed improvements. The thought of being able to do some pretty serious computing on a relatively inexpensive bit of hardware -- even if it takes half a year to get results -- does what the printing press did. It allows the unwashed masses (of which I am one) a chance to do things that were once only the realm of researchers in academia or the corporate world. Sure, all that you need to do some serious mathematics is a pen and paper, but more and more discoveries occur using methods that can only be performed with a computer.

There's always the argument that cheap computers and cheap access to powerful software pollutes the space with hacks and dilletantes. People have said this about desktop publishing, ray tracing, and even the growth of Linux. But it's this ability to do some amazing things with computers that makes it all worthwhile.

## I'm building an atomic bomb. (Score:4, Funny)

It allows the unwashed masses (of which I am one) a chance to do things that were once only the realm of researchers in academia or the corporate worldI agree, that's why I have great hopes for my atomic bomb.

## Re: (Score:2)

Give that someone a decade old processor and see how happy he is.

## Re: (Score:2)

What does large number theory, factorization, optimizations that offer 2000x speedups in this field, and specific information for desktop computers

Go watch Sneakers [imdb.com] again.

## Re: (Score:2)

Psychologically, it's rather obvious that it's peacocking.

That said, it may have some positive side effects down the road, if nothing else for making more people understand that tailoring solutions around bottlenecks can often give better results than raw power.

## Re: (Score:3, Funny)

> It hides an answer to some questions for sure.

Could be. I'm not sure the answer will be in base 10, though.

Maybe, in base 36, beginning at the trillionth digit, pi is:

"URTEHSUXXORUNEED2GETALIFESRSLYKTHXBYE"

That would be amazing.

## Re: (Score:2)

If the expression of pi in any base is random, eventually any message you want will be found within it. You do not need 1000K monkeys to output all of some dead guy's work, which is good, because that would be a lot of monkey doo you would have to clean up waiting for them to finish. And you would have copyright problems to boot.

## Re: (Score:2)

I used to think that, but you'd need some kind of weird compression / decompression. You can't find absolutely *any* pattern in irrational numbers... no repeating digits or zeros.

## Re: (Score:2)

pi isn't random in any base. In base pi it's 10.

## Re: (Score:2)

Maybe, in base 36, beginning at the trillionth digit, pi is:

"URTEHSUXXORUNEED2GETALIFESRSLYKTHXBYE"

That would be amazing.

Well, take that base36 string, convert it into a base10 string, and search for it [angio.net].

## Re: (Score:3, Funny)

Of course, the first step in your plan is to calculate the digits in the first place...

## Re: (Score:2)

You mean like a base-11 raster of 1's and 0's that forms a perfect circle [google.com] ?

## Re: (Score:2)

Like a Mandelbrot fractal, or the number

e, Pi has the interesting property that it's full of detail, but derived from a simple rule. So yes, it is interesting.What I find most interesting about such things is their universality. If one was to suggest the existence of some God, then go on to say that this God created the universe where we live, one could still never claim that Pi had been created or assigned a value at that time. No, Pi was never created, it simply

is, and itiseverywhere always the same.## Re: (Score:2)

not to troll, but what would it take to have a universe that Pi would equal a rational number?

## Re: (Score:2)

Last I checked, the value of Pi we use is the one for Euclidean geometry. For non-Euclidean geometry, pi has different values, depending on the curvature of the surface that is the basis for the geometry.

Note, by the by, that we don't actually live in a Euclidean geometry, but that the curvature is small enough that the ideal euclidean value of pi still works.

## Re:One thing to say (Score:4, Interesting)

I would assume he only needs to verify the last 120 billion digits.

Assuming his algorithm can support serialization of its state into a check-point, he can simply recalculate the last 120 billion digits a couple of times and compare.

Assuming linear time to compute each digit: 120e9/2.7e12 * 116 =~ 5 days. not too bad.

## Re: (Score:3, Interesting)

Hmm, for such a record attempt, do you actually have to calculate all these earlier digits? They're already known. Can anyone prove the computer calculated the already known digits first (instead of getting them from a table) before finally getting to the 120 million new ones?

## Re: (Score:3, Insightful)

Pi is interesting in that regard -- there are algorithms that can compute the Nth digit without needing to compute the intermediate digits. If you want to compute all digits from 0 to N, however, there are more efficient algorithms.

## Re: (Score:2)

see for instance:here [cnet.com]

## Re:Verification (Score:4, Informative)

In TFA (especially the PDF), the verification method is to use another algorithm to check the output. The PDF on Fabrice's home page goes into more details.

NOTE: The machine they were using to generate the second result broke, so they used another (3rd) algorithm to generate the last digits.

## Re:Verification (Score:5, Interesting)

I didn't read the article, only the summery but it made me wonder.

Do they verify these numbers somehow? Anyone can write down a series of a numbers and claim it's a specific sequence.

Not saying these numbers aren't correct, just a thought.

Perhaps this is why you should read the article. The press release [bellard.org] answers this question directly.

## Re: (Score:2)

## Re: (Score:2)

You don't need to verify that the number is correctly pi to the given digits, merely verify that the algorithm calculates the digits of pi correctly.

The algorithm can be proven correct in a number of relatively quick and easy ways.

The algorithm is really also arguably the most important part anyway rather than the digits themselves because it's the part of most use.

## Re: (Score:2)

No, because most software is large and complex, doing things like mathematical induction on all code is infeasible for this reason.

In contrast, code to calculate something like this is relatively extremely small.

Effectively, the reason your argument doesn't hold is that although we can fairly trivially prove some algorithms correct, the method isn't scalable and hence doesn't scale to the scale of pretty much any piece of modern software.

## Re: (Score:3, Interesting)

The implementation (compiled or uncompiled) is in itself an algorithm which can equally be checked because the language follows pre-defined logical rules which may act as axioms or depending on the details of the algorithm it may be trivial to just use induction.

It's not like we're checking a full operating system or office suite here, so size isn't a restrictive problem in such a proof.

It may be that the processor itself hasn't been checked so that the results of executing that algorithm isn't correct eith

## Re: (Score:2)

It means that the algorithm will get

noticed.## Re: (Score:2)

Eh?

I, and all other programmers, have written plenty algorithms that run. That does not mean it works correctly according to the initial spec.

## Re: (Score:2)

From the PDF on his website:

A standard desktop PC was used, using a Core i7 CPU at 2.93 GHz. This CPU

contains 4 physical cores.

We put only 6 GiB of RAM to reduce the cost. It means the amount of RAM

is about 170 times smaller than the size of the final result, so the I/O performance

of the mass storage is critical. Unfortunately, the RAM had no ECC (Error

Correcting Code), so random bit errors could not be corrected nor detected. Since

the computation lasted more than 100 days, such errors were likely [12]. Hopefully,

the computations included verification steps which could detect such errors.

For the mass storage, five 1.5 TB hard disks were used. The aggregated peak

I/O speed is about 500 MB/s.

A weird choice of words...

## Re: (Score:3, Interesting)

Verification as actually quite easy, due to the (totally unexpected at the time!) discovery of the Borwein-Bailey-Plouffe [wikipedia.org] algorithm which allows you to directly calculate the N'th hexadecimal digit of pi, without having to determine any other digits.

He used this on a bunch of the last digits and they all came out correct, which makes the probability of an error extremely small.

Last year I used his algorithm to calculate 1e9 (i.e. a US billion) digits of pi and made them searchable:

http://tmsw.no/pi-search/ [tmsw.no]

T

## Thats nice and all... (Score:2, Funny)

## Re:Thats nice and all... (Score:5, Funny)

## Re: (Score:2)

What's the square route of pie?

Cherries!

## Finally! (Score:5, Funny)

## Re: (Score:2)

It's still waaaaaaaay off.

Can't get precision anymore these days, everything's just rush-rush, nobody takes the time to do it right...

## Euler's identity (Score:2)

## Re: (Score:3, Insightful)

I think you'll find you don't need anywhere near that level of precision of pi to find the radius of the Universe in Planck lengths. 50 digits is sufficient.

## Re: (Score:3, Funny)

You'd also need something to prop up the other end of the new extended screen to display the number - Venus should be in about the right place when it gets a bit closer!

## Re: (Score:2, Interesting)

There is a program package for Linux called Sage math where you can get a lot of digits in your constants. For example, to accurately calculate the circumference of a circular table with diameter=1000 mm you could type:

1000*pi().n(digits=1000000)

All you need now is a decent measuring tape...

These two also work, in case you're worried about not getting good enough accuracy when you calculate Fourier coefficients or something:

(pi().n(digits=1000000))^2

(pi().n(digits=1000000))^3

Since Sage sets up a web server

## Wow... (Score:2)

## Re:Wow... (Score:4, Interesting)

Plain html is a wonderful thing. And as he points out, it would be easy to write a cgi script which returns a specified block of digits.

I wonder if he has checked for the circle?

## Re: (Score:2)

lol! nice. and for those that don't get it, read Contact by Carl Sagan.

## Re: (Score:2)

Though I don't know what we would do with such a message. Might be a bit late to help.

## this guy has a pretty impressive track record (Score:5, Informative)

For those not previously familiar with Fabrice Bellard, he's known for:

## Re:this guy has a pretty impressive track record (Score:5, Informative)

He also wrote the Obfuscated Tiny C Compiler (http://bellard.org/otcc/) in 2002 for the Obfuscated C contest, where otcc could compile itself. This became the Tiny C Compiler (TCC) which was picked up by Robert Landley (but subsequently dropped a while later) that is a capable, fast C90/C99 compiler.

His projects page (http://bellard.org/) and the older projects (http://bellard.org/projects.html) contain a lot of interesting projects.

Also of note: Fabrice achieved the record for Pi computation in 1997 as well:

http://bellard.org/pi/pi_hexa.html [bellard.org]

http://bellard.org/pi-challenge/announce220997.html [bellard.org]

http://bellard.org/pi/ [bellard.org]

## I'm not impressed - Superman was faster than a (Score:3, Funny)

speeding bullet, and was able to leap tall buildings in a single bound. Fabrice needs to lift his game.

## Re: (Score:2, Insightful)

## Specs from the PC in question (Score:4, Informative)

He will be releasing the program he created for Windows (64bit only) and Linux

## Re: (Score:3, Informative)

PS: Not the source [bellard.org]

## He needs some help... (Score:5, Funny)

## Re: (Score:2)

## Re: (Score:2)

Here's a full-precision compressed representation of Pi. The trick, of course, is expanding it:

pi = 4 * sum(k,0,+inf, ((-1)^k)/(2k+1)))

## silly (Score:2, Flamebait)

There is an algorithm now for calculating the nth digit of Pi at a whim.

This is slightly retarded.

## Re:silly (Score:5, Informative)

As he points out himself, he doesn't really care about calculating digits of Pi; it's a convenient hook on which to hang an interesting algorithms challenge. From the FAQ:

He also mentions elsewhere that of his code, "The most important part is an arbitrary-precision arithmetic library able to manipulate huge numbers stored on hard disks."

## Re: (Score:2)

## Re:silly (Score:4, Insightful)

There is an algorithm now for calculating the nth digit of Pi at a whim.

The algorithm [wikipedia.org] only works for hexadecimal digits. There is no known formula or algorithm for calculating the n-th decimal digit directly.

Having said that, the existence or non-existence of an n-th digit algorithm does not have any relevance on the silliness or non-silliness of computing trillions of digits of pi, unless the algorithm is

extremelytrivial (i.e. computing the digit takes less CPU time than a byte of I/O), which is not the case here.## Re:silly (Score:5, Informative)

What about this [arxiv.org]?

## Re: (Score:3, Informative)

What about this [arxiv.org]?

The algorithm you linked to requires cubic time in n. It hardly qualifies as "calculating the n-th decimal digit directly" given that the naive approach (calculating every single digit between 1 and n, and throwing away all but the last digit) is faster than cubic time.

The only advantage of the algorithm you linked to is that it requires constant space.

## Re: (Score:3, Interesting)

Knowing how to calculate the nth digit of Pi itself is slightly retarded.

The observable universe is about 50 billion light years across, which is about 4.27 * 10^26 meters. If we take a ring of atoms each roughly 1 Angstrom (10^-10 meters) apart with a diameter the size of the observable universe and want to determine the circumference of the resulting circle, then knowing Pi to 40 or so places is sufficient that the error caused by the atoms themselves is greater than that introduced by using an approxima

## Re: (Score:2)

## Re: (Score:2)

Knowing Pi to 40 or so places

Face it, we all should know by now it's

42## Re: (Score:2)

However Pi is not just used for measuring physical objects.

An engineer, a physicist, and a mathematician were on a train heading north, and had just crossed the border into Scotland.

The engineer looked out of the window and said "Look! Scottish sheep are black!"

The physicist said, "No, no. Some Scottish sheep are black."

The mathematician looked irritated. "There is at least one field, containing at le

## Re: (Score:2)

That's like saying that the fact that we have horses and cars, etc, make hiking or cycling anywhere retarded.

Sometimes the point isn't the destination, it's the journey.

## Did he find a message? (Score:2)

I believe in "Contact" (the book by Carl Sagan, not the movie), the travelers ask the superintelligent aliens "Do you believe in God? To which they reply: "Yes" When asked why, they say "We have proof" in the finding of a message in a transcendental number (pi?).

After reading the Wikipedia summary I understand that when the travelers come home and are accused of fabricating the whole thing, one of them tries to "find" this message by running their own computer program. She finds a message, or does she?

## Re: (Score:2)

not?## Re: (Score:3, Funny)

Exactly! And hence the discovery of our blessed lady of the grilled cheese sandwich...

## Re: (Score:2)

does it have bacon on it? It there was truly a god, the sandwich would have bacon on it.

## Re: (Score:3, Funny)

## Re: (Score:3, Interesting)

In any large enough collection of random numbers you will be guaranteed to find whatever pattern you're looking for, whether it's a hundred thousand zeros in a row or the text of the collected works of Shakespeare. You can test statistically how likely you are to find particular patterns in a collection of numbers of a particular size though.

Finding patterns can be hard. If you have an idea of what you're looking for you can do much better than if you just want to find any pattern. SETI at Home has a pag

## Re: (Score:2)

erm, by definition it is finite!

Interestingly, if someone has 2.7 trillion digits of Pi stored on their hard drive, they could actually have more than just a message. The may, unwittingly, be in possession of material that breaks copyright law!

## Re: (Score:2)

The message was "We apologize for the inconvinience"

## Too bad... (Score:5, Funny)

~Hal

## fabrice BELLARD (Score:2)

Wasn't he the guy who developed lzexe ?

Anyway, what's with surnames spelled in caps ? Does he say "I am fabrice" and then he screams "BELLARD" when stating his name ?

## Re: (Score:2)

http://bellard.org/ [bellard.org]

He's also the guy who launched ffmpeg [ffmpeg.org] and is working on Qemu [nongnu.org], among other things...

## I think I've spotted an error (Score:2)

On his page with extracts of the digits of Pi [bellard.org], in the third column of the 799,999,951th digits, he's got a 2 where I think it should be a 5.

^_^

## easy (Score:2)

I have just calculated a digit that's much further. It's 7, and it's somewhere around the 8 trillionth decimal. Give or take a few.

## Would have been nice to see some code. (Score:2, Insightful)

I don't think many people will be running his program that takes 116 days to complete to get as far as he did. Would have been nice to at least see how the code worked.

## I calculated pi to the last digit... (Score:4, Informative)

in base pi. The answer was 10.

## No ECC RAM! (Score:2)

Unfortunately, the RAM had no ECC (Error Correcting Code), so random bit errors could not be corrected nor detected. Since the computation lasted more than 100 days, such errors were likely [12]."Great we have all these digits, but they're mostly useless bits and their reliability is suspect.

## The last digit (Score:2)

Is zero. You can stop now.

## Thumbs Up, Fabrice! (Score:2)

## Re:So... umm... (Score:4, Insightful)

Could someone fill me in what purpose that may be?

Because.

## Re:So... umm... (Score:5, Informative)

Basic research ..... you know that stuff that has no useful application now .....especially maths

Like group theory, invented in 1832 by Évariste Galois, had no really useful application until the mid 20th century ... Now quantum mechanics and so most of modern electronics uses it ....

## Re:So... umm... (Score:4, Informative)

He mentions in the "press release" page that the most important thing developed in his code is "an arbitrary-precision arithmetic library able to manipulate huge numbers stored on hard disks", which sounds basic-research-y. There's some more on that in the technical-details PDF, although unfortunately he says he doesn't plan to release the code (somewhat unusual, since most of his projects are free software).

## Re: (Score:2)

Improving the algorithms for arbitrary precision arithmetic -- that is the area that Fabrice is interested in, not necessarily computing X number of digits of pi. That, and (a) it is interesting, (b) it is a challenge and (c) let's do it for fun.

## Re: (Score:2)

Well, 'til now I saw the Pi-calculating e-peen waving as something like basic research. Ya know, where you build better computers and then you don't find anything sensible to do with them, so let's have them, say, find the next big prime (ok, being in cryptography I can see an application for that...)Threads like this one make me feel incredibly stupid.

Could someone fill me in what purpose that may be?

The same purpose as climbing a mountain -- because it's there.

## Re: (Score:2, Informative)

Read... The... Fine... (wait for it) Article!

Spoiler alert!

He developed a highly efficient library for arbitrary precision floating-point number calculations, capable of having a desktop machine best a supercomputer. Now go change your signature to "For lack of a better question..." ;-)

## Re: (Score:3, Interesting)

Depends on what you mean by "pattern", of course, but pi is conjectured to be normal [wikipedia.org], which would exclude many sorts of patterns. It's not proven, though.

## Re: (Score:2)

areno patterns.## Re: (Score:2)

## Re: (Score:2)

## Re: (Score:2)

Yeah, and if nothing else, watch out for the Michelin Man (Bibendum)

## Re: (Score:2)

If you would put the outcomes in a graph would a pattern arise?

When I graphed it, I got a perfect circle...

## Re: (Score:2)

I mean, apart from sheer nerd value, this has absolutely no worth to science or humanity.

Are you sure? I did not read the original article. Would be useless since I doubt I would understand the math his program is based on. But when the previous record was done on a multi million dollar machine and he did it on a single desktop computer I think it is not far fetched to assume he must have found some significant improvements to the pi calculating algorithm.

If this is possible for pi calculation, could something like that also be possible for prime number calculations? Maybe someone like him f