Great Internet Mersenne Prime Search: Difference between revisions

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
imported>MrSwedishMeatballs
 
imported>Artoria2e5
 
(One intermediate revision by one other user not shown)
Line 5: Line 5:
| logo                  = GIMPS logo 2020.png
| logo                  = GIMPS logo 2020.png
| logo_caption          = Logo
| logo_caption          = Logo
| software              = [[prime95]]
| software              = [[prime95]] (CPU), GpuOwl/PRPLL, Mlucas, mfaktc/mfakto, CUDALucas (GPU)
| total users            = 280,000
| total users            = 280,000
| total hosts            = 2,900,000<ref>{{cite web |title=PrimeNet Statistics |url=https://www.mersenne.org/primenet/ |website=www.mersenne.org |access-date=6 April 2025}}</ref>
| total hosts            = 2,900,000<ref>{{cite web |title=PrimeNet Statistics |url=https://www.mersenne.org/primenet/ |website=www.mersenne.org |access-date=6 April 2025}}</ref>
Line 12: Line 12:
The '''Great Internet Mersenne Prime Search''' ('''GIMPS''') is a collaborative project of volunteers who use freely available [[software]] to search for [[Mersenne prime]] numbers.
The '''Great Internet Mersenne Prime Search''' ('''GIMPS''') is a collaborative project of volunteers who use freely available [[software]] to search for [[Mersenne prime]] numbers.


GIMPS was founded in 1996 by [[George Woltman]], who also wrote the [[Prime95]] client and its Linux port MPrime. Scott Kurowski wrote the back-end PrimeNet [[server (computing)|server]] to demonstrate volunteer computing software by Entropia, a company he founded in 1997. GIMPS is registered as Mersenne Research, Inc. with Kurowski as Executive Vice President and board director. GIMPS is said to be one of the first large-scale [[volunteer computing]] projects over the Internet for research purposes.<ref>{{cite web|title=Volunteer computing|url=https://boinc.berkeley.edu/trac/wiki/VolunteerComputing|publisher=BOINC|access-date=25 December 2021|url-status=live|archive-url=https://web.archive.org/web/20211218111656/https://boinc.berkeley.edu/trac/wiki/VolunteerComputing|archive-date=18 December 2021}}</ref>
GIMPS was founded in 1996 by [[George Woltman]], who also wrote the [[Prime95]] client and its Linux port MPrime. Scott Kurowski wrote the back-end PrimeNet [[server (computing)|server]] to demonstrate volunteer computing software by Entropia, a company he founded in 1997. GIMPS is registered as Mersenne Research, Inc. with Kurowski as Executive Vice President and board director. GIMPS is said to be one of the first large-scale [[volunteer computing]] projects over the Internet for research purposes.<ref>{{cite web |title=Volunteer computing |url=https://boinc.berkeley.edu/trac/wiki/VolunteerComputing |publisher=BOINC |access-date=25 December 2021 |url-status=live |archive-url=https://web.archive.org/web/20211218111656/https://boinc.berkeley.edu/trac/wiki/VolunteerComputing |archive-date=18 December 2021}}</ref>


{{As of|2024|10}}, the project has found a total of eighteen Mersenne primes, sixteen of which were the [[largest known prime number]] at their respective times of discovery. The largest known [[prime number|prime]] {{as of|2024|10|lc=on|url=http://primes.utm.edu/top20/page.php?id=3}} is 2<sup>136,279,841</sup>&nbsp;−&nbsp;1 (or M<sub>136,279,841</sub> for short) and was discovered on October 12, 2024, by Luke Durant.<ref name="GIMPS-2024">{{cite web |title=GIMPS Discovers Largest Known Prime Number: 2<sup>136,279,841</sup> − 1 |url=https://www.mersenne.org/primes/?press=M136279841 |date=21 October 2024 |work=Mersenne Research, Inc. |access-date=21 October 2024}}</ref><ref name="GIMPS-2018">{{cite web |title=GIMPS Project Discovers Largest Known Prime Number: 2<sup>82,589,933</sup>-1 |url=https://www.mersenne.org/primes/press/M82589933.html |date=21 December 2018 |work=Mersenne Research, Inc. |access-date=21 December 2018 }}</ref> On December 4, 2020, the project passed a major milestone after all exponents below 100 million were checked at least once.<ref>{{cite web |title=GIMPS Milestones Report |url=http://www.mersenne.org/report_milestones/ |website=Mersenne.org |publisher=Mersenne Research, Inc. |access-date=5 December 2020}}</ref>
{{As of|2024|10}}, the project has found a total of eighteen Mersenne primes, sixteen of which were the [[largest known prime number]] at their respective times of discovery. The largest known [[prime number|prime]] {{as of|2024|10|lc=on|url=http://primes.utm.edu/top20/page.php?id=3}} is 2<sup>136,279,841</sup>&nbsp;−&nbsp;1 (or M<sub>136,279,841</sub> for short) and was discovered on October 12, 2024, by Luke Durant,<ref name="GIMPS-2024">{{cite web |title=GIMPS Discovers Largest Known Prime Number: 2<sup>136,279,841</sup> − 1 |url=https://www.mersenne.org/primes/?press=M136279841 |date=21 October 2024 |work=Mersenne Research, Inc. |access-date=21 October 2024}}</ref><ref name="GIMPS-2018">{{cite web |title=GIMPS Project Discovers Largest Known Prime Number: 2<sup>82,589,933</sup>-1 |url=https://www.mersenne.org/primes/press/M82589933.html |date=21 December 2018 |work=Mersenne Research, Inc. |access-date=21 December 2018 }}</ref> and оn June 18, 2025, the project passed a milestone after all exponents below 136,279,841 were checked at least once.<ref>{{cite web |title=GIMPS Milestones Report |url=http://www.mersenne.org/report_milestones/ |website=Mersenne.org |publisher=Mersenne Research, Inc. |access-date=5 December 2020}}</ref>


From its inception until 2018, the project relied primarily on the [[Lucas–Lehmer primality test]]<ref>[http://www.mersenne.org/faq.htm#what ''What are Mersenne primes? How are they useful?''] - GIMPS Home Page</ref> as it is an [[algorithm]] that is both specialized for testing Mersenne primes and particularly efficient on [[Binary numeral system|binary]] [[computer architecture]]s. Before applying it to a given Mersenne number, there was a [[trial division]] phase, used to rapidly eliminate many Mersenne numbers with small factors. [[Pollard's p − 1 algorithm|Pollard's ''p'' − 1 algorithm]] is also used to search for [[smooth number|smooth]] factors.
== Algorithm ==
From its inception until 2018, the project relied primarily on the [[Lucas–Lehmer primality test]] (LL)<ref>[http://www.mersenne.org/faq.htm#what ''What are Mersenne primes? How are they useful?''] - GIMPS Home Page</ref> as it is an [[algorithm]] that is both specialized for testing Mersenne primes and particularly efficient on [[Binary numeral system|binary]] [[computer architecture]]s. Before applying it to a given Mersenne number, there was a [[trial division]] phase, used to rapidly eliminate many Mersenne numbers with small factors. [[Pollard's p − 1 algorithm|Pollard's ''p'' − 1 algorithm]] is also used to search for [[smooth number|smooth]] factors. The variant of LL used in the main implementation (Prime95) is specifically based on [[irrational base discrete weighted transform]] with [[double-precision floating-point]] numbers, which provide an efficient way to square a large number modulo 2<sup>P</sup>-1.<ref name="Math"/>


In 2018, GIMPS adopted a [[Fermat primality test]] with basis a=3<ref>a=2 wouldn't work as all Mersenne numbers are 2-pseudoprimes.</ref><ref>https://www.mersenneforum.org/node/22795</ref>as an alternative option for primality testing,<ref>{{cite web | url=https://www.mersenne.org/various/math.php#lucas-lehmer | title=GIMPS - the Math - PrimeNet }}</ref> while keeping the Lucas–Lehmer test as a double-check for Mersenne numbers detected as [[probable prime]]s by the Fermat test.<ref>{{Cite web |title=mersenneforum.org - View Single Post - Getting reliable LL from unreliable hardware |url=https://mersenneforum.org/showpost.php?p=465743&postcount=116 |access-date=2022-10-05 |website=mersenneforum.org}}</ref> (While the Lucas–Lehmer test is deterministic and the Fermat test is only probabilistic, the probability of the Fermat test finding a [[Fermat pseudoprime]] that is not prime is vastly lower than the error rate of the Lucas–Lehmer test due to [[Soft error|computer hardware errors]].<ref>{{Cite web |title=mersenneforum.org - View Single Post - Getting reliable LL from unreliable hardware |url=https://mersenneforum.org/showpost.php?p=465798&postcount=127 |access-date=2022-10-05 |website=mersenneforum.org}}</ref>{{bettersource||Can this forum post be backed up by a mathematical publication? The article [[Fermat pseudoprime]] gives a sourced estimate for the probability of a composite pseudoprime for random base b, but not for fixed base 3|date=April 2025}})
Special care is taken to make sure that the use of floating-point numbers does not introduce errors into the LL calculation. The program verifies that the [[round-off error]] is no greater than 0.4 every 128 iterations, or if the exponent being tested is within 0.5% of the maximum exponent size that can be handled by the size of FFT in use (or if requested using a special option), at every single iteration. Every 12 hours the program runs an additional error check based on the [[Jacobi symbol]],<ref>Prime95 distribution, undoc.txt</ref> with 50% chance of catching an error. On top of these, each completed LL calculation is repeated by a different hardware for "double-checking". Based on historical double-check data, each LL calculation without any serious error reported had an error rate of 1.5%; those with at least one serious error reported had an error rate of 50%.<ref name="Math"/>


In September 2020,<ref>{{cite web |title=Announcements |url=https://www.mersenne.org/ |publisher=GIMPS, the Great Internet Mersenne Prime Search |archive-url=https://web.archive.org/web/20210814062113/https://www.mersenne.org/ |access-date=1 September 2021|archive-date=2021-08-14 }}</ref><ref>{{cite web |title=What's new |url=https://www.mersenne.org/download/whatsnew_303b6.txt |access-date=1 September 2021}}</ref><ref>{{cite web |title=Prime95 v30.3 |url=https://www.mersenneforum.org/showthread.php?t=25823 |access-date=1 September 2021}}</ref> GIMPS began to support [[primality certificate|primality proofs]] based on verifiable delay functions.<ref>{{cite web|url=https://mersenneforum.org/showthread.php?t=25638|title=The Next Big Development for GIMPS|last=Woltman|first=George|date=2020-06-16|work=GIMPS forum|access-date=20 May 2022}}</ref> The proof files are generated while the Fermat primality test is in progress. These proofs, together with an error-checking algorithm devised by Robert Gerbicz, provide a complete confidence in the correctness of the test result and eliminate the need for double checks. First-time Lucas–Lehmer tests were deprecated in April 2021.<ref>{{cite web|url=https://mersenneforum.org/showthread.php?p=575517|title=First time LL is no more|last=Woltman|first=George|date=2021-04-08|access-date=19 May 2022}}</ref>
In 2018, GIMPS adopted a [[Fermat primality test]] with basis a=3{{efn|1=a=2 would not work as all Mersenne numbers are 2-pseudoprimes.<ref>https://www.mersenneforum.org/node/22795</ref>}} as an alternative option for primality testing,<ref>{{cite web |url=https://www.mersenne.org/various/math.php#lucas-lehmer |title=GIMPS - the Math - PrimeNet }}</ref> while keeping the Lucas–Lehmer test as a double-check for Mersenne numbers detected as [[probable prime]]s by the Fermat test.<ref>{{Cite web |title=mersenneforum.org - View Single Post - Getting reliable LL from unreliable hardware |url=https://mersenneforum.org/showpost.php?p=465743&postcount=116 |access-date=2022-10-05 |website=mersenneforum.org}}</ref> This new test is called PRP (probable prime) in GIMPS parlance. Using a method devised by Robert Gerbicz, GIMPS can be "99.999+%" sure that a PRP result is generated correctly.<ref name="Math">{{cite web |title=GIMPS - The Math - PrimeNet |url=https://www.mersenne.org/various/math.php |website=www.mersenne.org}}</ref> As a result, even though the Lucas–Lehmer test is deterministic and the Fermat test is only probabilistic,{{efn|It is neither proven or disproved that Mersenne 3-pseudoprimes exist.}} the probability of the Fermat test finding a [[Fermat pseudoprime]] that is not prime is vastly lower than the error rate of the Lucas–Lehmer test due to [[Soft error|computer hardware errors]].<ref>{{Cite web |title=mersenneforum.org - View Single Post - Getting reliable LL from unreliable hardware |url=https://mersenneforum.org/showpost.php?p=465798&postcount=127 |access-date=2022-10-05 |website=mersenneforum.org}}</ref>{{better source needed||Can this forum post be backed up by a mathematical publication? The article [[Fermat pseudoprime]] gives a sourced estimate for the probability of a composite pseudoprime for random base b, but not for fixed base 3|date=April 2025}}


GIMPS also has sub-projects to factor known composite Mersenne and [[Fermat number]]s.<ref>{{cite web|url=https://mersenne.org/report_ecm|title=PrimeNet ECM Progress|access-date=20 May 2022}}</ref>
In September 2020,<ref>{{cite web |title=Announcements |url=https://www.mersenne.org/ |publisher=GIMPS, the Great Internet Mersenne Prime Search |archive-url=https://web.archive.org/web/20210814062113/https://www.mersenne.org/ |access-date=1 September 2021 |archive-date=2021-08-14 }}</ref><ref>{{cite web |title=What's new |url=https://www.mersenne.org/download/whatsnew_303b6.txt |access-date=1 September 2021}}</ref><ref>{{cite web |title=Prime95 v30.3 |url=https://www.mersenneforum.org/showthread.php?t=25823 |access-date=1 September 2021}}</ref> GIMPS began to support [[primality certificate|primality proofs]] based on verifiable delay functions countributed by Krzysztof Pietrzak.<ref>{{cite web |url=https://mersenneforum.org/showthread.php?t=25638 |title=The Next Big Development for GIMPS |last=Woltman |first=George |date=2020-06-16 |work=GIMPS forum |access-date=20 May 2022}}</ref> The proof files are generated while the Fermat primality test is in progress. These proofs, together with Gerbicz's error-checking algorithm (see above), provide a complete confidence in the correctness of the test result and eliminate the need for double checks (check of proof could be run in 1/100 of the time of the original Fermat computation).<ref name="Math"/> First-time Lucas–Lehmer tests were deprecated in April 2021, leaving LL to only be used on probable primes found by the Fermat test.<ref name=no1LL>{{cite web |url=https://mersenneforum.org/showthread.php?p=575517 |title=First time LL is no more |last=Woltman |first=George |date=2021-04-08 |access-date=19 May 2022}}</ref> PRP and LL are very similar in terms of runtime;<ref name="Preda">{{cite web |last1=Preda |first1=Mihai |title=preda/gpuowl |website=[[GitHub]] |url=https://github.com/preda/gpuowl |date=22 August 2025}}</ref> the preference comes from a higher confidence in PRP results.<ref name=no1LL/>
 
GIMPS also has sub-projects to factor known composite Mersenne and [[Fermat number]]s. These use the [[Lenstra elliptic-curve factorization|elliptic-curve factorization method]] and [[Williams's p + 1 algorithm]].<ref>{{cite web |url=https://mersenne.org/report_ecm|title=PrimeNet ECM Progress |access-date=20 May 2022}}</ref>{{efn|For a rationale behind this search, consult the related [[Cunningham Project]].}}


==History==
==History==
The project began in early January 1996,<ref>[http://www.garlic.com/~wedgingt/newsletters.html#9 The Mersenne Newsletter, Issue #9. Retrieved 2011-10-02.] {{webarchive|url=https://web.archive.org/web/20120206050420/http://www.garlic.com/~wedgingt/newsletters.html |date=2012-02-06 }}</ref><ref>{{cite web|url=https://www.mersenneforum.org/showpost.php?p=69824&postcount=3|title=mersenneforum.org - View Single Post - Party on! GIMPS turns 10!!!|website=www.mersenneforum.org|access-date=22 December 2018}}</ref> with a program that ran on [[Intel 80386|i386]] computers.<ref>{{cite web
The project began in early January 1996,<ref>[http://www.garlic.com/~wedgingt/newsletters.html#9 The Mersenne Newsletter, Issue #9. Retrieved 2011-10-02.] {{webarchive|url=https://web.archive.org/web/20120206050420/http://www.garlic.com/~wedgingt/newsletters.html |date=2012-02-06 }}</ref><ref>{{cite web |url=https://www.mersenneforum.org/showpost.php?p=69824&postcount=3 |title=mersenneforum.org - View Single Post - Party on! GIMPS turns 10!!! |website=www.mersenneforum.org |access-date=22 December 2018}}</ref> with a program that ran on [[Intel 80386|i386]] computers.<ref>{{cite web
  | url= http://www.mersenne.org/newsletters/news1.txt
  | url= http://www.mersenne.org/newsletters/news1.txt
  | title= The Mersenne Newsletter, issue #1
  | title= The Mersenne Newsletter, issue #1
Line 59: Line 62:
| publisher = GIMPS
| publisher = GIMPS
| access-date = 2012-04-05
| access-date = 2012-04-05
}}</ref> theoretically earning the GIMPS [[virtual machine|virtual computer]] a rank of 330 among the [[TOP500]] most powerful known computer systems in the world.<ref>{{cite web|title=TOP500 - November 2012|url=http://www.top500.org/list/2012/11/?page=4|access-date=22 November 2012|archive-date=5 October 2018|archive-url=https://web.archive.org/web/20181005073755/https://www.top500.org/list/2012/11/?page=4|url-status=dead}}</ref> The preceding place was then held by an 'HP Cluster Platform 3000 BL460c G7' of [[Hewlett-Packard]].<ref>TOP500 per November 2012; HP BL460c with 95.1 TFLOP/s (R max).{{cite web|title=TOP500 - Rank 329|url=http://www.top500.org/system/177960|access-date=22 November 2012}}</ref> As of July 2021 TOP500 results, the current GIMPS numbers would no longer make the list.
}}</ref> theoretically earning the GIMPS [[virtual machine|virtual computer]] a rank of 330 among the [[TOP500]] most powerful known computer systems in the world.<ref>{{cite web |title=TOP500 - November 2012 |url=http://www.top500.org/list/2012/11/?page=4 |access-date=22 November 2012 |archive-date=5 October 2018 |archive-url=https://web.archive.org/web/20181005073755/https://www.top500.org/list/2012/11/?page=4 |url-status=dead}}</ref> The preceding place was then held by an 'HP Cluster Platform 3000 BL460c G7' of [[Hewlett-Packard]].<ref>TOP500 per November 2012; HP BL460c with 95.1 TFLOP/s (R max).{{cite web |title=TOP500 - Rank 329 |url=http://www.top500.org/system/177960 |access-date=22 November 2012}}</ref> As of July 2021 TOP500 results, the current GIMPS numbers would no longer make the list.


Previously, this was approximately 50&nbsp;TFLOPS in early 2010, 30&nbsp;TFLOPS in mid-2008, 20&nbsp;TFLOPS in mid-2006, and 14&nbsp;TFLOPS in early 2004.
Previously, this was approximately 50&nbsp;TFLOPS in early 2010, 30&nbsp;TFLOPS in mid-2008, 20&nbsp;TFLOPS in mid-2006, and 14&nbsp;TFLOPS in early 2004.


==Software license==
==Software==
Although the GIMPS software's [[source code]] is publicly available,<ref>{{cite web | url=http://www.mersenne.org/freesoft/default.php#source | title=Software Source Code | publisher=Mersenne Research, Inc. | access-date=March 16, 2013}}</ref> technically it is not [[free software]], since it has a restriction that users must abide by the project's distribution terms.<ref name="legal">{{Citation
 
=== Prime95 ===
The primary software used by GIMPS is Prime95, which implements all algorithms for an x86 or x86-64 CPU: trial factoring (usually left to GPUs), PRP, P-1, P+1, ECM, and PRP certification. Although the Prime95 software's [[source code]] is publicly available,<ref>{{cite web |url=http://www.mersenne.org/freesoft/default.php#source |title=Software Source Code |publisher=Mersenne Research, Inc. |access-date=March 16, 2013}}</ref> technically it is not [[free software]], since it has a restriction that users must abide by the project's distribution terms.<ref name="legal">{{Citation
| url = http://www.mersenne.org/legal/
| url = http://www.mersenne.org/legal/
| title = GIMPS Legalese
| title = GIMPS Legalese
Line 78: Line 83:
}}</ref>
}}</ref>


Third-party programs for testing Mersenne numbers, such as Mlucas<ref>{{Cite web|url=https://www.mersenneforum.org/mayer/README.html|title = Mlucas README}}</ref> and Glucas<ref>{{Cite web|url=http://glucas.sourceforge.net/glucas/|title = Untitled}}</ref> (for non-x86 systems), do not have this restriction.
GIMPS also "reserves the right to change this [[End-user license agreement|EULA]] without notice and with reasonable retroactive effect''.''"<ref name="legal" />


GIMPS also "reserves the right to change this [[End-user license agreement|EULA]] without notice and with reasonable retroactive effect''.''"<ref name="legal" />
=== Third-party software ===
The third-party software do not share the same restriction as Prime95. They can be used to join GIMPS using a program called AutoPrimeNet, which fetches tasks from GIMPS and send back the results. Available software include:<ref name="AutoPrimeNet">{{cite web |title=AutoPrimeNet - download.mersenne.ca |url=https://download.mersenne.ca/AutoPrimeNet |website=download.mersenne.ca}}</ref>
* Mlucas, which implements LL, Fermat PRP, and Pépin's test. Shipped with MFactor for trial-factoring. Able to run on x86, x86-64, ARM, and most other CPU architectures. Uses double-precision IBDWT.<ref>{{Cite web |url=https://mersenneforum.org/mayer/README.html  |title = Mlucas README "(The not-PC-only version ;)"}}</ref>
* Glucas, outdated implementation of LL for x86 and non-x86 CPUs. Uses double-precision IBDWT.
* GPUowl and PRPLL, [[OpenCL]] programs for running PRP and LL intended for GPUs. Uses double-precision IBDWT. George Woltman maintains a fork that uses IBDWT in double-precision, single-precision, NTT over GF((2<sup>31</sup>-1)<sup>2</sup>), NTT over GF((2<sup>61</sup>-1)<sup>2</sup>), or a combination thereof.
* mfaktc ([[CUDA]]) / mfakto (OpenCL), programs for GPU trial factoring using 32-bit integer arithmetic.
* CUDALucas, outdated implementation of LL for CUDA. Uses double-precision IBDWT.
* PrMers/Marin, implements LL and PRP. Uses IBDWT with [[number-theoretic transform]] over Z/(2<sup>64</sup> - 2<sup>32</sup> + 1)Z using 64-bit integer arithmetic.
 
In addition, PrimeNet accepts other forms of data contributions from projects such as TJOAI (Tadashi Taura's custom software to trial-factor many Mersenne numbers at once).


==Primes found==
==Primes found==
All Mersenne primes are of the form {{nowrap|M<sub>''p''</sub> {{=}} 2<sup>''p''</sup> − 1}}, where ''p'' is a prime number itself. The smallest Mersenne prime in this table is {{nowrap|2<sup>1398269</sup> − 1.}}
All Mersenne primes are of the form {{nowrap|M<sub>''p''</sub> {{=}} 2<sup>''p''</sup> − 1}}, where ''p'' is a prime number itself. The smallest Mersenne prime in this table is {{nowrap|2<sup>1398269</sup> − 1.}}


The first column is the rank of the Mersenne prime in the (ordered) [[integer sequence|sequence]] of all Mersenne primes;<ref>{{cite web|title=GIMPS List of Known Mersenne Prime Numbers|url=https://www.mersenne.org/primes/|publisher=Mersenne Research, Inc.|access-date=2018-01-03}}</ref> GIMPS has found all known Mersenne primes beginning with the 35th.
The first column is the rank of the Mersenne prime in the (ordered) [[integer sequence|sequence]] of all Mersenne primes;<ref>{{cite web |title=GIMPS List of Known Mersenne Prime Numbers |url=https://www.mersenne.org/primes/|publisher=Mersenne Research, Inc. |access-date=2018-01-03}}</ref> GIMPS has found all known Mersenne primes beginning with the 35th.
{| class="wikitable sortable"
{| class="wikitable sortable"
|-
|-
! # || Discovery date || Prime M<sub>''p''</sub> || Digits count || Processor
! # || Discovery date || Prime M<sub>''p''</sub> || Digits count || Processor || Method
|-
|-
| style="text-align:center;"| 35 || November 13, 1996 || style="text-align:left;"| M<sub>1398269</sub> || style="text-align:right;"| 420,921 || [[Pentium]] (90 [[Hertz|MHz]])
| style="text-align:center;"| 35 || November 13, 1996 || style="text-align:left;"| M<sub>1398269</sub> || style="text-align:right;"| 420,921 || [[Pentium]] (90 [[Hertz|MHz]]) || Prime95 LL
|-
|-
| style="text-align:center;"| 36 || August 24, 1997 || style="text-align:left;"| M<sub>2976221</sub> || style="text-align:right;"| 895,932 || Pentium (100&nbsp;MHz)
| style="text-align:center;"| 36 || August 24, 1997 || style="text-align:left;"| M<sub>2976221</sub> || style="text-align:right;"| 895,932 || Pentium (100&nbsp;MHz) || Prime95 LL
|-
|-
| style="text-align:center;"| 37 || January 27, 1998 || style="text-align:left;"| M<sub>3021377</sub> || style="text-align:right;"| 909,526 || Pentium (200&nbsp;MHz)
| style="text-align:center;"| 37 || January 27, 1998 || style="text-align:left;"| M<sub>3021377</sub> || style="text-align:right;"| 909,526 || Pentium (200&nbsp;MHz) || Prime95 LL
|-
|-
| style="text-align:center;"| 38 || June 1, 1999 || style="text-align:left;"| M<sub>6972593</sub> || style="text-align:right;"| 2,098,960 || Pentium (350&nbsp;MHz)
| style="text-align:center;"| 38 || June 1, 1999 || style="text-align:left;"| M<sub>6972593</sub> || style="text-align:right;"| 2,098,960 || Pentium (350&nbsp;MHz) || Prime95 LL
|-
|-
| style="text-align:center;"| 39 || November 14, 2001 || style="text-align:left;"| M<sub>13466917</sub> || style="text-align:right;"| 4,053,946 || [[Advanced Micro Devices|AMD]] [[Athlon Thunderbird|T-Bird]] (800&nbsp;MHz)
| style="text-align:center;"| 39 || November 14, 2001 || style="text-align:left;"| M<sub>13466917</sub> || style="text-align:right;"| 4,053,946 || [[Advanced Micro Devices|AMD]] [[Athlon Thunderbird|T-Bird]] (800&nbsp;MHz) || Prime95 LL
|-
|-
| style="text-align:center;"| 40 || November 17, 2003 || style="text-align:left;"| M<sub>20996011</sub> || style="text-align:right;"| 6,320,430 || Pentium (2&nbsp;GHz)
| style="text-align:center;"| 40 || November 17, 2003 || style="text-align:left;"| M<sub>20996011</sub> || style="text-align:right;"| 6,320,430 || Pentium (2&nbsp;GHz) || Prime95 LL
|-
|-
| style="text-align:center;"| 41 || May 15, 2004 || style="text-align:left;"| M<sub>24036583</sub> || style="text-align:right;"| 7,235,733 || [[Pentium 4]] (2.4&nbsp;GHz)
| style="text-align:center;"| 41 || May 15, 2004 || style="text-align:left;"| M<sub>24036583</sub> || style="text-align:right;"| 7,235,733 || [[Pentium 4]] (2.4&nbsp;GHz) || Prime95 LL
|-
|-
| style="text-align:center;"| 42 || February 18, 2005 || style="text-align:left;"| M<sub>25964951</sub> || style="text-align:right;"| 7,816,230 || Pentium 4 (2.4&nbsp;GHz)
| style="text-align:center;"| 42 || February 18, 2005 || style="text-align:left;"| M<sub>25964951</sub> || style="text-align:right;"| 7,816,230 || Pentium 4 (2.4&nbsp;GHz) || Prime95 LL
|-
|-
| style="text-align:center;"| 43 || December 15, 2005 || style="text-align:left;"| M<sub>30402457</sub> || style="text-align:right;"| 9,152,052 || Pentium 4 (2&nbsp;GHz [[Overclocking|overclocked]] to 3&nbsp;GHz)
| style="text-align:center;"| 43 || December 15, 2005 || style="text-align:left;"| M<sub>30402457</sub> || style="text-align:right;"| 9,152,052 || Pentium 4 (2&nbsp;GHz [[Overclocking|overclocked]] to 3&nbsp;GHz) || Prime95 LL
|-
|-
| style="text-align:center;"| 44 || September 4, 2006 || style="text-align:left;"| M<sub>32582657</sub> || style="text-align:right;"| 9,808,358 || Pentium 4 (3&nbsp;GHz)
| style="text-align:center;"| 44 || September 4, 2006 || style="text-align:left;"| M<sub>32582657</sub> || style="text-align:right;"| 9,808,358 || Pentium 4 (3&nbsp;GHz) || Prime95 LL
|-
|-
| style="text-align:center;"| 45 || September 6, 2008 || style="text-align:left;"| M<sub>37156667</sub> || style="text-align:right;"| 11,185,272 || Intel [[Core 2 Duo]] (2.83&nbsp;GHz)
| style="text-align:center;"| 45 || September 6, 2008 || style="text-align:left;"| M<sub>37156667</sub> || style="text-align:right;"| 11,185,272 || Intel [[Core 2 Duo]] (2.83&nbsp;GHz) || Prime95 LL
|-
|-
| style="text-align:center;"| 46 || June 4, 2009 || style="text-align:left;"| M<sub>42643801</sub> || style="text-align:right;"| 12,837,064 || Intel Core 2 Duo (3&nbsp;GHz)
| style="text-align:center;"| 46 || June 4, 2009 || style="text-align:left;"| M<sub>42643801</sub> || style="text-align:right;"| 12,837,064 || Intel Core 2 Duo (3&nbsp;GHz) || Prime95 LL
|-
|-
| style="text-align:center;"| 47 || August 23, 2008 || style="text-align:left;"| M<sub>43112609</sub> || style="text-align:right;"| 12,978,189 || Intel Core 2 Duo E6600 CPU (2.4&nbsp;GHz)
| style="text-align:center;"| 47 || August 23, 2008 || style="text-align:left;"| M<sub>43112609</sub> || style="text-align:right;"| 12,978,189 || Intel Core 2 Duo E6600 CPU (2.4&nbsp;GHz) || Prime95 LL
|-
|-
| style="text-align:center;"| 48 || January 25, 2013 || style="text-align:left;"| M<sub>57885161</sub> || style="text-align:right;"| 17,425,170 || Intel Core 2 Duo E8400 @ 3.00&nbsp;GHz
| style="text-align:center;"| 48 || January 25, 2013 || style="text-align:left;"| M<sub>57885161</sub> || style="text-align:right;"| 17,425,170 || Intel Core 2 Duo E8400 @ 3.00&nbsp;GHz || Prime95 LL
|-
|-
| style="text-align:center;"| 49{{ref label|unverified_index|†|^ †}} || January 7, 2016 || style="text-align:left;"| M<sub>74207281</sub> || style="text-align:right;"| 22,338,618 || Intel [[Haswell (microarchitecture)|Core i7-4790]]
| style="text-align:center;"| 49 || January 7, 2016 || style="text-align:left;"| M<sub>74207281</sub> || style="text-align:right;"| 22,338,618 || Intel [[Haswell (microarchitecture)|Core i7-4790]] || Prime95 LL
|-
|-
| style="text-align:center;"| 50{{ref label|unverified_index|†|^ †}} || December 26, 2017 || style="text-align:left;"| M<sub>77232917</sub> || style="text-align:right;"| 23,249,425 || Intel [[Skylake (microarchitecture)|Core i5-6600]]
| style="text-align:center;"| 50 || December 26, 2017 || style="text-align:left;"| M<sub>77232917</sub> || style="text-align:right;"| 23,249,425 || Intel [[Skylake (microarchitecture)|Core i5-6600]] || Prime95 LL
|-
|-
| style="text-align:center;"| 51{{ref label|unverified_index|†|^ †}} || December 7, 2018 || style="text-align:left;"| M<sub>82589933</sub> || style="text-align:right;"| 24,862,048 || Intel Core i5-4590T
| style="text-align:center;"| 51{{ref label|unverified_index|†|^ †}} || December 7, 2018 || style="text-align:left;"| M<sub>82589933</sub> || style="text-align:right;"| 24,862,048 || Intel Core i5-4590T || Prime95 LL
|-
|-
| style="text-align:center;"| 52{{ref label|unverified_index|†|^ †}} || October 21, 2024 || style="text-align:left;"| M<sub>136279841</sub>{{ref label|number_size|‡|^ ‡}} || style="text-align:right;"| 41,024,320 || [[Nvidia A100]]
| style="text-align:center;"| 52{{ref label|unverified_index|†|^ †}} || October 21, 2024 || style="text-align:left;"| M<sub>136279841</sub>{{ref label|number_size|‡|^ ‡}} || style="text-align:right;"| 41,024,320 || [[Nvidia A100]] || Gpuowl PRP (verified using LL on Prime95, PRPLL, CUDALucas, etc.)<ref>{{cite web |last1=Woltman |first1=Geroge |url=https://www.mersenneforum.org/node/1055976 |quote=Prime95: Today, a new probable Mersenne prime was reported to the server! The PRP proof was quickly certified proving there were no errors during the calculations. LL tests using prime95 and prpll are underway. Perhaps an Mlucas LL test should also be run. Verification will likely take a few days. Cobbling together a press release and finding an interested outlet will also take some time. Until then, the exponent will not be announced. [...] (replies include multiple independent LL runs)|url-access=registration}}</ref>
|-
|-
|}
|}


{{note label|unverified_index|†|^ †}} {{As of|2025|5|14|df=US}}, 73,546,481 is the largest exponent below which all other prime exponents have been checked twice, so it is not verified whether any undiscovered Mersenne primes exist between the 48th (M<sub>57885161</sub>) and the 52nd (M<sub>136279841</sub>) on this chart; the ranking is therefore provisional. Furthermore, 130,439,863 is the largest exponent below which all other prime exponents have been tested at least once, so all Mersenne numbers below the 51st (M<sub>82589933</sub>) have been tested.<ref>{{cite web|title=GIMPS Milestones|url=http://www.mersenne.org/report_milestones/|publisher=Mersenne Research, Inc.|access-date=2020-11-30}}</ref>
{{note label|unverified_index|†|^ †}} {{As of|2025|11|9|df=US}}, 79,314,817 is the largest exponent below which all other prime exponents have been checked twice, so it is not verified whether any undiscovered Mersenne primes exist between the 50th (M<sub>77232917</sub>) and the 52nd (M<sub>136279841</sub>) on this chart; the ranking is therefore provisional. Furthermore, 138,659,453 is the largest exponent below which all other prime exponents have been tested at least once, so all Mersenne numbers below the 52nd Mersenne prime have been tested.<ref>{{cite web |title=GIMPS Milestones |url=http://www.mersenne.org/report_milestones/ |publisher=Mersenne Research, Inc. |access-date=2020-11-30}}</ref>


{{note label|number_size|‡|^ ‡}} The number M<sub>136279841</sub> has 41,024,320 decimal digits. To help visualize the size of this number, if it were to be saved to disk, the resulting text file would be nearly 42 megabytes long (most books in plain text format are under two megabytes).  A standard [[word processor]] layout (50 lines per page, 75 digits per line) would require 10,940 pages to display it. If one were to print it out using standard printer paper, single-sided, it would require approximately 22 [[Paper ream|reams]] (22 × 500 = 11,000 sheets) of paper.
{{note label|number_size|‡|^ ‡}} The number M<sub>136279841</sub> has 41,024,320 decimal digits. To help visualize the size of this number, if it were to be saved to disk, the resulting text file would be nearly 42 megabytes long (most books in plain text format are under two megabytes).  A standard [[word processor]] layout (50 lines per page, 75 digits per line) would require 10,940 pages to display it. If one were to print it out using standard printer paper, single-sided, it would require approximately 22 [[Paper ream|reams]] (22 × 500 = 11,000 sheets) of paper.


Whenever a possible prime is reported to the server, it is verified first (by one or more independent tests on different machines) before being announced. The importance of this was illustrated in 2003, when a false positive was reported to the server as being a Mersenne prime but verification failed.<ref>{{cite web|url=https://mersenneforum.org/showthread.php?p=6149|title=M40, what went wrong? - Page 11 - mersenneforum.org|website=mersenneforum.org|access-date=22 December 2018}}</ref>
As mentioned above, every Lucas-Lehmer result undergoes double-checking to avoid both false positives and false negatives. Positive results are given more scrutiny. The importance of this was illustrated in 2003, when a false positive was reported to the server as being a Mersenne prime but verification failed.<ref>{{cite web |url=https://mersenneforum.org/showthread.php?p=6149 |title=M40, what went wrong? - Page 11 - mersenneforum.org |website=mersenneforum.org|access-date=22 December 2018}}</ref>


The official "discovery date" of a prime is the date that a human first noticed the result for the prime, which may differ from the date that the result was first reported to the server. For example, M<sub>74207281</sub> was reported to the server on September 17, 2015, but the report was overlooked until January 7, 2016.<ref>{{cite web|url=https://www.mersenne.org/primes/?press=M74207281|title=GIMPS Project Discovers Largest Known Prime Number|date=January 19, 2016}}</ref>
The official "discovery date" of a prime is the date that a human first noticed the result for the prime, which may differ from the date that the result was first reported to the server. For example, M<sub>74207281</sub> was reported to the server on September 17, 2015, but the report was overlooked until January 7, 2016.<ref>{{cite web |url=https://www.mersenne.org/primes/?press=M74207281 |title=GIMPS Project Discovers Largest Known Prime Number |date=January 19, 2016}}</ref>


==See also==
==See also==
Line 142: Line 156:


==References==
==References==
{{notelist}}
{{Reflist}}
{{Reflist}}



Latest revision as of 01:21, 14 November 2025

Template:Short description Script error: No such module "Distinguish". Template:Infobox distributed computing project The Great Internet Mersenne Prime Search (GIMPS) is a collaborative project of volunteers who use freely available software to search for Mersenne prime numbers.

GIMPS was founded in 1996 by George Woltman, who also wrote the Prime95 client and its Linux port MPrime. Scott Kurowski wrote the back-end PrimeNet server to demonstrate volunteer computing software by Entropia, a company he founded in 1997. GIMPS is registered as Mersenne Research, Inc. with Kurowski as Executive Vice President and board director. GIMPS is said to be one of the first large-scale volunteer computing projects over the Internet for research purposes.[1]

Template:As of, the project has found a total of eighteen Mersenne primes, sixteen of which were the largest known prime number at their respective times of discovery. The largest known prime Template:As of is 2136,279,841 − 1 (or M136,279,841 for short) and was discovered on October 12, 2024, by Luke Durant,[2][3] and оn June 18, 2025, the project passed a milestone after all exponents below 136,279,841 were checked at least once.[4]

Algorithm

From its inception until 2018, the project relied primarily on the Lucas–Lehmer primality test (LL)[5] as it is an algorithm that is both specialized for testing Mersenne primes and particularly efficient on binary computer architectures. Before applying it to a given Mersenne number, there was a trial division phase, used to rapidly eliminate many Mersenne numbers with small factors. Pollard's p − 1 algorithm is also used to search for smooth factors. The variant of LL used in the main implementation (Prime95) is specifically based on irrational base discrete weighted transform with double-precision floating-point numbers, which provide an efficient way to square a large number modulo 2P-1.[6]

Special care is taken to make sure that the use of floating-point numbers does not introduce errors into the LL calculation. The program verifies that the round-off error is no greater than 0.4 every 128 iterations, or if the exponent being tested is within 0.5% of the maximum exponent size that can be handled by the size of FFT in use (or if requested using a special option), at every single iteration. Every 12 hours the program runs an additional error check based on the Jacobi symbol,[7] with 50% chance of catching an error. On top of these, each completed LL calculation is repeated by a different hardware for "double-checking". Based on historical double-check data, each LL calculation without any serious error reported had an error rate of 1.5%; those with at least one serious error reported had an error rate of 50%.[6]

In 2018, GIMPS adopted a Fermat primality test with basis a=3Template:Efn as an alternative option for primality testing,[8] while keeping the Lucas–Lehmer test as a double-check for Mersenne numbers detected as probable primes by the Fermat test.[9] This new test is called PRP (probable prime) in GIMPS parlance. Using a method devised by Robert Gerbicz, GIMPS can be "99.999+%" sure that a PRP result is generated correctly.[6] As a result, even though the Lucas–Lehmer test is deterministic and the Fermat test is only probabilistic,Template:Efn the probability of the Fermat test finding a Fermat pseudoprime that is not prime is vastly lower than the error rate of the Lucas–Lehmer test due to computer hardware errors.[10]Template:Better source needed

In September 2020,[11][12][13] GIMPS began to support primality proofs based on verifiable delay functions countributed by Krzysztof Pietrzak.[14] The proof files are generated while the Fermat primality test is in progress. These proofs, together with Gerbicz's error-checking algorithm (see above), provide a complete confidence in the correctness of the test result and eliminate the need for double checks (check of proof could be run in 1/100 of the time of the original Fermat computation).[6] First-time Lucas–Lehmer tests were deprecated in April 2021, leaving LL to only be used on probable primes found by the Fermat test.[15] PRP and LL are very similar in terms of runtime;[16] the preference comes from a higher confidence in PRP results.[15]

GIMPS also has sub-projects to factor known composite Mersenne and Fermat numbers. These use the elliptic-curve factorization method and Williams's p + 1 algorithm.[17]Template:Efn

History

The project began in early January 1996,[18][19] with a program that ran on i386 computers.[20][21] The name for the project was coined by Luke Welsh, one of its earlier searchers and the co-discoverer of the 29th Mersenne prime.[22] Within a few months, several dozen people had joined, and over a thousand by the end of the first year.[21][23] Joel Armengaud, a participant, discovered the primality of M1,398,269 on November 13, 1996.[24] Since then, GIMPS has discovered a new Mersenne prime every 1 to 2 years on average. However, the most recent largest prime found in October 2024 took nearly six years to find.

Status

Template:As of, GIMPS has a sustained average aggregate throughput of approximately 4.71 PetaFLOPS (or PFLOPS).[25] In November 2012, GIMPS maintained 95 TFLOPS,[26] theoretically earning the GIMPS virtual computer a rank of 330 among the TOP500 most powerful known computer systems in the world.[27] The preceding place was then held by an 'HP Cluster Platform 3000 BL460c G7' of Hewlett-Packard.[28] As of July 2021 TOP500 results, the current GIMPS numbers would no longer make the list.

Previously, this was approximately 50 TFLOPS in early 2010, 30 TFLOPS in mid-2008, 20 TFLOPS in mid-2006, and 14 TFLOPS in early 2004.

Software

Prime95

The primary software used by GIMPS is Prime95, which implements all algorithms for an x86 or x86-64 CPU: trial factoring (usually left to GPUs), PRP, P-1, P+1, ECM, and PRP certification. Although the Prime95 software's source code is publicly available,[29] technically it is not free software, since it has a restriction that users must abide by the project's distribution terms.[30] Specifically, if the software is used to discover a prime number with at least 100,000,000 decimal digits, the user will only win $50,000 of the $150,000 prize offered by the Electronic Frontier Foundation. On the other hand, they will win $3,000 when discovering a smaller prime not qualifying for the prize.[30][31]

GIMPS also "reserves the right to change this EULA without notice and with reasonable retroactive effect."[30]

Third-party software

The third-party software do not share the same restriction as Prime95. They can be used to join GIMPS using a program called AutoPrimeNet, which fetches tasks from GIMPS and send back the results. Available software include:[32]

  • Mlucas, which implements LL, Fermat PRP, and Pépin's test. Shipped with MFactor for trial-factoring. Able to run on x86, x86-64, ARM, and most other CPU architectures. Uses double-precision IBDWT.[33]
  • Glucas, outdated implementation of LL for x86 and non-x86 CPUs. Uses double-precision IBDWT.
  • GPUowl and PRPLL, OpenCL programs for running PRP and LL intended for GPUs. Uses double-precision IBDWT. George Woltman maintains a fork that uses IBDWT in double-precision, single-precision, NTT over GF((231-1)2), NTT over GF((261-1)2), or a combination thereof.
  • mfaktc (CUDA) / mfakto (OpenCL), programs for GPU trial factoring using 32-bit integer arithmetic.
  • CUDALucas, outdated implementation of LL for CUDA. Uses double-precision IBDWT.
  • PrMers/Marin, implements LL and PRP. Uses IBDWT with number-theoretic transform over Z/(264 - 232 + 1)Z using 64-bit integer arithmetic.

In addition, PrimeNet accepts other forms of data contributions from projects such as TJOAI (Tadashi Taura's custom software to trial-factor many Mersenne numbers at once).

Primes found

All Mersenne primes are of the form Mp = 2p − 1, where p is a prime number itself. The smallest Mersenne prime in this table is 21398269 − 1.

The first column is the rank of the Mersenne prime in the (ordered) sequence of all Mersenne primes;[34] GIMPS has found all known Mersenne primes beginning with the 35th.

# Discovery date Prime Mp Digits count Processor Method
35 November 13, 1996 M1398269 420,921 Pentium (90 MHz) Prime95 LL
36 August 24, 1997 M2976221 895,932 Pentium (100 MHz) Prime95 LL
37 January 27, 1998 M3021377 909,526 Pentium (200 MHz) Prime95 LL
38 June 1, 1999 M6972593 2,098,960 Pentium (350 MHz) Prime95 LL
39 November 14, 2001 M13466917 4,053,946 AMD T-Bird (800 MHz) Prime95 LL
40 November 17, 2003 M20996011 6,320,430 Pentium (2 GHz) Prime95 LL
41 May 15, 2004 M24036583 7,235,733 Pentium 4 (2.4 GHz) Prime95 LL
42 February 18, 2005 M25964951 7,816,230 Pentium 4 (2.4 GHz) Prime95 LL
43 December 15, 2005 M30402457 9,152,052 Pentium 4 (2 GHz overclocked to 3 GHz) Prime95 LL
44 September 4, 2006 M32582657 9,808,358 Pentium 4 (3 GHz) Prime95 LL
45 September 6, 2008 M37156667 11,185,272 Intel Core 2 Duo (2.83 GHz) Prime95 LL
46 June 4, 2009 M42643801 12,837,064 Intel Core 2 Duo (3 GHz) Prime95 LL
47 August 23, 2008 M43112609 12,978,189 Intel Core 2 Duo E6600 CPU (2.4 GHz) Prime95 LL
48 January 25, 2013 M57885161 17,425,170 Intel Core 2 Duo E8400 @ 3.00 GHz Prime95 LL
49 January 7, 2016 M74207281 22,338,618 Intel Core i7-4790 Prime95 LL
50 December 26, 2017 M77232917 23,249,425 Intel Core i5-6600 Prime95 LL
51<templatestyles src="Citation/styles.css"/>[†] December 7, 2018 M82589933 24,862,048 Intel Core i5-4590T Prime95 LL
52<templatestyles src="Citation/styles.css"/>[†] October 21, 2024 M136279841<templatestyles src="Citation/styles.css"/>[‡] 41,024,320 Nvidia A100 Gpuowl PRP (verified using LL on Prime95, PRPLL, CUDALucas, etc.)[35]

<templatestyles src="Citation/styles.css"/>^ † Template:As of, 79,314,817 is the largest exponent below which all other prime exponents have been checked twice, so it is not verified whether any undiscovered Mersenne primes exist between the 50th (M77232917) and the 52nd (M136279841) on this chart; the ranking is therefore provisional. Furthermore, 138,659,453 is the largest exponent below which all other prime exponents have been tested at least once, so all Mersenne numbers below the 52nd Mersenne prime have been tested.[36]

<templatestyles src="Citation/styles.css"/>^ ‡ The number M136279841 has 41,024,320 decimal digits. To help visualize the size of this number, if it were to be saved to disk, the resulting text file would be nearly 42 megabytes long (most books in plain text format are under two megabytes). A standard word processor layout (50 lines per page, 75 digits per line) would require 10,940 pages to display it. If one were to print it out using standard printer paper, single-sided, it would require approximately 22 reams (22 × 500 = 11,000 sheets) of paper.

As mentioned above, every Lucas-Lehmer result undergoes double-checking to avoid both false positives and false negatives. Positive results are given more scrutiny. The importance of this was illustrated in 2003, when a false positive was reported to the server as being a Mersenne prime but verification failed.[37]

The official "discovery date" of a prime is the date that a human first noticed the result for the prime, which may differ from the date that the result was first reported to the server. For example, M74207281 was reported to the server on September 17, 2015, but the report was overlooked until January 7, 2016.[38]

See also

References

Template:Notelist Template:Reflist

External links

Template:Mersenne

  1. Script error: No such module "citation/CS1".
  2. Script error: No such module "citation/CS1".
  3. Script error: No such module "citation/CS1".
  4. Script error: No such module "citation/CS1".
  5. What are Mersenne primes? How are they useful? - GIMPS Home Page
  6. a b c d Script error: No such module "citation/CS1".
  7. Prime95 distribution, undoc.txt
  8. Script error: No such module "citation/CS1".
  9. Script error: No such module "citation/CS1".
  10. Script error: No such module "citation/CS1".
  11. Script error: No such module "citation/CS1".
  12. Script error: No such module "citation/CS1".
  13. Script error: No such module "citation/CS1".
  14. Script error: No such module "citation/CS1".
  15. a b Script error: No such module "citation/CS1".
  16. Script error: No such module "citation/CS1".
  17. Script error: No such module "citation/CS1".
  18. The Mersenne Newsletter, Issue #9. Retrieved 2011-10-02. Template:Webarchive
  19. Script error: No such module "citation/CS1".
  20. Script error: No such module "citation/CS1".
  21. a b Script error: No such module "citation/CS1".
  22. The Mersenne Newsletter, Issue #9. Retrieved 2009-08-25.
  23. Script error: No such module "citation/CS1".
  24. Script error: No such module "citation/CS1".
  25. Script error: No such module "citation/CS1".
  26. Script error: No such module "citation/CS1".
  27. Script error: No such module "citation/CS1".
  28. TOP500 per November 2012; HP BL460c with 95.1 TFLOP/s (R max).Script error: No such module "citation/CS1".
  29. Script error: No such module "citation/CS1".
  30. Script error: No such module "citation/CS1".
  31. Script error: No such module "citation/CS1".
  32. Script error: No such module "citation/CS1".
  33. Script error: No such module "citation/CS1".
  34. Script error: No such module "citation/CS1".
  35. Script error: No such module "citation/CS1".
  36. Script error: No such module "citation/CS1".
  37. Script error: No such module "citation/CS1".