Menu

Tree [0f1e49] master /
 History

HTTPS access


File Date Author Commit
 M 2021-11-21 Will Edgington Will Edgington [9815e1] M/factors:
 good 2023-09-18 Will Edgington Will Edgington [bede01] New 'gold standard' files to compare with the s...
 optimizer 2018-06-22 Will Edgington Will Edgington [91c49a] Added the RCS dir for history purposes; will li...
 results 2022-04-28 Will Edgington Will Edgington [68137c] results/aaa:
 .gitignore 2022-06-02 Will Edgington Will Edgington [7f6854] .gitignore:
 1strs8.c 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 ECMSave.pm 2022-07-31 Will Edgington Will Edgington [c89253] ECMSave.pm:
 M1217both.txt 2021-08-28 Will Edgington Will Edgington [0874eb] New input files for testing.
 M1217o.txt 2022-02-17 Will Edgington Will Edgington [40ec09] modified: M1217o.txt
 M1217q.txt 2022-02-17 Will Edgington Will Edgington [40ec09] modified: M1217o.txt
 M1306-notC.txt 2020-05-26 Will Edgington Will Edgington [e00025] New input files for tests I'm about to add.
 M1306D.txt 2020-05-26 Will Edgington Will Edgington [e00025] New input files for tests I'm about to add.
 M233C.txt 2018-07-11 Will Edgington Will Edgington [746b64] Short tests of doJoiner.pl, doSPRP.pl, and doPr...
 M233S.txt 2020-05-26 Will Edgington Will Edgington [4ecbdb] factor.pl was stalling, I think because a compo...
 M233product.txt 2020-05-25 Will Edgington Will Edgington [2a9f8f] Fix the setpriority() calls; 'PRIO_PROCESS' was...
 M2749S.txt 2020-02-04 Will Edgington Will Edgington [b837af] New file for testing doProof.pl.
 M4252.txt 2021-12-20 Will Edgington Will Edgington [9bd255] modified: .gitignore
 M4324.txt 2021-12-03 Will Edgington Will Edgington [cd3677] new file: M4324.txt
 M4420C.txt 2021-11-29 Will Edgington Will Edgington [af6044] new file: M4420C.txt
 MacLucasFFTW.c 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 MacLucasUNIX.c 2021-09-06 Will Edgington Will Edgington [dc6c96] MacLucasUNIX.c:
 Makefile.nofac 2018-07-11 Will Edgington Will Edgington [979bbf] Small edits while changing references to my old...
 MersDB.pm 2023-10-06 Will Edgington Will Edgington [0f1e49] Factors are being printed twice for Mersennes w...
 MersInfo.pm 2022-07-30 Will Edgington Will Edgington [57972a] modified: ECMSave.pm
 Mersenne.pm 2022-08-07 Will Edgington Will Edgington [fc462a] Mersenne.pm:
 README.MacLucasFFTW 2018-07-07 Will Edgington Will Edgington [9b6057] Spelling fixes that I should have made years ago.
 README.fftlucas 2018-06-22 Will Edgington Will Edgington [8e1070] Current version of the mers package, working fi...
 README.html 2020-06-27 Will Edgington Will Edgington [ca0a99] README.html:
 README.mersenne1 2018-06-22 Will Edgington Will Edgington [8e1070] Current version of the mers package, working fi...
 Wisdom 2018-06-22 Will Edgington Will Edgington [8e1070] Current version of the mers package, working fi...
 addsignal.c 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 addsignal.h 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 askFactordb.pl 2022-06-25 Will Edgington Will Edgington [2490ce] askFactordb.pl:
 askGIMPS.pl 2022-07-30 Will Edgington Will Edgington [57972a] modified: ECMSave.pm
 askServer.pl 2022-06-23 Will Edgington Will Edgington [d1407f] Changes to be committed:
 balance.c 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 balance.h 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 checkECMfiles.pl 2022-07-05 Will Edgington Will Edgington [efc00e] checkECMfiles.pl:
 chk.tester.bc 2021-11-15 Will Edgington Will Edgington [641d3e] chk.tester.bc:
 contract.c 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 doECM.pl 2022-10-01 Will Edgington Will Edgington [1442fd] Changes to be committed:
 doGPU.pl 2023-09-17 Will Edgington Will Edgington [df72a5] Add note about the CUDA v12 DLL that can't be f...
 doJoiner.pl 2022-06-25 Will Edgington Will Edgington [979466] doJoiner.pl:
 doNext.pl 2022-07-28 Will Edgington Will Edgington [e73c1d] doNext.pl:
 doP+-1.pl 2022-10-01 Will Edgington Will Edgington [1442fd] Changes to be committed:
 doPrimo.pl 2022-06-23 Will Edgington Will Edgington [d1407f] Changes to be committed:
 doProof.pl 2022-06-23 Will Edgington Will Edgington [d1407f] Changes to be committed:
 doWork.pl 2022-08-09 Will Edgington Will Edgington [910a2c] Deal with the latest run failing with:
 extract.c 2020-06-26 Will Edgington Will Edgington [59c11c] extract.c:
 facgmp.c 2021-09-15 Will Edgington Will Edgington [b27114] facgmp.c:
 facgmp.h 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 facint.c 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 facint.h 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 factor.c 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 factor.h 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 factor.pl 2022-06-25 Will Edgington Will Edgington [5642b9] factor.pl:
 fetch.pl 2022-08-07 Will Edgington Will Edgington [f95cb8] fetch.pl:
 fft.c 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 fft.h 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 fftlucas.c 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 fftlucas.h 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 fht.c 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 fht.h 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 globals.c 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 globals.h 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 herm2real.c 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 herm2real.h 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 ifft.c 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 ifft.h 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 init_fft.c 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 init_fft.h 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 init_real.c 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 init_real.h 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 isprime.c 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 isprime.h 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 lucas_init.c 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 lucas_init.h 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 lucas_sq.c 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 lucas_sq.h 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 makefile 2023-09-27 Will Edgington Will Edgington [c2cf69] If /usr/games/primes is not present, these test...
 mersServer.pl 2022-11-16 Will Edgington Will Edgington [a80b1b] mersServer.pl:
 mersdistrib.c 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 mersenne.rkt 2019-03-31 Will Edgington Will Edgington [30dc7b] Oops: wrong comment syntax.
 mersenne1.c 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 mersfac.c 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 mmtrial.c 2021-11-15 Will Edgington Will Edgington [f8a986] mmtrial.c:
 mysql.devel 2021-11-07 Will Edgington Will Edgington [a628f5] New file to tell MersDB.pm to default to the me...
 patch.c 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 patch.h 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 readDB.c 2020-06-26 Will Edgington Will Edgington [410493] readDB.c:
 real2herm.c 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 real2herm.h 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 realfft.c 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 realfft.h 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 realifft.c 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 realifft.h 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 release.pl 2022-07-26 Will Edgington Will Edgington [67b109] modified: MersDB.pm
 reserve.pl 2023-09-14 Will Edgington Will Edgington [495a37] Deal with new warning from mysql library about ...
 runSPRP.pl 2022-07-13 Will Edgington Will Edgington [d6a5a4] runSPRP.pl:
 rw.c 2021-05-16 Will Edgington Will Edgington [730c12] rw.c:
 rw.h 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 sW.in 2021-08-30 Will Edgington Will Edgington [4bd42f] sW.in:
 save.pl 2022-10-28 Will Edgington Will Edgington [89008b] save.pl:
 sendServer.pl 2022-06-23 Will Edgington Will Edgington [d1407f] Changes to be committed:
 setup.c 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 setup.h 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 spreadWork.pl 2023-09-17 Will Edgington Will Edgington [9ccd5b] Mersenne::mersPriority() no longer supports the...
 sprp.c 2022-01-03 Will Edgington Will Edgington [f2595f] sprp.c:
 sq_herm.c 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 sq_herm.h 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 square.c 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 square.h 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 status 2022-07-08 Will Edgington Will Edgington [7396dd] status:
 testLL.in 2018-06-22 Will Edgington Will Edgington [8e1070] Current version of the mers package, working fi...
 testfac1.in 2018-06-22 Will Edgington Will Edgington [8e1070] Current version of the mers package, working fi...
 testfac2.in 2018-06-22 Will Edgington Will Edgington [8e1070] Current version of the mers package, working fi...
 trig.c 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 trig.h 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 tunefftw.c 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 version.h 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 zero.c 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...
 zero.h 2020-06-26 Will Edgington Will Edgington [c1f4c2] A lot of changes to reduce warnings in C/C++ co...

Read Me

$Id: README.MacLucasFFTW,v 8.1 2007/06/23 22:33:35 wedgingt Exp $ wedgingt@acm.org

   This is a short description of programs lfftw and tune_fftw.

**********************
*  MacLucasFFTW.c    *
**********************
   Guillermo Ballester Valor, Oct. 1999
   gbv@ctv.es

   This is an adaptation of Richard Crandall lucdwt.c and Sweeney
MacLucasUNIX.c code. There are few things mine own.

   This modification is designed to use the GNU package FFTW (the Fastest
Fourier Transform in the West). http://www.fftw.org

   I would like to know if this is true. I've already made some adaptation
of GNU-GMP package and really is the fastest of the general C-written FFT
packages I tried (in a Pentium 166-mmx). This has some important
advantages:

   1) It can use other than power of two FFT's lengths modes.

   2) For a given FFT length, It can search the best FFT scheme in a system.
      When it had found is 'optimal' solution, it can store it in a file or
      string and use it whenever it needed.

   3) It can be called with MULTITREADS flags to be used in system with more
      than one processor.


   At the moment, what I made is :
   a) Remove all FFT code from lucdwt and the awful add_signal and
   patch routines. It has been replaced by an adaptation of MacLucasUNIX
   normalize, normalize_last and main routines.

   b) Change the code lines needed to support other lengths than power of two.

   c) Introduce some small routines to select the FFT lengths.

   d) Use the 'fftw.pln' file generated by my own tunefftw program
      for maximum performance

   e) and some other minor changes I don't remember.. :-)

   WHAT YOU NEED TO RUN THIS?

   i) Obviously to install FFTW package.
      See http://www.fftw.org
      Its a very well documented package. I've installed from source files
      with the usual UNIX commands:
      ./configure
      make
      make install

   ii) Make the tunefftw program. It's very simple to make. Till today, I had
   no time to write a general Makefile. Is a simple source c-code (tunefftw.c)
   which make the executable tune_fftw. See below the usage. The link option
   must include -lrfftw -lfftw -lm. See the package fftw docs to install fftw
   and link programs.

   iii) Make this lfftw. Again the linker option must have -lrfftw -lfftw -lm.
   Use a good C compiler, GNU-gcc is O.K.

   iv) Run tunefftw to 'tune' the fftw package to your system. See below.

   v) And try it like original MacLucasUNIX.

   Please, let me know any problem.


****************
* tunefftw.c  *
****************
    This is an utility to perform the complete 'tune' of FFTW package at once.
    The usage is as follows:

        tunefftw  <max_power_of_two_ever_you_will_use>

    For example, if in your system you only will run L-L test up to 16M
exponents then the larger power of two FFT length you will need is 1024K
(2^20) So you should input:

        tunefftw 20

    DON'T FORGET THE MEMORY REQUIREMENTS. Lfftw will use about
1 bytes every bit in Mersenne number, i.e. a 16 M mersenne exponent will use
16 M of memory.

    IMPORTANT. To make a good tune, the system need to be bored, so when you
run tunefftw no other important process will use cpu time and the FFTW
timing routines will make a good job for you. Run tune_fftw when the
system is working hard and other idle process in the background  will decrease
the performance. I've observed more than 25% of variation depending on the
condition of the system when running tunefftw.

    The output of tunefftw is the 'fftw.pln' file. It has the information
lfftw needs to run as fast as possible. This file has to be in the same
directory as lfftw.

     WHAT IF YOU RUN MacLucasFFTW WITHOUT TUNEFFTW?. Then, MacLucasFFTW will
search the optimal FFT at runtime and it will take some minutes before starting with
Lucas Lehmer test properly. It will save this results in 'runtime.pln'.
An ulterior call to lfftw with the same FFT length will use the stored
results and will run as faster as tunefft were called before. Anyway, the
best tune will be performed using tunefftw when the system is bored.











Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.