Prime95

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
Prime95
Developer(s)George Woltman
Initial release3 January 1996; 26 years ago (1996-01-03)
Stable release
30.3 build 6 / September 15, 2020 (2020-09-15)[2]
Preview release
30.7 build 9[1] / 15 November 2021; 12 months ago (2021-11-15)
Written inASM, C
Operating systemMicrosoft Windows, macOS, Linux, FreeBSD
TypeMersenne prime finder / system stability tester
LicenseFreeware[3]
Websitemersenne.org/download Edit this on Wikidata

Prime95, also distributed as the command-line utility mprime for FreeBSD and Linux, is a freeware application written by George Woltman. It is the official client of the Great Internet Mersenne Prime Search (GIMPS), a volunteer computing project dedicated to searching for Mersenne primes. It is also used in overclocking to test for system stability.[4]

Although most[5] of its source code is available, Prime95 is not free and open-source software because its end-user license agreement[3] states that if the software is used to find a prime qualifying for a bounty offered by the Electronic Frontier Foundation,[6] then that bounty will be claimed and distributed by GIMPS.

Finding Mersenne primes by volunteer computing[edit]

Prime95 tests numbers for primality using the Fermat primality test (referred to internally as PRP, or "probable prime"). For much of its history, it used the Lucas–Lehmer primality test, but the availability of Lucas–Lehmer assignments was deprecated in April 2021[7] to increase search throughput. Specifically, to guard against faulty results, every Lucas–Lehmer test had to be performed twice in its entirety, while Fermat tests can be verified in a small fraction of their original run time using a proof generated during the test by Prime95. Current versions of Prime95 remain capable of Lucas–Lehmer testing for the purpose of double-checking existing Lucas–Lehmer results, and for fully verifying "probably prime" Fermat test results (which, unlike "prime" Lucas–Lehmer results, are not conclusive).

To reduce the number of full-length primality tests needed, Prime95 also implements other, computationally simpler tests designed to filter out unviable candidates; as of 2021, this mainly comprises Pollard's p – 1 algorithm. The elliptic-curve factorization method and (in preview releases starting with 30.6) Williams's p + 1 algorithm are implemented, but are considered not useful at modern GIMPS testing levels, and mostly used in attempts to factor much smaller Mersenne numbers that have already undergone primality testing. Prime95 implements trial division, but because this type of work can be executed using single-precision arithmetic (as opposed to the double-precision arithmetic required by other GIMPS work types), almost all GIMPS trial division is done by third-party clients implementing GPU computation for its comparatively much greater single-precision throughput.

GIMPS has discovered 17 new Mersenne primes since its foundation in 1996, all using Prime95.[8] Each was the largest known prime number at the time of its discovery, except M37156667 and M42643801, which were discovered out of order from the larger M43112609.[9]

Use for stress testing[edit]

Prime95 28.7 running a stress test on an Intel quad-core Windows 10 system

To maximize search throughput, most of Prime95 is written in hand-tuned assembly, which makes its system resource usage much greater than most other computer programs. Additionally, due to the high precision requirements of primality testing, the program is very sensitive to computation errors and proactively reports them. These factors make it a commonly used tool among overclockers to check the stability of a particular configuration.[4]

See also[edit]

References[edit]

  1. ^ "View Single Post - Prime95 30.7". mersenneforum.org. Retrieved 2022-09-15.
  2. ^ Woltman, George. "I've made 30.3 build 6 the official download version at mersenne.org!". Retrieved 2020-09-16.
  3. ^ a b "How To Run a CPU Stress Test Using Prime95". Appuals.com. 2015-12-10. Retrieved 2019-05-23.
  4. ^ Woltman, George. "The security code or checksum is hard to forge. This is the only source code that is not published".
  5. ^ "EFF Cooperative Computing Awards". Electronic Frontier Foundation. 2008-02-29. Retrieved 2019-05-08.
  6. ^ Woltman, George (2021-04-08). "First time LL is no more".{{cite web}}: CS1 maint: url-status (link)
  7. ^ "GIMPS History - PrimeNet". Great Internet Mersenne Prime Search. Retrieved 2019-05-09.
  8. ^ "GIMPS Milestones". www.mersenne.org. Retrieved 2021-10-17.

External links[edit]

  • Official website Edit this at Wikidata with downloads for various architectures
  • How to use Prime95 for stress (torture) testing[1]
  1. ^ "Torture test your CPU with Prime95". www.playtool.com. Retrieved 2022-09-15.