Alvin Bunk

Alvin's Blog.

GIMPS.USA

Introduction

This is the webpage for the GIMPS.USA team. The acronym GIMPS stand for Great Internet Mersenne Prime Search. Anyone is welcome to join. Please help us on the search for the next Mersenne prime! Please see: https://www.mersenne.org/ for more information.

Once you sign up for GIMPS, it’s a good idea to join a team. You can select a team under “Account/Team Info > My Team > Join Team”; then click the Join button for the team you would like your stats to be contributed to. You can search under “Reports” for some of the more active team. Feel free to join the GIMPS.USA team regardless where you live.

If you have a computer with a fairly recent 6 core or larger CPU, or a farily recent graphics card (RTX 20 series or better), you can do a lot of factoring work on your computer and help in the search. Use this page: https://www.mersenne.ca/mfaktc.php to compare graphics card performance and in particular look at the “GHz-days/day” column.

Using Prime95:

If you are new to GIMPS, you can basically download the Prime95 zip file (bzip for Linux) and extract it and start it up. You should enter your PrimeNet user ID (that you created on mersenne.org) and computer name so that you get credit for the CPU hours that you have contributed. Otherwise they will go to the anonymous account.

I highly suggest you modify the Worker Windows menu to take advantage of multiple cores that you have in your processor. You can change the “Number of worker windows to run” from the default of 1 to 3 or more, and then specify the number of cores used per worker. If you plan to do prime or double-check testing and you have a good/new cpu, then you can leave this as 1 worker.

If you have a newer cpu (i.e AMD Zen 3 with 8 or more cores), Prime 95 can be really good at running PRP or Double-check prime tests. In Worker Windows select Type of work to get as “First time prime tests” or “Double-check prime tests). I have a AMD Ryzen 9 – 5900X, and it can complete a full PRP test in 3 days; which is really fast. It also does Double Checks within 24 hours, which is also really fast.

If you have an older cpu or less cores, Double Check or PRP tests using Prime95 can take a really long time (Possibly weeks – so always check the status). So in that case (with a lower performance CPU) I highly recommend doing P-1 factoring, or “ECM for first factors of Mersenne numbers”, and lastly “Trial factoring to low limits”. Also Trial factoring is much, much faster using CUDA cores instead of a CPU in Prime95. For P-1 testing, make sure you set a good value for the “Memory resources” in the “Options > Resource Limits…” menu, the P-1 memory settings are in GB.

Most people nowadays will have a decent NVIDIA graphics cards, and if you do, it’s better (faster) to use GPUOwl for PRP or Double-check tests. Or if you have an older graphic card you can use CUDALucas for LL or Double Check tests – I’ll describe below.

If you have the patience to wait, you can try running PRP or LL Double Check tests in Prime95. You may just try one test with your setup first just to see how long it takes. If it takes too long (many weeks), go back into Worker Windows and change the work type before Prime95 grabs new work. You can also stop Prime95 (first change the work type in Worker Windows) from running and edit the “worktodo.txt” file so it is in the proper format. You can also go to: https://www.mersenne.org/workload/ and then select the exponent (work) and select the “Unreserve checked exponents” button to unreserve work that is taking way too long.

Using Mfaktc

You can use the application Mfacktc with a fairly new NVIDA graphics card to do Trial Factoring using CUDA cores. The effectiveness of using a NVIDIA GPU is that you can very quickly process exponents using CUDA cores. The latest pre-built mfaktc binaries for Windows and Linux are located here: https://download.mersenne.ca/mfaktc/mfaktc-0.21 . You will also need a CUDA DLL for your particular version/card depending on the CC capability of the card; the CUDA DLLs are all here: https://download.mersenne.ca/CUDA-DLLs , for example the RTX 2060 uses the DLL file “cudart64_100.dll”, which is under the CUDA-10.0 folder. Just download and unzip and follow instructions. You need to download the zip file that is compatible with your CUDA runtime and driver version based on your card. It does a self check when first running to tell you what card have.

Also for these tests you need to create a worktodo.txt file and populate it with assignments. You can get the GPU assignments here: https://www.mersenne.org/manual_gpu_assignment/ It’s best to start with a small amount of assignments (10 or less is a good start) and then see how long it takes to run. Normally Trial Factoring should take a few hours (or less) on a good graphics card, and if it’s taking too long you should unreserve the exponents. The length of time taken will also depend on the exponent itself and how large it is. When Trial Factoring is complete a results.txt file is created in the same folder in which are running mfaktc. Then you need to go to mersenne.org to upload the result file under “Manual Testing > Results”. Once you upload the results.txt file, you can delete it and it will auto generate a new file with new results and you can keep mfaktc running at all times if you wish.

gpuowl and P-1 Testing

If you have a more recent NVIDIA GPU card (i.e. RTX 2060), you can do P-1 tests using gpuowl. Pre-built gpuowl binaries for Windows can be downloaded at: https://download.mersenne.ca/gpuowl/win For running P-1 tests you will need a version 6 build. For example “gpuowl-v6.11-257-win64-g39fc002.7z” for a 64 bit build. Download the zip file, and unzip to a directory that you will use on the command line. You can run gpuowl-win.exe via the command line, but also you can add a “config.txt” file with command line parameters in it. For example for my NVIDIA GTX 1060 3GB I used something like this:

-d 1 -user userName -cpu GTX-1060-3GB -maxAlloc 2800 -B1 550000 -B2 28000000 -log 50000

Where “-d 1” is device 1 (I have two graphics cards); “username” is your GIMPS username (what you use to login); “-maxAlloc 2800” allocates 2.8GB of memory for the P2 tests (which needs lots of memory). Check the “help.txt” for more information on other parameters.

You also need to download work and create a “worktodo.txt” file. Go to: https://www.mersenne.org/manual_assignment/ to download new manual assignments, and select a “Preferred work type” of “P-1 factoring”. It will spit out text to the web page like so:

PFactor=9418FB41872B30F14622113976350429,1,2,113349569,-1,79,1.3

Then paste that text in the “worktodo.txt” and then run gpuowl-win.exe on the command line. For my GTX 1060 3GB it take about 7 hours (or less) to complete one P-1 factor test. This creates a results.txt file when completed and you need to upload that on the mersenne.org page under “Manual Testing > Results”.

gpuowl and PRP testing

If you have a more recent video card, you can get the latest gpuowl build (currently version 7) and run PRP double checks or PRP first time tests. You can download a pre-built Windows binary from this website: https://download.mersenne.ca/gpuowl/win and then unzip it in a folder you will use on a command line. And similar to the above P-1 testing section, you create a “config.txt” file specify parameters. NOTE: You can’t directly run P-1 tests in version 7. You’ll need to download manual assignments from https://www.mersenne.org/manual_assignment/ and choose “Preferred work type” of “Double-check PRP tests” or “Smallest available first-time PRP tests” or “Double-check using PRP with proof”.

Start with just one assignment first and then run it and see how long it takes. For example, with my GTX 1060 3G card it can take about a week (or less) to run. But with my RTX 2060 12GB it runs much, much faster (about 3 days for PRP with proof). Once it is completed you will have a results.txt file which you need to upload at the mersenne.org page under “Manual Testing > Results”. If you get a work type of “Double-check using PRP with proof”, then gpuowl also creates a *.proof file under the sub folder “proof”. You will need to upload the proof files (once), and you can download the “uploader.zip” file here: https://download.mersenne.ca/gpuowl to do that.

Using CUDALucas:

If you have a GTX 1060 NVIDIA card or similar, you run Lucas-Lehmer tests with your graphics card using the CUDALucas prebuilt application. CUDALucas is a few years old now, and gpuowl is recommended especially if you have a newer video card. Go to https://sourceforge.net/projects/cudalucas/ and download the latest. For example for Windows, as of today it is “CUDALucas2.06-CUDA4.0-10.1-Windows32.64.7z”, you will also need the libraries (i.e. CUDA-10.1-Libs-Windows.7z), and they should be extracted to the same directory. The CUDALucas zip file contains numerous compiled binaries, you only need the latest 64 or 32 bit binary (i.e. CUDALucas2.06-CUDA10.1-Windows-x64.exe) and the CUDALucas.ini file and README file.

After installing CUDALucas, you need to run the self tests. You should first run the “-cufftbench” and “-threadbench” self-tests so the CUDALucas will automtically select the right FFT and thread values for your graphic card for the particular exponent that you are testing. These self-tests can take a long time to run the first time, but are you run them once, that’s all you need.

In order to use CUDALucas, you need to create a “worktodo.txt” file which will contain the text line of the work that needs to be done. You need to get a manual assignment from: https://www.mersenne.org/manual_assignment/ and select the defaults of “1” and for “Preferred work type” select “Double-check LL tests”. I highly suggest starting with this first on your setup just to see how long it takes, since it can take many days. For example, for my card, which is a NVIDIA GTX 1060, the current assignments are taking about 6 days. After the test is 100% done, a results.txt file is created; and then you can submit this file at: https://www.mersenne.org/manual_result/ and you get credit for the work.

Unreserving Exponents

Often new users that don’t know the ability of their computers or video cards will oversubscribe exponents, either by grabbing too much manual work, or switching around configuration of Prime95. Below is a screenshot of work that was started but probably will never finish:

Notice the two lines circled in red; they both appear to be running on the same computer (why?) and at a high percentage completion, but the days to go is now negative. Normally days to go should be positive, this just means the GIMPS has site has not received any response on the status of the exponent.

For both of the above two case, you should go to “Account/Team Info > My Account > Assignments”, and then scroll down and search for these exponents and check the box besides them, and on the bottom select the “Unreserve checked exponents” and click the button. This should unreserve them and release to other people. This is a good idea (to release exponents) when you know it’s taking a very long time for your computer to complete an exponent.