LLR tests Mersenne numbers?

Prime95 is the fastest as far as x86 processors go, and it is mostly free, except that if you discover a prime with it, you must abide by the Great Internet Mersenne Prime Search prize-distribution rules (you'll get a third of the EFF prize for a 100M digit prime, or a few thousand dollars or so for just a 'regular' prime).

If even that is too much of a restriction (it isn't really, I encourage you to read

http://mersenne.org/legal) then try

Mlucas or

Glucas which are programmed in Fortran and C respectively (as opposed to x86 Assembly for Prime95). I am unsure about their license terms, though if I had to guess I'd say they're free (as in freedom, and definitely free-gratis).

Prime95 includes 64 bit optimizations, although they're not really significant for LL tests.

As for a billion digit number, I highly recommend you give up any hope of testing it with any program available. It will be impossible for (AT LEAST) the next 20 years. For more details, see

here and

here. From the second page: You're looking at around 95,000 GHz days to do one test. One core of my Intel i7-2600K is able to do ~5 GHz-Days per day, that would take me around 50 years. (You could use all four cores, but you'd get less than 15 GHz-Days per day, because the LL test isn't very well parallelizable).

*Note: It also just occurred to me that Prime95 (and presumably the other testing programs) can't even test numbers that are a billion digits long. The maximum Prime95 exponent is 596M, whereas the lowest prime exponent that produces a billion digits is 3,321M. Note the order of magnitude difference

*of the exponents*.

**Note 2: I also just realized that

this link from above is not an exponent to be tested, because that link shows it's already been factored.