AutoPrimeNet does for Mlucas, PRPLL-NTT, PrMers, mfaktc/mfakto, PrimePath and other GIMPS software what Prime95/MPrime already does for itself: it automatically gets work from PrimeNet, registers assignments, reports progress, submits results, uploads proof files, and downloads certification starting values. It can additionally get assignments and submit results to mersenne.ca for exponents above the current PrimeNet limit of 1G.
New user? Follow the steps in the “Quick start” section. In most prompts, pressing Enter ⏎ accepts the recommended default.
Already know what you are doing? Use the download table, then run
autoprimenet --help or python3 autoprimenet.py --help for the full option list.
python3 autoprimenet.py --setuppython3 autoprimenet.pyTip: If a window opens and immediately closes, run AutoPrimeNet from a terminal instead of double-clicking it. The terminal lets you read any setup questions or error messages.
Please consider making a donation to support the continued development of AutoPrimeNet.
Prime95/MPrime has built-in PrimeNet support. Many other GIMPS programs are faster or specialized for particular hardware, but they need a separate assignment handler. AutoPrimeNet fills that gap.
| Program | Status | Command line option | Hardware/Notes | Worktypes |
|---|---|---|---|---|
| PRPLL-NTT | ✔️ Full support | --prpll |
OpenCL and CUDA GPUs | PRP and LL |
| Mlucas | ✔️ Full support | --mlucas |
x86 and ARM CPUs | PRP, LL and P-1 |
| PrMers | 🧪 Experimental full support | --prmers |
OpenCL GPUs | PRP, LL, P-1 and ECM |
| mfaktc | ✔️ Full support | --mfaktc |
CUDA GPUs | Trial factoring |
| mfakto | ✔️ Full support | --mfakto |
OpenCL GPUs | Trial factoring |
| PrimePath | 🧪 Experimental full support | --primepath |
Metal GPUs | Trial factoring |
| GpuOwl | ✔️ Full support | --gpuowl |
OpenCL GPUs; Deprecated | PRP, LL and P-1 |
| CUDALucas | ✔️ Full support | --cudalucas |
CUDA GPUs; Deprecated | LL only |
| CUDAPm1 | 〰️ Partial support | --cudalucas |
CUDA GPUs; Deprecated | P-1 only |
| Prime95/MPrime, cofact, gvtf | 📤 Report results only | --report-results or --upload-proofs |
For advanced usage only |
The Windows ZIP files include an executable that bundles AutoPrimeNet, Python, and the needed libraries. Most Windows users should choose the Windows 10/11 x86 64-bit build.
| Windows version | x86 64-bit | x86 32-bit | ARM 64-bit |
|---|---|---|---|
| Windows 10, 11 or newer | AutoPrimeNet_Windows_x64.zip | AutoPrimeNet_Windows_x86.zip | AutoPrimeNet_Windows_arm64.zip |
| Windows 8.1 | AutoPrimeNet_Windows-8.1_x64.zip | AutoPrimeNet_Windows-8.1_x86.zip | N/A |
| Windows Vista, 7, 8 | AutoPrimeNet_Windows-Vista-7-8_x64.zip | AutoPrimeNet_Windows-Vista-7-8_x86.zip | N/A |
| Windows XP | AutoPrimeNet_Windows-XP_x64.zip | AutoPrimeNet_Windows-XP_x86.zip | N/A |
python3 -m pip install requestspython3 -m pip install "requests[socks]"python3 autoprimenet.py --helppy launcher instead of python3.
Run the setup wizard once. It creates a prime.ini configuration file and registers this machine with
PrimeNet.
| Platform | Setup command | Normal start command after setup |
|---|---|---|
| Windows executable | autoprimenet.exe --setup |
autoprimenet.exe |
| Linux/macOS (Python program) | python3 autoprimenet.py --setup |
python3 -OO autoprimenet.py |
The setup wizard will ask for a few values:
ANONYMOUS if you do
not want to use an account.Recommended for beginners: Use the setup wizard instead of manually typing long command lines.
You can rerun --setup later to change the saved settings.
--timeout interval. Assignment fetching and
periodic progress check-ins still happen on their configured intervals.autoprimenet.log file if something does not look right.To run AutoPrimeNet once and exit, use --timeout 0. This is useful for testing setup, submitting pending
results, or manually fetching a small amount of work.
| Task | Command | Notes |
|---|---|---|
| Show help | --help |
Shows all supported options. |
| Change saved settings | --setup |
Safe to rerun; it updates prime.ini. |
| Submit results now | --report-results |
Useful for automating AutoPrimeNet in a script. |
| Upload proofs now | --upload-proofs |
Also reports results. |
| Show assignment status | --status |
Shows ETAs and assignment information. |
| Stop getting new work | --no-more-work |
Use before retiring or repurposing a system. |
| Resume getting work | --resume-work |
Reverses --no-more-work. |
| Recover assignments | --recover-all |
Caution: overwrites existing work files. |
| Register specific exponents | --register-exponents |
Advanced users only; most users should let AutoPrimeNet get work automatically. |
| More verbose output | --debug |
If you want to see how AutoPrimeNet works. |
| Output debugging information | --debug-info |
Useful diagnostics to include in bug reports. |
To upgrade, simply replace autoprimenet.exe or autoprimenet.py with the new version. Keep
your existing prime.ini configuration file, work files, result files, and logs. Check the release notes
on Mersenne Forum for any breaking changes.
| Problem | What to try |
|---|---|
| The window closes immediately | Run AutoPrimeNet from Windows Terminal, PowerShell, Command Prompt, or a Linux/macOS terminal so you can read the message. |
python3 is not found |
Install Python 3, or on Windows try py autoprimenet.py --setup. |
| Requests is missing | Run python3 -m pip install requests, or install the package from your package manager, such
as sudo apt install python3-requests on Debian/Ubuntu. |
| Unicode output error | Set PYTHONIOENCODING=utf-8 before running AutoPrimeNet. |
| No work is received | Check that the selected GIMPS program supports the chosen work preference, your user ID is correct, and the disk/memory limits are not too restrictive. |
| Progress is not updating | Make sure the GIMPS program is actually running and writing its checkpoint/log files in the directory AutoPrimeNet was configured to monitor. |
| Results or proof files are not detected | AutoPrimeNet normally uses OS file watching APIs such as inotify, FSEvents/kqueue, and
ReadDirectoryChangesW. If you are using a network drive, unusual filesystem, or other setup where file
watching does not work reliably, try --no-watch to use legacy polling behavior and please
report the issue. |
You see a ~lock file |
Leave it alone. It is used to prevent accidentally running multiple AutoPrimeNet instances in the same directory. |
The setup wizard is recommended, but the same information can be supplied from the command line. For example, to set up PRPLL-NTT anonymously with first-time PRP work:
python3 autoprimenet.py --timeout 0 --username ANONYMOUS --computer-name example --workpref 150 --prpll
With the Windows executable, replace python3 autoprimenet.py with autoprimenet.exe.
4 - P-1 factoring5 - ECM factoring8 - ECM on Mersenne cofactors12 - Trial factoring GPU101 - Double-check LL tests106 - Double-check LL tests with zero shift count150 - First-time PRP tests151 - Double-check PRP tests152 - World-record PRP tests153 - 100-million-digit PRP tests154 - Smallest available first-time PRP that needs P-1 factoring155 - Double-check using PRP with proof156 - Double-check using PRP with proof and nonzero shift count160 - First-time PRP on Mersenne cofactors161 - Double-check PRP on Mersenne cofactorsNot every GIMPS program supports every work preference.
| Worktype | Mlucas | GpuOwl | PRPLL | PrMers | CUDALucas | CUDAPm1 | mfaktc/mfakto | PrimePath |
|---|---|---|---|---|---|---|---|---|
| 4 | ✔ | ✔ | ✔ | ✔ | ||||
| 5 | ✔ | |||||||
| 8 | ✔ | |||||||
| 12 | ✔ | ✔ | ||||||
| 101 | ✔ | ✔ | ||||||
| 106 | ✔* | ✔ | ✔ | |||||
| 150 | ✔ | ✔ | ✔ | ✔ | ||||
| 151** | ✔ | ✔ | ✔ | ✔ | ||||
| 152 | ✔ | ✔ | ✔ | ✔ | ||||
| 153 | ✔ | ✔ | ✔ | ✔ | ||||
| 154 | ✔ | ✔* | ||||||
| 155 | ✔ | ✔ | ✔ | |||||
| 156 | ||||||||
| 160 | ✔ | ✔ | ||||||
| 161 | ✔ | ✔ |
AutoPrimeNet is an automated assignment handler program that also uses the PrimeNet API. It supports most GIMPS software, including Mlucas, GpuOwl, PRPLL, PrMers, CUDALucas, mfaktc, mfakto and PrimePath, and can additionally report results from Prime95/MPrime, CUDAPm1, cofact and gvtf. It is written and maintained by Teal Dulcet, with previous contributions from Daniel Connelly (CUDALucas) and Tyler Busby (mfaktc/mfakto). It was originally adapted from an older script for Mlucas by Loïc Le Loarer and Ernst W. Mayer.
Note: AutoPrimeNet uses the PrimeNet v5 API. It does not need your GIMPS password for PrimeNet assignment handling. Older scripts that ask for a GIMPS password are using the legacy manual assignment pages and will not provide the same features.
| File Name | File Size | Date Modified | Hash | |||
|---|---|---|---|---|---|---|
| quick-start-guide.html | 19,130 | 2026-01-17 | d02a5ae805f830d7f275ae930e1ed75e | |||
| autoprimenet.py | 368,618 | 2026-07-04 | 3df20915a3568a9cd05faf3c6eb26ce7 | |||
| AutoPrimeNet_Windows_x64.zip | 12,929,898 | 2026-07-03 | 3d6a89ce39a500cd0a9441de3ff473be | |||
| AutoPrimeNet_Windows_x86.zip | 10,690,574 | 2026-07-03 | ef3cd15d22ca4221daa820f00b3a326d | |||
| AutoPrimeNet_Windows-Vista-7-8_x64.zip | 7,731,979 | 2026-07-03 | 369591abbfd0d0250d5cfa1edc2fa5b8 | |||
| AutoPrimeNet_Windows-Vista-7-8_x86.zip | 6,288,737 | 2026-07-03 | d80099e9229ab1484177e96d0e152c4e | |||
| AutoPrimeNet_Windows-XP_x86.zip | 5,477,945 | 2026-07-03 | 16067cad4790a74b6a0eacd26398f98f | |||
| AutoPrimeNet_Windows_arm64.zip | 12,630,674 | 2026-07-03 | 9547afae4f1619fca0db4ffeb2c278d8 | |||
| AutoPrimeNet_Windows-XP_x64.zip | 6,285,558 | 2026-07-03 | ae6cb64efc5e221efbde561f5593222e | |||
| AutoPrimeNet_Windows-8.1_x64.zip | 11,830,275 | 2026-07-03 | 53e8c85273a0ef69dc9e2dbba0706e01 | |||
| AutoPrimeNet_Windows-8.1_x86.zip | 10,152,827 | 2026-07-03 | 994b6f040f1b2bacb8ca1dc8c29939fb | |||
| old_blurb.html | 18,408 | 2026-06-17 | 0e7f94a4ac582eaba592dadfa09491fe | |||