Generalized Fermat Prime search program
genefer performs a fast probable primality test for numbers of the form b2n + 1 (Generalized Fermat Numbers) using a Fermat test. The GPU implementation is based on OpenCL™ and the CPU implementation is multithreaded.
genefer version 22 checks a single GFN. It is dedicated to the search for GFN primes in the range 17 ≤ n ≤ 23.
genefer version 26 checks a list of 8, 16 or 32 GFN. It is dedicated to the search for GFN primes in the range 15 ≤ n ≤ 18.
The search for b < 2,000,000,000 and n ≤ 14 is now complete thanks to the PRIVATE GFN SERVER GFN-12/13/14 prime search.
genefer version 20 was used to test n = 13 and n = 14. This application is deprecated. It is replaced with this version.
geneferv implements an Efficient Modular Exponentiation Proof Scheme discovered by Darren Li. The test is validated with Gerbicz - Li error checking and a proof is generated with (Pietrzak - Li) algorithm. Thanks to the Verifiable Delay Function, distributed projects run at twice the speed of double-checked calculations.
Any number of the form b2n + 1 such that 10,000 ≤ b < 2,000,000,000 and 15 ≤ n ≤ 18 can be tested on GPU or CPU.
The OpenCL implementation is highly optimized for Nvidia Ada Lovelace and Blackwell architectures (GeForce RTX 40 and 50 series), AMD RDNA 2, 3, 4 architectures (Radeon RX 6000, 7000, 9000 series) and Intel Alchemist and Battlemage architectures (Arc A7x0 and Arc B5x0).
The x64 implementation is highly optimized for CPU with AVX-512 or AVX10.2 (AMD Zen 4, 5, 6 [Ryzen 7000, 9000, 10000 series]; Intel X-Series 7th, 9th and 10th Gen; Intel 11th Gen; Intel Xeon Skylake-W and their successors; Intel Nova Lake).
- Linux x64
- Windows x64
Select the makefile of your target. On Windows, MSYS2 distribution and building platform can be installed.
The compiler (gcc or clang) can be selected, Boinc interface is optional.
The default settings are clang and linked to Boinc.
genefer is free source code, under the MIT license (see LICENSE). You can redistribute, use and/or modify it. Please give feedback to the authors if improvement is realized. It is distributed in the hope that it will be useful.