mersenneforum.org

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

James Heinrich 2022-05-30 21:40

[QUOTE=thyrex;606834]But I see "unsupported 16-bit application" in header of dialog error window. And size of .exe is around 125Kb only. File with 2.07 version has size above 2Mb[/QUOTE]Maybe your download failed. The file available at [url]https://github.com/bbuhrow/yafu/blob/master/bin/x64/Release/yafu-x64.exe[/url] is (currently) 2,582,528 bytes.

bur 2022-06-08 13:52

When I try to build yafu under Ubuntu with [C]make NFS=1 USE_SSE41=1 USE_AVX=1[/C] it quits with:

[CODE]gcc -g -m64 -DUSE_SSE2 -DUSE_AVX2 -DUSE_SSE41 -mavx2 -DUSE_SSE41 -msse4.1 -DUSE_NFS -O2 -fomit-frame-pointer -Wall -I. -Iinclude -Itop/aprcl -Itop/cmdParser -Itop/ -I../ysieve -I../ytools -I/usr/local/include -I../msieve/zlib top/driver.o top/test.o factor/tune.o factor/autofactor.o top/cmdParser/cmdOptions.o top/cmdParser/calc.o -o yafu -lysiqs -lyecm -lynfs -L. -L../ysieve -L../ytools -L/usr/local/include -L../msieve/ -lmsieve -lecm /usr/lib/x86_64-linux-gnu/libgmp.a -lytools -lysieve -lpthread -lm -ldl
/usr/bin/ld: ./libysiqs.a(SIQS.o): in function `siqs_static_init':
/home/bur/Math/yafu/factor/qs/SIQS.c:2309: undefined reference to `nextRoots_32k_avx2_intrin'
/usr/bin/ld: ../msieve//libmsieve.a(savefile.o): in function `savefile_open':
savefile.c:(.text+0x142): undefined reference to `gzopen64'
/usr/bin/ld: savefile.c:(.text+0x266): undefined reference to `gzopen64'
/usr/bin/ld: savefile.c:(.text+0x2a1): undefined reference to `gzopen64'
/usr/bin/ld: ../msieve//libmsieve.a(savefile.o): in function `savefile_close':
savefile.c:(.text+0x341): undefined reference to `gzclose'
/usr/bin/ld: ../msieve//libmsieve.a(savefile.o): in function `savefile_write_line':
savefile.c:(.text+0x461): undefined reference to `gzputs'
/usr/bin/ld: ../msieve//libmsieve.a(savefile.o): in function `savefile_flush':
savefile.c:(.text+0x4e4): undefined reference to `gzputs'
/usr/bin/ld: ../msieve//libmsieve.a(savefile.o): in function `savefile_eof':
savefile.c:(.text+0x371): undefined reference to `gzeof'
/usr/bin/ld: ../msieve//libmsieve.a(savefile.o): in function `savefile_read_line':
savefile.c:(.text+0x3f0): undefined reference to `gzgets'
/usr/bin/ld: ../msieve//libmsieve.a(savefile.o): in function `savefile_rewind':
savefile.c:(.text+0x521): undefined reference to `gzrewind'
collect2: error: ld returned 1 exit status
make: *** [Makefile:368: yafu] Error 1[/CODE]

Omitting the [C]USE_AVX2=1[/C] flag, then it builds successfully.

BudgieJane 2022-06-20 17:11

I've got another of those "it won't factor it" jobbies in Yafu 2.08. For some reason it won't go into QS/SIQS.

[CODE]
06/20/22 16:15:39,
06/20/22 16:15:39, ****************************
06/20/22 16:15:39, Starting factorization of 7036874796802706717792076127030118075734377553821445738998743574873144601450291676951142421607390370359561
06/20/22 16:15:39, using pretesting plan: deep
06/20/22 16:15:39, using tune info for qs/gnfs crossover
06/20/22 16:15:39, ****************************
06/20/22 16:15:39, div: found prime factor = 137
06/20/22 16:15:39, div: found prime factor = 433
06/20/22 16:15:39, rho: x^2 + 3, starting 1000 iterations on C102
06/20/22 16:15:39, rho: x^2 + 2, starting 1000 iterations on C102
06/20/22 16:15:39, rho: x^2 + 1, starting 1000 iterations on C102
06/20/22 16:15:39, pm1: starting B1 = 150K, B2 = gmp-ecm default on C102
06/20/22 16:15:39, current ECM pretesting depth: 0.00
06/20/22 16:15:39, scheduled 30 curves at B1=2000 toward target pretesting depth of 34.00
06/20/22 16:15:39, ecm: commencing 32 curves using AVX-ECM method on 118623671158657249840563647393505134366149888805337835488254472697242875228844619560545884621085119441, B1=2k, B2=200k
06/20/22 16:15:39, ecm: finished 32 curves using AVX-ECM method on C102 input, B1=2k, B2=200k
06/20/22 16:15:39, current ECM pretesting depth: 15.19
06/20/22 16:15:39, scheduled 74 curves at B1=11000 toward target pretesting depth of 34.00
06/20/22 16:15:41, Finished 74 curves using GMP-ECM method on C102 input, B1=11k, B2=gmp-ecm default
06/20/22 16:15:41, current ECM pretesting depth: 20.24
06/20/22 16:15:41, scheduled 214 curves at B1=50000 toward target pretesting depth of 34.00
06/20/22 16:15:52, Finished 214 curves using GMP-ECM method on C102 input, B1=50k, B2=gmp-ecm default
06/20/22 16:15:52, pm1: starting B1 = 3750K, B2 = gmp-ecm default on C102
06/20/22 16:15:53, current ECM pretesting depth: 25.33
06/20/22 16:15:53, scheduled 430 curves at B1=250000 toward target pretesting depth of 34.00
06/20/22 16:17:25, Finished 430 curves using GMP-ECM method on C102 input, B1=250k, B2=gmp-ecm default
06/20/22 16:17:25, pm1: starting B1 = 15M, B2 = gmp-ecm default on C102
06/20/22 16:17:28, current ECM pretesting depth: 30.45
06/20/22 16:17:28, scheduled 643 curves at B1=1000000 toward target pretesting depth of 34.00
06/20/22 16:28:35, Finished 643 curves using GMP-ECM method on C102 input, B1=1M, B2=gmp-ecm default
06/20/22 16:28:35, final ECM pretested depth: 34.01
06/20/22 16:28:35, c102 cofactor = 118623671158657249840563647393505134366149888805337835488254472697242875228844619560545884621085119441
06/20/22 16:28:35, Total factoring time = 776.2737 seconds
[/CODE]

I thought this was fixed.

thyrex 2022-06-22 07:37

The next stage for this number must to be GNFS

VBCurtis 2022-06-22 07:43

No, a C102 can easily be solved by QS. It's not the ideal method, but shouldn't be more than 2-3x slower than GNFS.

BudgieJane 2022-06-22 08:30

[QUOTE=thyrex;608258]The next stage for this number must to be GNFS[/QUOTE]

According to tune_info the crossover point is 112:
[CODE]tune_info=11th Gen Intel(R) Core(TM) i5-11300H @ 3.10GHz,WIN64,8.83142e-06,0.197336,12.9645,0.0695818,111.146,42[/CODE]

James Heinrich 2022-07-09 00:56

Why does YAFU (observed in both 1.34 and 2.07) like to do a bit more ECM when you've told it that the target amount of ECM has already been done?[quote]Starting factorization of 2251614550234055854784964846511840271248417541830029305669098830420329426567781418202670939759934333698412447
using pretesting plan: deep
using specified qs/gnfs crossover of 100 digits
using specified qs/snfs crossover of 75 digits
[color=green]input indicated to have been pretested to t36.33[/color]
****************************
[color=green]current ECM pretesting depth: 36.33[/color]
[color=red]scheduled 379 curves at B1=32765 toward target pretesting depth of 36.33[/color]
rho: x^2 + 3, starting 1000 iterations on C109
rho: x^2 + 2, starting 1000 iterations on C109
rho: x^2 + 1, starting 1000 iterations on C109
[color=green]current ECM pretesting depth: 36.33[/color]
[color=red]scheduled 382 curves at B1=3000000 toward target pretesting depth of 36.33[/color]
Finished 382 curves using GMP-ECM method on C109 input, B1=3M, B2=gmp-ecm default
[color=red]final ECM pretested depth: 37.14[/color][/quote]

Tray2 2022-07-12 17:15

A bug in special form detection
 
Yafu (the executable from Github), when run on "101^101+2", first finds the special form, then claims it can't find it. [CODE]nfs: searching for brent special forms...
nfs: input divides 101^101 + 2
nfs: searching for homogeneous cunningham special forms...
nfs: searching for XYYXF special forms...
nfs: searching for direct special forms...
nfs: snfs form detection took 0.365021 seconds
nfs: couldn't find special form[/CODE]And indeed, if I tell it to skip ECM ("-work 60" in command line), it proceeds to GNFS (instead of SNFS).

Tray2 2022-07-12 17:28

crash with threads>1 on Fermat numbers
 
With threads=3, YAFU crashes on both 2^256+1 and 2^512+1 somewhere in ECM.

With threads=1, factorization of 2^256+1 succeeds. I have no patience to wait for 2^512+1, but probably

OS: Windows 7, AVX2-capable hardware, YAFU executable from Github.

BudgieJane 2022-07-12 20:12

[QUOTE=James Heinrich;609203]Why does YAFU (observed in both 1.34 and 2.07) like to do a bit more ECM when you've told it that the target amount of ECM has already been done?[/QUOTE]

When you tell it you've done a depth of 36.33 your input is interpreted as 36.3300000...
When yafu says
[CODE]scheduled 379 curves at B1=32765 toward target pretesting depth of 36.33[/CODE]
could that 36.33 really represent a number rounded down to 36.33, e.g. 36.334...?

What happens if you tell yafu that input has been pretested to t36.34?

bsquared 2022-07-13 15:29

Yeah, it is a significant digits related issue, printed here with more precision enabled:

[CODE]07/13/22 10:24:25, input indicated to have been pretested to t36.33
07/13/22 10:24:25, ****************************
07/13/22 10:24:25, current ECM pretesting depth: 36.330000000000
07/13/22 10:24:25, scheduled 379 curves at B1=0 toward target pretesting depth of 36.330000000000
07/13/22 10:24:25, rho: x^2 + 3, starting 1000 iterations on C109
07/13/22 10:24:25, rho: x^2 + 2, starting 1000 iterations on C109
07/13/22 10:24:25, rho: x^2 + 1, starting 1000 iterations on C109
07/13/22 10:24:25, current ECM pretesting depth: 36.331171089718
07/13/22 10:24:25, scheduled 382 curves at B1=3000000 toward target pretesting depth of 36.333333333333
[/CODE]

So it really wants to get to 36.3333333333 and you've only indicated you've performed up to 36.33 :razz:

Putting in -work 36.34 causes it to skip ecm as now the threshold is exceeded. I hope that's acceptable as a work around?


All times are UTC. The time now is 05:34.

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