
We are pleased to present a new record on computing specific bits of π,
the mathematical constant,
and discuss performing such computations on Apache Hadoop clusters.
The specific bits represented in hexadecimal are
0E6C1294 AED40403 F56D2D76 4026265B CA98511D 0FCFFAA1 0F4D28B1 BB5392B8.
These 256 bits end at the 2,000,000,000,000,252^{nd}
bit position^{†},
which doubles the position and quadruples the precision of
the previous known record.
The position of the first bit is 1,999,999,999,999,997
and the value of the two quadrillionth bit is 0.
The computation is carried out by a MapReduce program called DistBbp
using the idle slices of the Hadoop clusters in Yahoo!.
To effectively utilize available cluster resources
without monopolizing the whole cluster,
we develop an elastic computation framework
that automatically schedules computation slices,
each a DistBbp job,
as either mapside or reduceside computation
based on changing cluster load condition.
We have calculated π at varying bit positions and precisions,
and one of the largest computations took 23 days of wall clock time
and 503 years of CPU time on a 1000node cluster.
For more details,
see arXiv:1008.3171.
See also our earlier results
and
Borwein's paper
for a survey on π computation.
^{†}
When π is represented in decimal, hexadecimal and binary,
we respectively have

π  =  3.1415926535 8979323846 2643383279 ... 

 =  3.243F6A88 85A308D3 13198A2E ... 

 =  11.00100100 00111111 01101010 ... 
Bit position is counted starting after the radix point.
For example,
the eight bits starting at the ninth bit position are 00111111 in binary
or, equivalently, 3F in hexadecimal.
