Pi Computation Record

Fabrice Bellard

December 31st, 2009

I am pleased to announce a new world record for the computation of the digits of Pi. The following number of digits were computed:

  2242301460000 hexadecimal digits (base 16)
  2699999990000 decimal digits (base 10)
The base 10 result needs about 1137 GB(1) of storage. Parts of the result are available here.

Most of the computation was carried out on a single desktop computer costing less than 2000 euros. The previous records since 1995 were done using multi-million euro supercomputers.

Computation time:

The previous record of about 2577 billion decimal digits was published by Daisuke Takahashi on August 17th 2009.

Formula and verification

The main computation used the Chudnovsky formula to give the binary result. Then the binary result was converted to a base 10 result.

The binary result was verified with a formula found by the author with the Bailey-Borwein-Plouffe algorithm which directly gives the n'th hexadecimal digits of Pi. With this algorithm, the last 50 hexadecimal digits of the binary result were checked. A checksum modulo a 64 bit prime number done in the last multiplication of the Chudnovsky formula evaluation ensured a negligible probability of error.

The conversion from binary to base 10 was verified with a checksum modulo a 64 bit prime number.

More technical details are available here.

Hardware

PC used during the computation: Backups were done using 2 TB hard disks (Seagate Barracuda LP model).

The verification of the binary digits used a network of 9 Desktop PCs during 34 hours. It could have been done on the same PC as the main computation by using 13 more days.

Operating System

The Linux Operating System was used with the 64 bit Red Hat Fedora 10 distribution. The 7.5 TB disk storage was managed using software RAID-0 and the ext4 filesystem. Files of up to 2.5 TB were manipulated during the computation.

Pi Software

All the software was written by the author. The most important part is an arbitrary-precision arithmetic library able to manipulate huge numbers stored on hard disks. Technical details are available here.
(1)
The standard SI and binary prefixes are used. For example:

Back to Home