mersenneforum.org

mersenneforum.org (https://www.mersenneforum.org/index.php)
-   YAFU (https://www.mersenneforum.org/forumdisplay.php?f=96)
-   -   Yafu (https://www.mersenneforum.org/showthread.php?t=10871)

bsquared 2011-09-08 22:10

[QUOTE=yoyo;271211]Thanks for the yafu update. I deployed the version into the Boinc system.

Regarding gnfs:
On which composite size yafu will use gnfs?
Where can I find gnfs binaries?
How to configure yafu with gnfs?

yoyo[/QUOTE]

Without tuning (which would be the case here), it should switch at 95 digits.

Windows x64 binaries are [URL="http://gilchrist.ca/jeff/factoring/ggnfs-svn374-win64-core2.zip"]here[/URL], and linux binaries are also available but I don't have the link handy ATM. Will post later unless someone beats me to it.

Configuration is pretty simple - just put the ggnfs binaries in the same directory as yafu and then create a yafu.ini file with this line in it:
ggnfs_dir=.\

or, for linux systems
ggnfs_dir=./

All of the msieve poly generation and post-processing is compiled into the yafu binary already.

EdH 2011-09-09 03:32

[QUOTE=bsquared;271224]...
Windows x64 binaries are [URL="http://gilchrist.ca/jeff/factoring/ggnfs-svn374-win64-core2.zip"]here[/URL], and linux binaries are also available but I don't have the link handy ATM. Will post later unless someone beats me to it...[/QUOTE]
[URL="http://physics.fullerton.edu/gchilders/gnfs-lasieve4_64.tar.gz"]Linux 64-bit binaries[/URL] are referenced in [URL="http://www.mersenneforum.org/showpost.php?p=126546&postcount=23"]this post[/URL] which is referenced on Jeff Gilcrist's page, [URL="http://gilchrist.ca/jeff/factoring/nfs_beginners_guide.html"][SIZE=2][B][COLOR=#0000cc]Beginners Guide to NFS factoring using GGNFS and MSIEVE[/COLOR][/B][/SIZE][/URL].

[strike]How far back do I need to go to find linux 32-bit binaries or compile with linux 32-bit? I didn't see any 32-bit binaries on Sourceforge. If I can locate the link, I'll try your original location...[/strike]Found them!

bsquared 2011-09-09 03:47

[QUOTE=EdH;271248]

[strike]How far back do I need to go to find linux 32-bit binaries or compile with linux 32-bit? I didn't see any 32-bit binaries on Sourceforge. If I can locate the link, I'll try your original location...[/strike]Found them![/QUOTE]

Thanks for the links - hadn't found the energy to go dig those up yet.

Glad you found something... browsing around my directory tree I found some from 1.20.2. Not sure if there is a later version (pretty sure the current one won't build for 32bit linux).

EdH 2011-09-09 04:03

[QUOTE=bsquared;271249]...
Glad you found something... browsing around my directory tree I found some from 1.20.2. Not sure if there is a later version (pretty sure the current one won't build for 32bit linux).[/QUOTE]
No problem on the links. Glad I can be helpful on occasion.:smile: Yeah, 1.20.2 is where I found them. I need to run down some illegal instruction errors, though. I know I've had some issues in the past, most notably the AMD machine without SSE2, but currently I'm running a gp/pari one line routine searching for sociable numbers. I'm wondering if I can do something with YAFU that might prove faster - maybe via perl.

Thanks for all...

Random Poster 2011-09-09 06:19

1 Attachment(s)
[QUOTE=bsquared;270989]
Will do, although "clean up source" has been at the top of my todo list for years now, and, well, it's still a mess :max:.
[/QUOTE]
Maybe I could help with that. Here's a patch to get rid of HAVE_GMP and HAVE_GMP_ECM (except from the build.vc* directories; I'll leave those to someone else).

yoyo 2011-09-09 09:17

[QUOTE=bsquared;271224]Without tuning (which would be the case here), it should switch at 95 digits.

Windows x64 binaries are [URL="http://gilchrist.ca/jeff/factoring/ggnfs-svn374-win64-core2.zip"]here[/URL], and linux binaries are also available but I don't have the link handy ATM. Will post later unless someone beats me to it.

Configuration is pretty simple - just put the ggnfs binaries in the same directory as yafu and then create a yafu.ini file with this line in it:
ggnfs_dir=.\

or, for linux systems
ggnfs_dir=./

All of the msieve poly generation and post-processing is compiled into the yafu binary already.[/QUOTE]
Seems that I did something wrong. Yafu started SIQS for a C100:

[CODE]
factoring 4344785573743118770556023900443223939666940342093524536192603182398658167805770095100402056292058299
using pretesting plan: normal

div: primes less than 10000
fmt: 1000000 iterations
rho: x^2 + 1, starting 1000 iterations on C100
rho: x^2 + 3, starting 1000 iterations on C100
rho: x^2 + 2, starting 1000 iterations on C100
pp1: starting B1 = 20K, B2 = gmp-ecm default on C100
pp1: starting B1 = 20K, B2 = gmp-ecm default on C100
pp1: starting B1 = 20K, B2 = gmp-ecm default on C100
pm1: starting B1 = 100K, B2 = gmp-ecm default on C100
ecm: 25/25 curves on C100 input, at B1 = 2K, B2 = gmp-ecm default
ecm: 90/90 curves on C100 input, at B1 = 11K, B2 = gmp-ecm default
ecm: 200/200 curves on C100 input, at B1 = 50K, B2 = gmp-ecm default
pp1: starting B1 = 1250K, B2 = gmp-ecm default on C100
pp1: starting B1 = 1250K, B2 = gmp-ecm default on C100
pp1: starting B1 = 1250K, B2 = gmp-ecm default on C100
pm1: starting B1 = 2500K, B2 = gmp-ecm default on C100
ecm: 400/400 curves on C100 input, at B1 = 250K, B2 = gmp-ecm default
pp1: starting B1 = 5M, B2 = gmp-ecm default on C100
pp1: starting B1 = 5M, B2 = gmp-ecm default on C100
pp1: starting B1 = 5M, B2 = gmp-ecm default on C100
pm1: starting B1 = 10M, B2 = gmp-ecm default on C100
ecm: 14/14 curves on C100 input, at B1 = 1M, B2 = gmp-ecm default
ecm: 1/1 curves on C100 input, at B1 = 10M, B2 = gmp-ecm default

starting SIQS on c100: 4344785573743118770556023900443223939666940342093524536192603182398658167805770095100402056292058
299

==== sieving in progress ( 3 threads): 117888 relations needed ====
==== Press ctrl-c to abort and save state ====
[/CODE]
[CODE]
Directory of D:\yoyo\yoyo\yafu\ggnfstest

09.09.2011 08:25 <DIR> .
09.09.2011 08:25 <DIR> ..
09.09.2011 09:08 5.195 factor.log
20.03.2011 06:26 346.112 gnfs-lasieve4I11e.exe
09.09.2011 08:07 346.112 gnfs-lasieve4I12e.exe
09.09.2011 08:07 346.112 gnfs-lasieve4I13e.exe
20.03.2011 06:26 346.112 gnfs-lasieve4I14e.exe
09.09.2011 08:07 346.112 gnfs-lasieve4I15e.exe
09.09.2011 08:07 346.112 gnfs-lasieve4I16e.exe
09.09.2011 08:26 743 session.log
09.09.2011 11:15 85.670.022 siqs.dat
27.07.2011 22:30 1.380.352 yafu.exe
09.09.2011 08:08 14 yafu.ini
09.09.2011 08:08 12 yafu.ini.bak
09.09.2011 08:25 1.921 yafu.pl
09.09.2011 08:09 1.920 yafu.pl.bak
14 File(s) 89.136.851 bytes
2 Dir(s) 135.520.509.952 bytes free

D:\yoyo\yoyo\yafu\ggnfstest>type yafu.ini
ggnfs_dir=.\

D:\yoyo\yoyo\yafu\ggnfstest>
[/CODE]
yoyo

bsquared 2011-09-12 13:37

[QUOTE=Random Poster;271265]Maybe I could help with that. Here's a patch to get rid of HAVE_GMP and HAVE_GMP_ECM (except from the build.vc* directories; I'll leave those to someone else).[/QUOTE]

Thanks! I'll get that rolled in.

bsquared 2011-09-12 14:09

[QUOTE=yoyo;271271]Seems that I did something wrong. Yafu started SIQS for a C100:
[/QUOTE]

It doesn't look like you did anything wrong, but on the other hand I just tried a similar experiment and it started NFS as expected. Would you mind retrying with arguments -v -v so I can see the expected time calculations? Also, if you don't want the test to take so long you can use an option like this:
-ecm_qs_ratio 0.01

yoyo 2011-09-12 15:12

[CODE]
09/12/11 17:05:55 v1.28.5 @ STM11072, System/Build Info:
Using GMP-ECM 6.3, Powered by MPIR 2.2.0
detected Intel(R) Core(TM)2 Duo CPU T7250 @ 2.00GHz
detected L1 = 32768 bytes, L2 = 2097152 bytes, CL = 64 bytes
measured cpu frequency ~= 963.124200

===============================================================
======= Welcome to YAFU (Yet Another Factoring Utility) =======
======= bbuhrow@gmail.com =======
======= Type help at any time, or quit to quit =======
===============================================================
cached 78504 primes. pmax = 1000099


>> factoring 1632377875657469552020979401590116999712426040784131238357998774166047428051531550697526879363076919
using pretesting plan: normal

div: primes less than 10000
fmt: 1000000 iterations
rho: x^2 + 1, starting 1000 iterations on C100
rho: x^2 + 3, starting 1000 iterations on C100
rho: x^2 + 2, starting 1000 iterations on C100
***** using 64bit windows core2 data for QS time estimation
***** qs time estimate = 53522 seconds
***** gnfs time estimate = 1.79769e+308 seconds
pp1: starting B1 = 20K, B2 = gmp-ecm default on C100
pp1: starting B1 = 20K, B2 = gmp-ecm default on C100
pp1: starting B1 = 20K, B2 = gmp-ecm default on C100
***** using 64bit windows core2 data for QS time estimation
***** qs time estimate = 53522 seconds
***** gnfs time estimate = 1.79769e+308 seconds
pm1: starting B1 = 100K, B2 = gmp-ecm default on C100
***** using 64bit windows core2 data for QS time estimation
***** qs time estimate = 53522 seconds
***** gnfs time estimate = 1.79769e+308 seconds
ecm: 25/25 curves on C100 input, at B1 = 2K, B2 = gmp-ecm default
***** using 64bit windows core2 data for QS time estimation
***** qs time estimate = 53522 seconds
***** gnfs time estimate = 1.79769e+308 seconds
***** estimating 90 more curves can be run at 20 digit level
ecm: 90/90 curves on C100 input, at B1 = 11K, B2 = gmp-ecm default
***** using 64bit windows core2 data for QS time estimation
***** qs time estimate = 53522 seconds
***** gnfs time estimate = 1.79769e+308 seconds
***** estimating 200 more curves can be run at 25 digit level
ecm: 200/200 curves on C100 input, at B1 = 50K, B2 = gmp-ecm default
***** using 64bit windows core2 data for QS time estimation
***** qs time estimate = 53522 seconds
***** gnfs time estimate = 1.79769e+308 seconds
***** estimating 3 more curves can be run at p+1 level 2
pp1: starting B1 = 1250K, B2 = gmp-ecm default on C100
pp1: starting B1 = 1250K, B2 = gmp-ecm default on C100
pp1: starting B1 = 1250K, B2 = gmp-ecm default on C100
***** using 64bit windows core2 data for QS time estimation
***** qs time estimate = 53522 seconds
***** gnfs time estimate = 1.79769e+308 seconds
***** estimating 1 more curve can be run at p-1 level 2
pm1: starting B1 = 2500K, B2 = gmp-ecm default on C100
***** using 64bit windows core2 data for QS time estimation
***** qs time estimate = 53522 seconds
***** gnfs time estimate = 1.79769e+308 seconds
***** estimating 67 more curves can be run at 30 digit level
ecm: 34/67 curves on C100 input, at B1 = 250K, B2 = gmp-ecm default
[/CODE]
... not yet finished.
yoyo

bsquared 2011-09-12 15:23

Thanks, I see the problem now - when compiled with visual studio a pre-processor macro is disabled when it shouldn't be. That forces siqs to be run instead of nfs. I've primarily been testing the mingw-64 builds on windows so I missed this.

yoyo 2011-09-13 20:38

A chance to get an updated version of yafu soon where nfs runs instead of siqs for larger composites?
In the meantime we have factored nearly everything until C96 in factordb and I would now deploy also the nfs binaries in the Boinc project to use nfs for larger composites with yafu.
yoyo


All times are UTC. The time now is 23:01.

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