What's New: New Features in Version 22.x of Prime95

# NEW FEATURES IN VERSION 22.x of PRIME95.EXE

## New Features in Version 22.13 of Prime95

1. A P-1 and ECM QA suite was implemented. A bug in ECM for exponents below 172,700 and near the limit of an FFT size and using SSE2 code was fixed.

## New Features in Version 22.12 of Prime95

1. A bug was fixed that caused some factors to be missed in stage 2 of P-1 when the available memory did not let the program allocate 12 temporary variables. If testing a number in the 16 millions using an FFT size of 768K, then each temporary takes 768K * 8 bytes or 6MB. If your memory setting was less than 72MB (6MB * 12 temporaries) then you were affected by the bug. Actual the program allocates some fixed tables so anything less than about 75MB triggered the bug.

## New features in Version 22.11 of Prime95

1. A bug that caused factors to be missed in the last stage of P-1 and ECM factoring was fixed. The bug was introduced in executables built after Sept. 28, 2002.

## New features in Version 22.10 of Prime95

1. When running a double-check assignment the preferred trial factoring depth is reduced one bit. This is done because finding a factor will save one LL test instead of the usual two LL tests.
2. On a Windows NT/2000/XP system, if prime95 is run by a user without administrator privileges then prime95 cannot install itself as a service. Thus, the Start at Bootup option will set prime95 to run at login time rather than bootup time.
3. A crash bug when selecting "Start at Bootup" on Windows NT3 and Windows NT4 systems was fixed.
4. Bug in starting more than one prime95 as NT services on multi-processor machines was fixed.

## New features in Version 22.9 of Prime95

1. Error rate for a clean run is now estimated at 1.8% raising your chances of finding a Mersenne prime while double-checking.
2. You can now stop and continue testing from the system tray menu.
3. You can now pause prime95 when another program starts running. See the PauseWhileRunning option in undoc.txt.
4. Fixed bug introduced in 22.8 where No Icon did not work if Start at Bootup was also specified in Windows 98.
5. A bug in unscrambling the proxy server password in primenet.ini was fixed.

## New features in Version 22.8 of Prime95

1. Soft FFT crossovers have been implemented. If you test an exponent that is within 0.2% of the old hard FFT crossover point, then 1000 test iterations are run to determine if the smaller or larger FFT is appropriate for the exponent. Although not recommended, you can adjust prime95's behavior to be more aggressive using the SoftCrossover and SoftCrossoverAdjust features discussed in undoc.txt.
2. To better stress main memory, the torture test will now use up to the amount of memory specified in the Options/CPU dialog box.
3. Iterations with roundoff checking are a little faster for non-SSE2 CPUs.

## New features in Version 22.7 of Prime95

1. Trial factoring above 2^64 on a P4 now uses the SSE2 instructions. This is more than four times as fast as the previous version.
2. Old Advanced/Factoring save files are not compatible with this version. They are named p0000000 and should be deleted. This should not be a problem as no one should be using this obsolete and unsupported feature.
3. Four more x87 FFT crossover changes as suggested by Brian Beesley's research.
4. You can now change the NT/2000/XP service name and service display name. See undoc.txt for details.
5. Bug where found factors were silently truncated to 200 digits was fixed.

## New features in Version 22.6 of Prime95

1. The Start At Bootup option now runs prime95 as a Windows NT/2000/XP service!! Normally Windows NT/2000/XP will not run GUI programs as services, but several tricks have allowed us to get this working almost flawlessly.
2. To reduce spurious error reports on x86 LL tests near the crossover points, the program now allows roundoff errors less than 0.40625 rather than less than 0.4.

## New features in Version 22.5 of Prime95

1. A bug in P4 roundoff error recovery was fixed. Bug was present in version 22 executables dated between May 22 and June 18.
2. Prime95 now properly detects if the program is running by another logged in Windows XP user.
3. When Tray Icon or Hide Icon is set, the "X" in the upper right corner no longer closes prime95 rather it minimizes it. Also right clicking the tray icon now brings up a popup menu.
4. Changed the way prime95 shuts down. Logoff in WinXP used to hang.

## New features in Version 22.4 of Prime95

1. A little more tweaking of the FFT crossovers.
2. A GCD hang bug was fixed in case where there were a large number of entries in the lowm.txt file. Another GCD bug affecting ECM on F18 was fixed.

## New features in Version 22.3 of Prime95

1. Given more data, the roundoff error checking is now done on every iteration for exponents within 0.5% of the maximum that can be tested by the current FFT length. If a roundoff error above 0.4 occurs, then the iteration is now repeated without any change to the shift count. It now takes a roundoff error greater than 0.6 to corrupt the results.
2. Many of the FFT ranges have changed. Version 21 was too aggressive in choosing FFT sizes for the P4. The new handling of roundoff errors above 0.4 lets us be more aggressive with the non-P4 code.
3. Result lines are now WYn rather than WXn.
4. A crash bug affecting P-1 and ECM using the 2^N+1 option for large N was fixed.
5. A rare memory corruption and possible crash bug in the GCD code was fixed.
6. The -t command line argument will run the torture test.
7. To reduce wild fluctuations in the RollingAverage, it will be updated roughly twice per day.

## New features in Version 22.2 of Prime95

1. Factoring assignments go to machines slower than a 233 MHz Pentium. Double-checks are assigned to machines slower than a 500 MHz P-III.
2. The speed of the GCD has been improved.
3. Some of the P4 FFT ranges have changed. Version 21 was too aggressive in choosing FFT sizes for the P4.
4. Roundoff error checking is now done on every iteration for exponents within 2% of the maximum that can be tested by the current FFT length. See undoc.txt for ways to disable this new feature.
5. The previous version would get into an infinite loop if a repeatable roundoff error larger than 0.48 was discovered. Now, if a repeatable roundoff error greater than 0.45 is found, then the iteration is repeated after shifting the FFT data.

## New features in Version 22.1 of Prime95

1. Some bugs in error handling when communicating with the server have been fixed.
2. Communicating with the server by RPC is no longer supported. The HTTPNET.DLL and RPCNET.DLL have been deleted. Only "Basic" Proxy server authentication is supported. Version 21 may have supported MS Proxy Server 2.0's NTLM (NT Lan Manager) challenge/response authentication.
3. The program now uses a high resolution timer rather than the RDTSC instruction to time events. This should help the program display accurate timings on laptops with SpeedStep or desktops that can hibernate. You can force the program to use the old RDTSC timing method with the RdtscTiming option described in undoc.txt.
4. The program uses a updated algorithm to automatically detect CPU type and speed. The Options/CPU dialog box no longer let's you set this information. Instead, the Options/CPU dialog displays the detected CPU type and speed. This new feature helps prevent incorrect settings when users upgrade or try several overclocking speeds. If the new algorithm fails, you can override the settings as described in undoc.txt.
5. Benchmark now writes the program version, timing methodology, cpu type and speed, L1 and L2 cache information to results.txt. It will refuse to benchmark if rdtsctiming is 10.