GNU MP is a library for arbitrary precision arithmetic, operating on
signed integers, rational numbers, and floating point numbers. It has
a rich set of functions, and the functions have a regular interface.
GNU MP is designed to be as fast as possible, both for small operands
and huge operands. The speed is achieved by using fullwords as the
basic arithmetic type, by using fast algorithms, with carefully
optimized assembly code for the most common inner loops for lots of
CPUs, and by a general emphasis on speed (instead of simplicity or
elegance).
GNU MP is believed to be faster than any other similar library.
Its advantage increases with operand sizes for certain operations,
since GNU MP in many cases has asymptotically faster algorithms.