mersenneforum.org > YAFU YAFU 2.0
 Register FAQ Search Today's Posts Mark Forums Read

2021-04-10, 13:46   #12
bsquared

"Ben"
Feb 2007

2·32·191 Posts

Quote:
 Originally Posted by bur When running yafu tune(), this is all that happens:
As I mentioned in post 9, this has been fixed, but I'm still working on the other issues charybdis mentioned so the windows binary hasn't been updated yet.

Quote:
 Originally Posted by bur And a second issue, specifying -noecm seems to be ignored. I used it both in the ini and as an argument but it still runs ecm. This number if it*s important: 10450974137988693609715901393399485545016883310684938211501868888239765039524963017798457141299451333307339683
Use -plan noecm

Looks like I forgot that noecm had its own argument outside of plan; I will reenable that.

 2021-04-10, 16:08 #13 bur   Aug 2020 167 Posts Ok, thanks. I didn't get an error message, so I thought it was different.
 2021-04-11, 15:39 #14 bsquared     "Ben" Feb 2007 2×32×191 Posts Updated windows exe's are now available. I think all of the "tune" issues are fixed now. After a bunch of wrestling with build tools I've now built for windows on: * windows subsystem for linux (WSL) <-- best option! * Visual studio 2019 * Mingw64/Msys2 For some reason, avx-ecm doesn't work on the mingw64 build. I haven't tracked down why yet; for now it just uses internal/external gmp-ecm. These various builds used GCC versions 7, 9, and 10, so the massive code reorg in 2.0 has hopefully fixed all of the build issues for GCC 10+ that people were reporting.
 2021-04-11, 16:18 #15 bur   Aug 2020 167 Posts I just continued NFS sieving from another computer that ran yafu 1.34 on an different computer with the new yafu2 build and so far everything runs smoothly, no bugs encountered.
 2021-04-11, 16:51 #16 charybdis     Apr 2020 263 Posts Looks good now. Thank you!
 2021-04-14, 07:46 #17 bur   Aug 2020 16710 Posts I tried the yafu-x64.exe on an i3-2110 with Win 10 and both factor() and tune() just show a blank line for 10 s with no CPU activity and then it returns to the prompt. A session.log is created but with size 0.
2021-04-14, 19:03   #18
bsquared

"Ben"
Feb 2007

2×32×191 Posts

Quote:
 Originally Posted by bur I tried the yafu-x64.exe on an i3-2110 with Win 10 and both factor() and tune() just show a blank line for 10 s with no CPU activity and then it returns to the prompt. A session.log is created but with size 0.
I was not able to test on a cpu that old, so I suspect that there was an illegal instruction. yafu is supposed to be smart about that, only using sse41, avx2, etc., when it is actually available, but I guess something slipped through that I wasn't able to test for.

I don't know if it will tell me much, but can you try to start with -v -v -v (three verbose flags) and post any output?

Also I guess I should ask, is this a 64-bit windows 10 or 32-bit? I have stopped supporting/building 32-bit yafu.

Last fiddled with by bsquared on 2021-04-14 at 20:36

 2021-04-15, 19:41 #19 bur   Aug 2020 167 Posts This is all that happens: Code: D:\Primes\yafu2>yafu-x64.exe factor("10^30+1237") -v -v -v YAFU Version 2.0 Built with Microsoft Visual Studio 1928 Using GMP-ECM 7.0.4, Powered by MPIR 3.0.0 Detected Intel(R) Core(TM) i3-2120 CPU @ 3.30GHz Detected L1 = 32768 bytes, L2 = 3145728 bytes, CL = 64 bytes Using 1 random witness for Rabin-Miller PRP checks Cached 664579 primes; max prime is 9999991 =============================================================== ======= Welcome to YAFU (Yet Another Factoring Utility) ======= ======= bbuhrow@gmail.com ======= ======= Type help at any time, or quit to quit ======= =============================================================== >> D:\Primes\yafu2> But it's not important, I can always just use 1.34 on that older computer.
 2021-04-20, 22:19 #20 kruoli     "Oliver" Sep 2017 Porta Westfalica, DE 7568 Posts Currently, I'm trying to compile YAFU for Linux. I'm stuck at the ysieve. There is a function modinv_1c, which cannot be resolved. I already have GMP, GMP-ECM and ytools in my source directory. Then I did a grep on this directory: Code: ~/src$grep -Rn modinv_1c . Binary file ./ysieve/libysieve.a matches ./ysieve/roots.c:321: inv = modinv_1c(t->sdata.prodN, prime); ./ysieve/roots.c:425: inv = modinv_1c(pn, prime); ./ysieve/roots.c:447: inv = modinv_1c(t->sdata.prodN, prime); Binary file ./ysieve/roots.o matches ./ysieve/worker.c:333: inv = modinv_1c(t->sdata.prodN, prime); ./ysieve/worker.c:353: inv = modinv_1c(t->sdata.prodN, prime); Where do I find this function? GMP is version 6.2.1, GMP-ECM is the current SVN (as of about an hour ago), ytools is the version from git about half an hour ago. The environment is WSL Debian 10.9, all available updates applied. The commandline for compiling was ~/src/ysieve$ make CC=gcc CFLAGS="-O3 -march=native -I../ytools -I. -L../ytools" Last fiddled with by kruoli on 2021-04-20 at 22:28 Reason: Spelling.
2021-04-21, 00:18   #21
bsquared

"Ben"
Feb 2007

2×32×191 Posts

Quote:
 Originally Posted by kruoli Currently, I'm trying to compile YAFU for Linux. I'm stuck at the ysieve. There is a function modinv_1c, which cannot be resolved. I already have GMP, GMP-ECM and ytools in my source directory. Then I did a grep on this directory: Code: ~/src$grep -Rn modinv_1c . Binary file ./ysieve/libysieve.a matches ./ysieve/roots.c:321: inv = modinv_1c(t->sdata.prodN, prime); ./ysieve/roots.c:425: inv = modinv_1c(pn, prime); ./ysieve/roots.c:447: inv = modinv_1c(t->sdata.prodN, prime); Binary file ./ysieve/roots.o matches ./ysieve/worker.c:333: inv = modinv_1c(t->sdata.prodN, prime); ./ysieve/worker.c:353: inv = modinv_1c(t->sdata.prodN, prime); Where do I find this function? GMP is version 6.2.1, GMP-ECM is the current SVN (as of about an hour ago), ytools is the version from git about half an hour ago. The environment is WSL Debian 10.9, all available updates applied. The commandline for compiling was ~/src/ysieve$ make CC=gcc CFLAGS="-O3 -march=native -I../ytools -I. -L../ytools"
Looks like I forgot to update those function names on generic builds (i.e., non-AVX2 or SKYLAKE). If you have AVX2 on your computer (haswell or newer, I think, circa 2014) then build with USE_AVX2=1 or add -DUSE_AVX2 to your CFLAGS line. If you don't, try the fixed version I just now committed to ysieve.

 Similar Threads Thread Thread Starter Forum Replies Last Post chris2be8 YAFU 6 2019-10-17 16:22 EdH YAFU 8 2018-03-14 17:22 bsquared YAFU 119 2015-11-05 16:24 storflyt32 YAFU 2 2015-06-29 05:19 bsquared YAFU 28 2012-07-20 16:17

All times are UTC. The time now is 22:55.

Tue May 11 22:55:14 UTC 2021 up 33 days, 17:36, 0 users, load averages: 4.13, 3.28, 2.98