database. You might do this for two reasons:
1) Let's say you're testing range 1234000 to 1234999. If I send you some
mail saying that a factor has been found for M1234567, then you use
Clear Primes to remove 1234567 from your database so that you
won't have to run a Lucas-Lehmer test on it.
2) You downloaded a new database after checking all the exponents
between 1234000 and 1234300. You can use Clear Primes
to remove the exponents between 1234000 and 1234300.
Do not use the Factor menu choice. If you're running Lucas-Lehmer tests
on a range or just factoring a range - use Test/Manual Operation.
The program will know the optimal amount of factoring to perform. Having
said that, if you insist on using this menu choice, you can look for factors
less than 2^62 of any Mersenne numbers with an exponent less than 10,000,000.
Let's say you're writing a factoring program for a UNIX machine and want to
check its results. Use both this menu choice and your UNIX program to
search for small factors on a set of Mersenne numbers and compare the results.
Round off checking. This option will slow the program down by about 15%.
This option displays the smallest and largest "convolution error". The
convolution error must be less than 0.49 or the results will be incorrect.
There really is no good reason to turn this option on.
The Priority menu is used to adjust the priority prime95 runs at.
You should not need to change this. You might raise the priority
if you (or your coworker) just cannot live without your screen
saver (bad idea), or if you are running some ill-behaved program
that is using CPU cycles for no good reason.
The Manual Communication menu choice should only be used if the
automatic detection of an Internet connection is not working for you.
Using this option means you have to remember to communicate with the
server every week or two (by using this same menu choice).
The Quit GIMPS menu choice is used when you no longer want this computer
to work on the GIMPS project. You may rejoin at a later date.
If you are a PrimeNet user your unfinshed work will be returned to the
server. If you are a manual user, you need to send me email containing
your results.txt file and a note saying you are quitting.
OPTIONS MENU
------------
The CPU menu choice lets you tell the program what kind of CPU you
have. The program will normally figure this information out for you.
This information is used to give accurate time estimates in the
Test/Status menu choice. It is also used, to choose between integer
based factoring (Cyrix and 486) and floating point based factoring
(Pentium and Pentium Pro). No matter what you choose, the program
uses the same code to run the Lucas-Lehmer primality test. If you have
an AMD K5 or Cyrix M2 chip, choose Cyrix 6x86.
The Preferences menu choice lets you control how often a line is
written to the main window. Also how often a line is written to
the results file. It also lets you change how often
intermediate files (to guard against power failure an crashes)
are created. You can control how often the program checks to
see if you are connected to the Internet. The program polls
whenever it has new data to send to or work to get from the PrimeNet
server. If you are low on disk space, you can select one intermediate
file instead of two. However, if you crash in the middle of writing
the one intermediate file, you may have to restart an exponent from
scratch. You can also tell the program to be quiet, rather than
beeping like crazy, if a new Mersenne prime is found.
The Self Test choice lets you run a sixteen-hour self test. Passing the
self-test does not guarantee that you will not run into any hardware
problems later on, but it does give you some confidence that the program
is working properly.
The Torture Test choice will run a continuous self test. This is great
for testing machines for hardware problems.
The Tray Icon choice will cause prime95 to have a small icon on the taskbar
when it is minimized. You can activate the program by double-clicking on
the small icon. If you place the cursor over the small icon, a tooltip will
display the current status.
The No Icon choice is only enabled if the Advanced Menu is activated
with the password. Using this menu choice means there will be no
prime95 icon on the taskbar once you minimize the program (making it very
hard to reactivate!) If you turn this feature on and want to turn it
back off, edit prime.ini and change the line "HideIcon=1" to "HideIcon=0",
then reboot.
Checking the Windows 95 Service menu choice will install prime95
as a service. The program will be run automatically whenever
you reboot your machine. You will not need to place a shortcut to
prime95 in the startup menu.
COMMAND LINE ARGUMENTS
----------------------
These command line arguments can be used to schedule prime95.exe to
run only at certain times of the day or at a different priority. Note
that raising the program's priority will not make it run any faster
on an idle machine.
-Tdd:hh:mm This tells the program to terminate itself after
the specified number of days, hours, and minutes.
The days and hours are optional. For example,
use Windows 95 Plus Pack's scheduler to run the
program on your co-worker's machine for 12 hours
every evening with the -T12:00 argument.
-An This is used to run two or more copies of prime95
from the same directory. Using this switch causes prime95
to use a different set of filenames for the INI files,
the results file, the log file, and the spool file.
Just use a different value of n for each copy of
prime95.exe you start.
-Wdirectory This tells prime95 to find all its files in a different
directory than the executable.
POSSIBLE HARDWARE FAILURE
-------------------------
If the message, "Possible hardware failure, consult the readme file.",
appears in the results file, then prime95's error-checking has
detected a problem. Prime95 will continue from the last save file.
If you do not get the message, "Disregard last error...", then the
problem is not reproducible - a definite sign of hardware problems.
How can this be when none of your other programs have problems? The answer
is that prime95 stresses your machine more than any other program you
run. The operating system usually shuts down the floating-point unit
when no programs are using it. Prime95 continuously uses the FPU, consuming
more electricity and generating more heat. If the CPU is not properly cooled,
errors can occur. Prime95 also constantly accesses main memory - up to
60MB per second. This constant activity will detect memory problems that
other programs do not. This is why Cray Research has used a program similar
to this one as part of its supercomputer diagnostics package for over a decade.
Could it be a software problem? If the error is ILLEGAL SUMOUT, then
there is a good chance that this is a software problem. A device driver
or VxD may not be saving and restoring CPU state correctly. The good news
is that prime95 recovers very well from ILLEGAL SUMOUT errors.
Try seeing if the problem occurs only when a specific device is active
or a specific program is running.
How can you track down the hardware problem? Unfortunately, this is not
easy. To see if your CPU is overheating, run prime95 for several hours.
Open the box. Is the CPU too hot to touch? If so, a heat sink or
CPU fan should solve the problem. Memory problems are not as easy to
diagnose. My only advice is to try swapping memory SIMMs with a coworker's
or friend's machine. If the errors go away, then you can be confidant
that the original problems were memory related.
What can you do if you are unwilling or unable to find the hardware problem?
If you are only getting an error once in a while, then your results are
probably OK. The error-checking code is not infallible, so your results
will need to be double-checked. If you are getting several errors during
each primality test, then I would recommend using your machine to factor
Mersenne numbers.
LUCAS-LEHMER DETAILS
--------------------
This program uses the Lucas-Lehmer primality test to see if 2**p-1 is prime.
The Lucas sequence is defined as:
L[1] = 4
L[n+1] = (L[n]**2 - 2) mod (2**p - 1)
2**p-1 is prime if and only if L[p-1] = 0.
This program uses a discrete weighted transform (see Mathematics of
Computation, January 1994) to square numbers in the Lucas-Lehmer sequence.
DISCLAIMER
----------
THIS PROGRAM AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF
ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
PARTICULAR PURPOSE.
THANKS
------
Happy hunting and thanks for joining the search,
George Woltman
woltman@magicnet.net