Marin Mersenne 2^P-1
Username
Password
Forgot password?
Blue
Great Internet Mersenne Prime Search
GIMPS
Finding World Record Primes Since 1996

Mersenne & GIMPS glossary

This page contains a list of the most common terms and abbreviations used in the Great Internet Mersenne Prime Search

AID
Assignment ID. 32-character hexadecimal string representing an assignment from PrimeNet.
API
Application Programming Interface. System that allows different software to talk to each other. In the context of GIMPS it refers to the system where client software (Prime95, AutoPrimeNet) can get assignments, submit results, update status, etc.
assignment
Agreement between PrimeNet and the user that the user has exclusive rights to perform a certain type of test on a certain Mersenne number for a period of time. See also poaching.
AutoPrimeNet
Software designed to facilitate easy communication with PrimeNet to get assignments and submit result, for all software other than Prime95/mprime (which has communication built-in). See forum, github, download.
BOINC
Distributed computing platform. See wiki
bounds
For factoring methods P-1, P+1, ECM the parameters determining what size of factor might be found. Larger bounds will find more factors, but take longer to calculate and require a lot more RAM in Stage-2. Prime95 calculates the optimal balance between chance of finding a factor, time to run the test, exponent being tested, and the available RAM.
Brent-Suyama extension
Technique used in P-1 testing to possibly find factors outside the bounds. Used in older versions (before v30) of Prime95 but newer versions use a different technique to use much larger bounds. See wiki.
CERT
PRP Proof Certification. See proof.
certification
PRP Proof Certification. See proof.
CLI
Command-Line Interface. Program that operates in text mode only. Opposite of GUI. See wiki.
cofact
Software for testing Fermat and Mersenne cofactors. See forum, github.
cofactor
Remaining number left when a large number is divided by all the known prime factors.
Colab
Google offers a service known as Colaboratory (Colab), which allows anyone with an internet connection free access to high-performance TPU, GPU and CPU-powered Jupyter Notebooks. This can be used to try various GIMPS software, especially for users who do not have the necessary hardware or software to run it on their own systems. Notebooks for trial factoring (mfaktc) are available from GPU72 here and for primality/P-1 testing (MPrime, CUDALucas, GpuOwl) are available here.
composite
Number with at least two factors (other than itself and 1). The factors may or may not be known.
CUDA
Programming system allowing NVIDIA GPUs to run software such as mfaktc. Compare OpenCL. See wiki.
CUDALucas
LL testing software for NVIDIA GPUs written by Shoichiro Yamada. Compare gpuLucas, gpuowl, PRPLL. See wiki.
CUDAPm1
CUDA-based program, based on CUDALucas code, for P-1 testing on GPUs. No longer developed, see GpuOwL for GPU P-1. See wiki, forum.
DC
Double Check. See LL-DC, PRP-DC.
ECM
Elliptic-Curve Method factorization. Factorization method that is used, typically only on very small Mersenne numbers (exponents under 1M). Can find larger factors (typically 2100 to 2200+) than either trial factoring or P-1
exponent
Mersenne numbers are always in the form 2exponent - 1. Specific Mersenne numbers are usually referred to by the exponent, and identified as such with a M prefix, as in M1234577.
factoring
Attempting to find a small prime number that divides into a larger number. Finding a factor for a Mersenne Number is the fastest and most definite way to prove that number is not a Mersenne Prime. Factorization methods include trial factoring (TF), P-1, ECM.
Fermat
May refer to mathematician Pierre de Fermat, Fermat Numbers, Fermat Primality Test (PRP), or other things named after him.
FFT
Fast Fourier Transform. Algorithm used in multiplying very large numbers. Used (in GIMPS context) mostly in primality testing. Longer FFTs can handle larger numbers without roundoff errors but are slower. See wiki
First Time Check
A primality test on a Mersenne number that has not had one before. To confirm the test was run correctly, it needs to be followed up with either a PRP proof certification, or a Lucas-Lehmer Double-Check (LL-DC).
forum
In this context, the Mersenne Forum at https://www.mersenneforum.org/
FTC
See First Time Check.
G
Giga = billion (1,000,000,000). Usually used in context of size of exponent. PrimeNet tracks exponents up to 1G, mersenne.ca tracks exponents between 1G to 10G. See also tf1G.
George Woltman
Founder of GIMPS, author of Prime95 (and other) software..
GHd
See GHz-day.
GHz-day
Standard GIMPS unit of work, representing the work accomplished by one core of a hypothetical 1 GHz Core 2 Duo CPU in one day. See wiki.
GIMPS
Great Internet Mersenne Prime Search. Project created in 1996 by George Woltman to use many "average" computers to search for Mersenne Primes rather than a single supercomputer. See https://www.mersenne.org/
GitHub
Developer platform that allows developers to create, store, manage and share their code. See wiki.
GPU
Graphics Processing Unit. The specialized processor used in video cards. Less general-purpose than a CPU, but when the type of work is suitable to a GPU the software can orders of magnitude faster than the CPU equivalent.
GPU72
Sub-project and website developed soon after the first GPU testing software became available, notably mfaktc, for the purpose of trial factoring (TF) exponents to higher levels than PrimeNet was handing out to the CPU clients at the time. The original goal of the project was to TF all available exponents up to at least 72 bits. Largely superseded by improvments to PrimeNet. See site.
gpuLucas
CUDA-based GPU for Lucas-Lehmer primality testing. Compare CUDALucas, gpuowl, PRPLL. See wiki.
GpuOwL
GIMPS software for GPU. Newer versions are now known as PRPLL. Mostly used for primality testing work types: PRP, LL, P-1 factoring. See forum, github, download.
GUI
Graphical User Interface. Program that operates in visual mode, typically with combination of keyboard, mouse or touch interface. Opposite of CLI. See wiki.
hexadecimal
Also just "hex". Base-16 numbering system, using characters 0123456789ABCDEF. Uppercase or lowercase does not matter. See wiki.
iteration
The primality tests (PRP or L-L) repeat a similar calculation over and over, approximately the same number of times as the exponent being tested. Each cycle through the calculation is an iteration. Descriptions of how fast a computer is processing the calculation and how long it will take to complete may be expressed in ms/it (milliseconds-per-iteration).
JSON
JavaScript Object Notation. Standard text-based format for storing and transmitting data, easy for computers to interpret but also human-readable. In GIMPS context most commonly used for results files. See wiki.
LL (or L-L)
see Lucas-Lehmer primality test.
LL-DC
Lucas-Lehmer Double Check. Second run of L-L test, running on different hardware to the first test, to ensure the same result is obtained as a guard against hardware or software error during the testing run (which may take days to years to complete). If a non-matching result is obtained in the second run a third (or more) run (again on different hardware) is run until two independent results agree with each other.
Lucas-Lehmer
Algorithm used to prove if a Mersenne number is prime or not. If the end result is zero the number is prime. To guard against hardware or software errors during the tests (which may take days to years to complete), GIMPS tests each Mersenne Number twice on different hardware to make sure the same answer is obtained. See wiki and Math Page.
M
Mersenne or Million. Meaning can vary depending on context:
  1. M1234577 means Mersenne number with exponent of 1234577
  2. M51 means the 51st Mersenne Prime
  3. 100M means either the number 100,000,000 or Mersenne numbers with exponents of that number and a bit higher (exact range depends on context).
manual testing
System where user needs to get assignments and submit results at regular intervals. Generally applies only to computers not connected to the internet. Used to be more common on third-party software before AutoPrimeNet was available. Automated communication is preferred and manual testing should be avoided if at all possible.
Mersenne
May refer to a Mersenne Number, or to the mathematician who studied them: Marin Mersenne.
mersenne.ca
Semi-official companion web site to mersenne.org. Provides alternate presentations of data on all the Mersenne numbers that mersenne.org covers, and is the official tracker for exponents between one billion and ten billion (1G-10G). See link. See also tf1G, OBD.
Mersenne Number
Number in the form 2p - 1 (one less than two to the power of p), where p is a prime number. If the entire number is also prime it is called a Mersenne Prime. See wiki.
mersenne.org
The official web site of GIMPS. Includes both human-visible web pages (such as this one), and the server/database portion referred to as PrimeNet. See link.
Mersenne Prime
Number in the form 2p - 1 (one less than two to the power of p), where p is a prime number and the entire number is also prime. See wiki.
mfaktc
Trial Factoring software for NVIDIA GPUs. Currently (2024) the fastest trial-factoring software. Written by Oliver Weihe. See forum.
mfakto
Trial Factoring software for AMD GPUs, derived from mfaktc. Written by Bertram Franz. See forum.
Mlucas
LL testing software written by Ernst Mayer. See wiki, github.
mprime
Name of Prime95 software on Linux
OBD
Operation Billion Digits
OpenCL
Programming system allowing GPUs to run software such as mfakto. Compare CUDA. See wiki.
Operation Billion Digits
Sub-project dedicated to doing advance work on finding the first prime number with at least a billion digits (for which there is a US$250,000 prize). The project makes no effort to actually find primes, only to eliminate candidates by trial factoring and P-1 factoring. A subset of tf1G. See forum, wiki, tracker.
order of magnitude
Expression used to refer to relative size or speed. One order-of-magnitude means 10x. When used in plural means something is 100x, 1000x, etc bigger/faster.
PRP-DC
PRP Double Check. Similar to LL-DC, early versions of the GIMPS PRP test required two matching runs for verification. Since 2020 GIMPS uses PRP testing that generates a proof file that can verify the PRP ran correctly with only around 0.5% of the effort of a second PRP test, eliminating the need for two matching tests.
P-1
P-1 factoring. Also written PM1. Second factoring stage in GIMPS workflow if trial factoring (TF) did not find any factors. Can find larger factors than TF (typically 280 to 2120, rarely up to 2180+). Requires large amounts of RAM are required for effective P-1, e.g. 32GB-256GB or more. See wiki.
poaching
When a user performs a test and submits a result for an exponent currently assigned to another user. Considered rude behavior.
P+1
Also written PP1. Factorization method similar to P-1. See wiki.
primality testing
Test used to determine if a number is prime or composite. May include PRP, LL, PRP-CF.
prime
Number that cannot be divided by any whole number (other than itself and 1). May also refer to a Mersenne Prime. See wiki.
Prime95
Official GIMPS software. Also known as mprime on Linux. Can perform all GIMPS work types: PRP, PRP certification, PRP cofactor, LL, P-1 factoring, P+1 factoring, ECM factoring, trial factoring. See forum and download.
PrimeNet
The server/database portion of GIMPS that handles tracking the status all the Mersenne numbers (with exponents less than one billion (1000M)), handing out assignments and processing results. Located at mersenne.org but is separate from the human-visible web pages there.
primenet.py
Former name of AutoPrimeNet.
probable prime
See PRP.
proof
PRP Proof. The method of generating a verification file that can be used to certify that the PRP test was completed correct in about 0.5% the time it takes to run the PRP test. Also used to refer to the file itself.
Proof Power
Defines effort and storage required for PRP certification. Each larger proof power requires half the computing time to verify, but takes double the disk space. See data tables.
PRP
PRobable Prime. May refer to a probable prime number that has characteristics typical of prime numbers (but hasn't been definitively proven prime), or to the Fermat Primality Test used to calculate whether a number is probably-prime or not. Since 2020 GIMPS uses PRP testing that generates a proof file that can verify the PRP ran correctly with only around 0.5% of the effort of a second PRP test, eliminating the need for PRP-DC.
PRP Base
Starting value for the PRP test at iteration 0. Typically defaults to 3. Not all values would produce a valid result. PRP DC tests (if applicable) must use the same base.
PRP-CF
PRobable Prime CoFactor. PRP test on the cofactor of a Mersenne number with one or more known prime factors.
PRP Type
There are five residue types defined by George. Typically defaults to 1 if there are no known factors, or 5 if there are known factors. PRP DC tests (if applicable) must use the same residue type. See forum (also undoc.txt from Prime95).
PRPLL
GIMPS software for GPU. Used for primality testing work types: PRP and LL. Formerly known as GpuOwL. See forum, github, download.
residue
The value calculated at the end of a primality test (PRP or L-L). For L-L, if residue is zero then the Mersenne number is a Mersenne Prime, otherwise it is composite. Sometimes written res64 since it contains 64 bits of data (or res2048 for a 2048-bit version).
results.txt
Output file from various software that contains a brief (usually 1-line) summary of the test performed and the result. Older software would output results in a proprietary format incompatible between software and work types, since about 2020 most software has moved to outputting results in JSON format which is much easier for PrimeNet to understand and can contain a lot more information while still being easily human-readable. Some software (including Prime95 may output both the legacy format in results.txt and JSON in results.json.txt.
Roundoff Error
Since floating point computations are inexact, after every iteration the floating point values are rounded back to integers. The discrepancy between the proper integer result and the actual floating point result is called the convolution or roundoff error. If the error ever exceeds 0.5 then the rounding step will produce incorrect results, meaning a larger FFT length should have been used.
stage-2
For factoring methods P-1, P+1, ECM the calculation is done in two steps, called Stage-1 and Stage-2. The first stage does not require a lot of RAM, but the second stage does: anywhere from 1GB to 100+GB depending on the type of test and exponent being tested. More available RAM allows for higher bounds to be selected, resulting in an increased chance of finding a factor.
string
Series of letters, numbers, punctuation. See wiki
TC
Triple Check. See LL-DC, PRP-DC.
TF
See trial factoring.
tf1G
Sub-project for trial factoring candidate Mersenne numbers with exponents between one billion (1G) and 232 (the current limit of software like mfaktc/mfakto. See site.
trial factoring
Simple fast method to look for small factors (up to around 280). Most efficient TF hardware/software combination (as of 2024) is mfaktc on an NVIDIA GPU. If TF fails to find a factor, other factorization methods are tried notably P-1 and ECM.
UID
User ID. Account name selected when creating a GIMPS account.
wavefront
The general range of exponents being worked on currently. If not otherwise specified refers to the range of exponents currently getting PRP tested as first time checks. May also be specified to refer to other wavefronts, including LL-DC, P-1, etc. The wave-like nature of trial factoring progress can be see in this video.
worker
Portion of software testing a specific Mersenne number. Some software (like Prime95) can run multiple workers within the single instance of the software, each worker testing a different number (on different CPU cores, for example).
worktodo
Input file for software listing what assignments are to be worked on. Format varies according to type of work being done, usually one assignment per line, sometimes with privision for multiple workers. Usually called worktodo.txt
work type
Any of the kind of work GIMPS clients can do, including factoring and primality testing. See list.