mersenneforum.org

mersenneforum.org (https://www.mersenneforum.org/index.php)
-   Software (https://www.mersenneforum.org/forumdisplay.php?f=10)
-   -   PRP test largely on input number (https://www.mersenneforum.org/showthread.php?t=24177)

lukerichards 2019-03-18 21:44

[QUOTE=Batalov;511075]You will need to recompile the binary. Both static and dynamic pfgw binaries core-dump on some CPUs (but not on most others), because of the way they are compiled.

They work for most people though, so the number of complains was not enough for them to reach the maintainer.

So roll up your sleeves and build the binary from the source.[/QUOTE]


I think our posts have crossed.



See here:


[url]https://www.mersenneforum.org/showpost.php?p=511074&postcount=21[/url]

lukerichards 2019-03-18 21:45

[QUOTE=Batalov;511075]Build libgmp too, of course.[/QUOTE]


Have done - as stated earlier in the thread, I have built libgmp from source inc succesful make, make check and sudo make install.


Have also built libgmp into the 64bit folder of the gmp packages directory within the pfgw source files.

paulunderwood 2019-03-18 21:46

[CODE]g++: error: packages/gmp/64bit/libgmp.a: No such file or directory
g++: error: packages/gwnum/64bit/gwnum.a: No such file or directory[/CODE]

Grab the file "libgmp.a" from your GMP compilation and put it in " packages/gmp/64bit/".

The download and compile the "Prime95/mprime" source and run "make -f make64" in the gwnum directory of the source and copy the file "gwnum.a" to the directory "packages/gwnum/64bit/".

Recompile PFGW.

lukerichards 2019-03-18 21:48

[QUOTE=paulunderwood;511078]Grab the file "libgmp.a" from your GMP compilation and put it in " packages/gmp/64bit/".[/QUOTE]


I don't have a libgmp.a :/


I have a libgmp.la?

Batalov 2019-03-18 21:52

On Ubuntu it is not going to be a smooth sailing. First you will need to build a static lib*.a. Second you will (suddenly) find that Ubuntu doesn't have necessary static system libs... etc etc. So you will have to build those as well from scratch, or try to get them from repo.

paulunderwood 2019-03-18 21:57

[QUOTE=lukerichards;511080]I don't have a libgmp.a :/


I have a libgmp.la?[/QUOTE]

It is here /usr/local/lib/libgmp.a

lukerichards 2019-03-18 21:57

[QUOTE=paulunderwood;511078][CODE]g++: error: packages/gmp/64bit/libgmp.a: No such file or directory
g++: error: packages/gwnum/64bit/gwnum.a: No such file or directory[/CODE]Grab the file "libgmp.a" from your GMP compilation and put it in " packages/gmp/64bit/".

The download and compile the "Prime/mprime" source and run "make -f make64" in the gwnum directory of the source and copy the file "gwnum.a" to the directory "packages/gwnum/64bit/".

Recompile PFGW.[/QUOTE]


Some success. Thanks so much for your time!


[CODE]
user1@ubuntu-upstairs:~/openpfgw-code-r646$ make
make -C pform/pflib
make[1]: Entering directory '/home/user1/openpfgw-code-r646/pform/pflib'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/home/user1/openpfgw-code-r646/pform/pflib'
make -C pform/pfmath
make[1]: Entering directory '/home/user1/openpfgw-code-r646/pform/pfmath'
make[1]: '.libs/pfmath.a' is up to date.
make[1]: Leaving directory '/home/user1/openpfgw-code-r646/pform/pfmath'
make -C pform/pfgwlib
make[1]: Entering directory '/home/user1/openpfgw-code-r646/pform/pfgwlib'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/home/user1/openpfgw-code-r646/pform/pfgwlib'
make -C pform/pfoo
make[1]: Entering directory '/home/user1/openpfgw-code-r646/pform/pfoo'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/home/user1/openpfgw-code-r646/pform/pfoo'
make -C pform/pfio
make[1]: Entering directory '/home/user1/openpfgw-code-r646/pform/pfio'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/home/user1/openpfgw-code-r646/pform/pfio'
make -C pform/pfgw
make[1]: Entering directory '/home/user1/openpfgw-code-r646/pform/pfgw'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/home/user1/openpfgw-code-r646/pform/pfgw'
g++ -O3 -m64 -DX86_64 -D_64BIT -I../../packages/gmp/64bit -I../../pfconfig/headers \
pform/pfgw/.libs/pfgw_main.a pform/pfio/.libs/pfio.a pform/pfoo/.libs/pfoo.a pform/pfgwlib/.libs/pfgwlib.a \
pform/pfmath/.libs/pfmath.a pform/pflib/.libs/pflib.a \
packages/gmp/64bit/libgmp.a packages/gwnum/64bit/gwnum.a -Wl,-no_pie -lpthread -lstdc++ -o pfgw64
/usr/bin/ld: cannot find -lgcc_s
/usr/bin/ld: cannot find -lgcc_s
collect2: error: ld returned 1 exit status
makefile:8: recipe for target 'pfgw64' failed
make: *** [pfgw64] Error 1[/CODE]



So... no cigar, but a bit closer!

lukerichards 2019-03-18 21:58

[QUOTE=Batalov;511081]On Ubuntu it is not going to be a smooth sailing. First you will need to build a static lib*.a. Second you will (suddenly) find that Ubuntu doesn't have necessary static system libs... etc etc. So you will have to build those as well from scratch, or try to get them from repo.[/QUOTE]


Do you have an alternative version of linux as a suggestion? I'm not wedded to Ubuntu.

paulunderwood 2019-03-18 22:07

[QUOTE=lukerichards;511084]Some success. Thanks so much for your time!


[CODE]
user1@ubuntu-upstairs:~/openpfgw-code-r646$ make
make -C pform/pflib
make[1]: Entering directory '/home/user1/openpfgw-code-r646/pform/pflib'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/home/user1/openpfgw-code-r646/pform/pflib'
make -C pform/pfmath
make[1]: Entering directory '/home/user1/openpfgw-code-r646/pform/pfmath'
make[1]: '.libs/pfmath.a' is up to date.
make[1]: Leaving directory '/home/user1/openpfgw-code-r646/pform/pfmath'
make -C pform/pfgwlib
make[1]: Entering directory '/home/user1/openpfgw-code-r646/pform/pfgwlib'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/home/user1/openpfgw-code-r646/pform/pfgwlib'
make -C pform/pfoo
make[1]: Entering directory '/home/user1/openpfgw-code-r646/pform/pfoo'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/home/user1/openpfgw-code-r646/pform/pfoo'
make -C pform/pfio
make[1]: Entering directory '/home/user1/openpfgw-code-r646/pform/pfio'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/home/user1/openpfgw-code-r646/pform/pfio'
make -C pform/pfgw
make[1]: Entering directory '/home/user1/openpfgw-code-r646/pform/pfgw'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/home/user1/openpfgw-code-r646/pform/pfgw'
g++ -O3 -m64 -DX86_64 -D_64BIT -I../../packages/gmp/64bit -I../../pfconfig/headers \
pform/pfgw/.libs/pfgw_main.a pform/pfio/.libs/pfio.a pform/pfoo/.libs/pfoo.a pform/pfgwlib/.libs/pfgwlib.a \
pform/pfmath/.libs/pfmath.a pform/pflib/.libs/pflib.a \
packages/gmp/64bit/libgmp.a packages/gwnum/64bit/gwnum.a -Wl,-no_pie -lpthread -lstdc++ -o pfgw64
/usr/bin/ld: cannot find -lgcc_s
/usr/bin/ld: cannot find -lgcc_s
collect2: error: ld returned 1 exit status
makefile:8: recipe for target 'pfgw64' failed
make: *** [pfgw64] Error 1[/CODE]



So... no cigar, but a bit closer![/QUOTE]

[URL="https://askubuntu.com/questions/346377/cannot-find-lgcc-s#346406"]See the part on [/URL]how to create the link with [c]ln[/c]. YMMV

Alternatively, see the solution in this [URL="https://www.mersenneforum.org/showthread.php?t=22018"]mersenneforum thread[/URL].

GP2 2019-03-21 16:10

[QUOTE=lukerichards;511086]Do you have an alternative version of linux as a suggestion? I'm not wedded to Ubuntu.[/QUOTE]

The binary executable straight from the zip file worked for me on Amazon Linux.

Amazon Linux was originally derived from Centos / Red Hat. For instance, it uses yum rather than apt-get.

So perhaps you could try Centos. But it seems like a lot of trouble to install a new distribution and then cross your fingers and hope the program will work.

wblipp 2019-04-02 16:21

The Luke Richards Hobby Project
 
[QUOTE=lukerichards;510978]having discovered last March that 3[SUP]504206[/SUP]+2 is a PRP.[/QUOTE][QUOTE=lukerichards;511836]
My aim is to factor 3[SUP]504206[/SUP]+1 and 3[SUP]504205[/SUP]+1 sufficiently [b]in my lifetime[/b] to provide a primality proof of 3[SUP]504206[/SUP]+2. As intractable a goal as that might be,[/QUOTE][QUOTE=GP2;511978]Not before the heat death of the universe..[/QUOTE]
[QUOTE=lukerichards;511980]nobody knows what will happen in the next 50 years in terms of advances in computing power and algorithm research. ... .Everyone needs a hobby![/QUOTE]

I was tickled by the idea of a 50 year hobby project and curious about whether continuing trends for 50 years might by sufficient or if algorithmic improvements would be needed to beat the heat death of the universe. I figured one path without algorithmic improvements would be to hope for larger ECM to leave large PRPs, prove the PRPs with ECPP, and make a 26% CHG proof.

Presently we know about 415 digits of factors. 26% would require over 62,500 digits of factors, so we need need over 62,000 more digits of factorization.

I looked at the ECMNET annual records, took the fifth largest factor each year, and projected out to 2069. That projection says you could find 137 digit factors by ECM in 2069.

Then I looked at ECPP records from the Primo pages and Caldwell's Prime pages. A similar projection indicates you might do 130,000 digit ECPP proofs by 2069.

Then look at the remaining composites:
C1996
C2329
C3664
C10253
C14795
C44396
C177395
C225698

The two largest ones aren't much help because even if we get a PRP residual, the PRP would still be outside of ECPP range. So we need to hope to get both the C14795 and the C44396 to factor. We would need the second largest factor of the C14795 to not exceed 137 digits. That's about [URL="http://mathworld.wolfram.com/DickmanFunction.html"]G(0.003)[/URL], which looks like less than half a percent, and the C44396 is even less likely. So 50 years without algorithmic improvements isn't likely.

On the other hand, heat death of the universe seems overly pessimistic. ECPP should be big enough to handle the whole number by 2130.

I'm not sufficiently interested, but if this were my long term hobby project I would redo the regressions using logs instead of digit counts, then forecast out five years. Check if trend lines are holding and re-forecast every five years. I would try a few other methods to see if you can beat the 2130. I would experiment with some [URL="https://primes.utm.edu/prove/prove3_3.html"]William's terms[/URL] such as n^2+n+1 and n^2-n+1 to be sure the special form of the prime didn't lead to more algebraic factorizations. When I got bored with waiting for these forecasts to mature I would think about how to forecast algorithmic improvements.

Just in case anyone cares in five years, the trend lines used in this post indicate that in 2024 we should see ECM at 80 digits and ECPP at 49K digits. Yes, I know that the record ECM is already larger than that, but we need a number people can expect to reach on a composite of their choice, not the largest luckiest factor anybody has ever found.


All times are UTC. The time now is 06:47.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.