mersenneforum.org

mersenneforum.org (https://www.mersenneforum.org/index.php)
-   EdH (https://www.mersenneforum.org/forumdisplay.php?f=152)
-   -   How I install YAFU onto my Ubuntu Machines (https://www.mersenneforum.org/showthread.php?t=23087)

Ferrier 2019-10-24 16:07

make option
 
[QUOTE=EdH;486662]I might be able to take a look in a little while, if you'd like to PM me with the details.

Meanwhile, I've attached two instances of YAFU that were compiled on an i7-2600 running Debian. One is from the wip branch and the other from the trunk. Both run fine on other machines here, including a Fedora machine.[/QUOTE]

I guess this binary is compiled with only NFS=1 option?

EdH 2019-10-25 00:20

[QUOTE=Ferrier;528797]I guess this binary is compiled with only NFS=1 option?[/QUOTE]
That is correct.

I think B[SUP]2[/SUP] will have to address the segmentation fault issue. I think I've seen it with the wip branch in the past, but not with the trunk branch.

Ferrier 2019-10-25 03:35

[QUOTE=dizzyneuron;525648]Hello Ed/Ben

Looks like all is working now. Reread all post and did a make clean and then just used make x86_64 NFS=1, other flags show in cpu_info but am guessing they cause issues, cannot be sure may experimet more later. Thank both of you again for your help, funny brain still has issues with everyday things but math, with alot of stickies still makes my day. Take care.

Cheers, Michael[/QUOTE]

Thanks for the info.

I managed to use the following command to recompile the trunk version and run [B]./yafu "tune"[/B] successfully (without [B]USE_AVX2=1[/B])
[CODE]
make clean
make x86_64 NFS=1 USE_SSE41=1
[/CODE]
on Intel Xeon Gold 6136(support sse4_1 and avx2)

EdH 2019-10-25 14:26

[QUOTE=Ferrier;528871]Thanks for the info.

I managed to use the following command to recompile the trunk version and run [B]./yafu "tune"[/B] successfully (without [B]USE_AVX2=1[/B])
[CODE]
make clean
make x86_64 NFS=1 USE_SSE41=1
[/CODE]on Intel Xeon Gold 6136(support sse4_1 and avx2)[/QUOTE]Glad you have something working. Bummer on the avx2. I think that is supposed to add considerably.

Thanks for the report. Hopefully B[SUP]2[/SUP] sees this and has a chance to chime in about the avx2 issue.

Ferrier 2019-10-25 16:53

Hi EdH,

I followed the instructions and get yafu working. But I noticed in [B]factor.log[/B] that when doing siqs factoring, it is still using msieve-1.38 which I think the latest version per your [URL="https://www.mersenneforum.org/showthread.php?t=23085"]msieve install guide[/URL] is 1.54

(I double checked that I have modified the msieve path in Makefile per your guide)


Any idea on this?

Thanks

EdH 2019-10-25 18:03

[QUOTE=Ferrier;528925]Hi EdH,

I followed the instructions and get yafu working. But I noticed in [B]factor.log[/B] that when doing siqs factoring, it is still using msieve-1.38 which I think the latest version per your [URL="https://www.mersenneforum.org/showthread.php?t=23085"]msieve install guide[/URL] is 1.54

(I double checked that I have modified the msieve path in Makefile per your guide)


Any idea on this?

Thanks[/QUOTE]
Hi Ferrier,

That text is hard coded into the factor/qs/SIQS.c source code. I don't think it represents the current version of msieve in any way. This is another question for B[SUP]2[/SUP].

-Ed

bsquared 2019-10-25 18:41

The Xeon Gold 6136 supports AVX512, but you will have to get the code in branches/wip to use it. To do that go here: [url]https://sourceforge.net/p/yafu/code/HEAD/tree/branches/wip/[/url] and click on download snapshot.

Should compile in linux with NFS=1 USE_AVX2=1 SKYLAKEX=1 assuming you have a recent version of gcc (I think 7.3 or better).

The msieve-1.38 that you see, as EdH mentioned, is hardcoded into the siqs codebase. It is only used to solve siqs matrices and is perfectly suited for that (newer versions of msieve wouldn't help). More recent versions of msieve are used in NFS jobs. So you are doing everything correct.

Ferrier 2019-10-29 01:42

wip compile error
 
[QUOTE=bsquared;528934]The Xeon Gold 6136 supports AVX512, but you will have to get the code in branches/wip to use it. To do that go here: [url]https://sourceforge.net/p/yafu/code/HEAD/tree/branches/wip/[/url] and click on download snapshot.

Should compile in linux with NFS=1 USE_AVX2=1 SKYLAKEX=1 assuming you have a recent version of gcc (I think 7.3 or better).

The msieve-1.38 that you see, as EdH mentioned, is hardcoded into the siqs codebase. It is only used to solve siqs matrices and is perfectly suited for that (newer versions of msieve wouldn't help). More recent versions of msieve are used in NFS jobs. So you are doing everything correct.[/QUOTE]

Hi B^2

I tried to compile yafu wip
[CODE]svn co https://svn.code.sf.net/p/yafu/code/branches/wip $HOME/Math/yafuwip[/CODE]

svn log shows the latest commit is [B]r379 2019-10-16 16:03:54[/B]


I modified the Makefile with msieve path and yafu.ini suggested by OP

trying to compile, had the same issue:
[url]https://www.mersenneforum.org/showpost.php?p=525079&postcount=18[/url]

But [B]lscpu[/B] shows Intel(R) Xeon(R) Gold 6136 CPU supporting avx2 avx512f avx512cd


Here is my output:
[CODE]
root@c3:~/Math/yafuwip# make NFS=1 USE_AVX2=1 SKYLAKEX=1
gcc -g -DUSE_AVX2 -DUSE_AVX512F -DUSE_AVX512BW -march=skylake-avx512 -DUSE_AVX2 -DUSE_SSE41 -mavx2 -DUSE_SSE41 -m64 -msse4.1 -DUSE_NFS -O3 -fomit-frame-pointer -Wall -I. -Iinclude -Itop/aprcl -Itop/ -I../msieve/zlib -I../gmp/include -I../gmp-ecm/include/ -c -o factor/qs/msieve/lanczos.o factor/qs/msieve/lanczos.c
In file included from factor/qs/msieve/lanczos.c:20:0:
include/qs.h:30:10: fatal error: cofactorize.h: No such file or directory
#include "cofactorize.h"
^~~~~~~~~~~~~~~
compilation terminated.
Makefile:369: recipe for target 'factor/qs/msieve/lanczos.o' failed
make: *** [factor/qs/msieve/lanczos.o] Error 1
[/CODE]

EdH 2019-10-29 02:20

Hi Ferrier,

This is actually a misplaced (or unregistered file - I'm not sure which) The fix is to move (or copy) cofactorize.h from the yafu/factor/qs** directory into the yafu/include directory and give that a try.

**I'm pretty sure that's where it was. If not, try to "locate" it.

-Ed

Ferrier 2019-10-29 03:00

[QUOTE=EdH;529156]Hi Ferrier,

This is actually a misplaced (or unregistered file - I'm not sure which) The fix is to move (or copy) cofactorize.h from the yafu/factor/qs** directory into the yafu/include directory and give that a try.

**I'm pretty sure that's where it was. If not, try to "locate" it.

-Ed[/QUOTE]

Thanks, EdH!

Ferrier 2019-10-29 04:28

[QUOTE=bsquared;528934]The Xeon Gold 6136 supports AVX512, but you will have to get the code in branches/wip to use it. To do that go here: [url]https://sourceforge.net/p/yafu/code/HEAD/tree/branches/wip/[/url] and click on download snapshot.

Should compile in linux with NFS=1 USE_AVX2=1 SKYLAKEX=1 assuming you have a recent version of gcc (I think 7.3 or better).

The msieve-1.38 that you see, as EdH mentioned, is hardcoded into the siqs codebase. It is only used to solve siqs matrices and is perfectly suited for that (newer versions of msieve wouldn't help). More recent versions of msieve are used in NFS jobs. So you are doing everything correct.[/QUOTE]

FWIW, after I compiled with [CODE]make NFS=1 USE_AVX2=1 SKYLAKEX=1[/CODE] in wip(r379).

Some observations:

Run ./yafu RSA-100 caused
[CODE]
root@c3c:~/Math/yafuwip# ./yafu 1522605027922533360535618378132637429718068114961380688657908494580122963258952897654000350692006139


fac: factoring 1522605027922533360535618378132637429718068114961380688657908494580122963258952897654000350692006139
fac: using pretesting plan: normal
fac: using specified qs/gnfs crossover of 93 digits
fac: using specified qs/snfs crossover of 75 digits
div: primes less than 10000
fmt: 1000000 iterations
rho: x^2 + 3, starting 200 iterations on C100 rho: x^2 + 2, starting 200 iterations on C100 rho: x^2 + 1, starting 200 iterations on C100 nfs: searching for brent special forms...
nfs: searching for homogeneous cunningham special forms...
nfs: searching for XYYXF special forms...
nfs: couldn't find special form
pm1: starting B1 = 150K, B2 = gmp-ecm default on C100
ecm: 30/30 curves on C100, B1=2k, B2=gmp-ecm default
ecm: 74/74 curves on C100, B1=11k, B2=gmp-ecm default
ecm: 214/214 curves on C100, B1=50k, B2=gmp-ecm default, ETA: 0 sec
pm1: starting B1 = 3750K, B2 = gmp-ecm default on C100
double free or corruption (out)
Aborted (core dumped)
[/CODE]

But run ./yafu 'factor(RSA-100)' had no issue.

./yafu 'siqs(some c95)' works too (with obvious [URL="https://www.mersenneforum.org/showpost.php?p=529163&postcount=29"]10% time saving[/URL] compared to trunk version!)


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

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