mersenneforum.org  

Go Back   mersenneforum.org > Factoring Projects > YAFU

Reply
 
Thread Tools
Old 2021-04-23, 23:40   #45
bsquared
 
bsquared's Avatar
 
"Ben"
Feb 2007

357810 Posts
Default

Quote:
Originally Posted by wombatman View Post
Still seeing the same errors (minus the NFS ones) after updating, running make clean, and re-making:

Code:
/usr/bin/ld: ./libyecm.a(avxecm.o):/home/wombat/yafu/factor/avx-ecm/avxecm.c:65: multiple definition of `vecmulmod_ptr'; ./libyecm.a(avxppm1.o):/home/wombat/yafu/factor/avx-ecm/avxppm1.c:63: first defined here
/usr/bin/ld: ./libyecm.a(avxecm.o):/home/wombat/yafu/factor/avx-ecm/avxecm.c:69: multiple definition of `vecaddsubmod_ptr'; ./libyecm.a(avxppm1.o):/home/wombat/yafu/factor/avx-ecm/avxppm1.c:67: first defined here
/usr/bin/ld: ./libyecm.a(avxecm.o):/home/wombat/yafu/factor/avx-ecm/avxecm.c:66: multiple definition of `vecsqrmod_ptr'; ./libyecm.a(avxppm1.o):/home/wombat/yafu/factor/avx-ecm/avxppm1.c:64: first defined here
/usr/bin/ld: ./libyecm.a(avxecm.o):/home/wombat/yafu/factor/avx-ecm/avxecm.c:68: multiple definition of `vecsubmod_ptr'; ./libyecm.a(avxppm1.o):/home/wombat/yafu/factor/avx-ecm/avxppm1.c:66: first defined here
/usr/bin/ld: ./libyecm.a(avxecm.o):/home/wombat/yafu/factor/avx-ecm/avxecm.c:67: multiple definition of `vecaddmod_ptr'; ./libyecm.a(avxppm1.o):/home/wombat/yafu/factor/avx-ecm/avxppm1.c:65: first defined here
collect2: error: ld returned 1 exit status
make: *** [Makefile:422: yafu] Error 1
I also did a clean re-make of both ytools and ysieve, just in case, before the remake of yafu proper.
Well, something isn't quite right because those function pointer definitions don't even exist in that file anymore. I consolidated the duplicate definitions into vec_common.c. Just double-checked and the corrections are checked in. Are you sure you updated yafu to the latest revision?
bsquared is offline   Reply With Quote
Old 2021-04-24, 00:51   #46
wombatman
I moo ablest echo power!
 
wombatman's Avatar
 
May 2013

23·223 Posts
Default

Quote:
Originally Posted by bsquared View Post
Are you sure you updated yafu to the latest revision?
I used "git fetch" in each of the directories, but I'm also not overly familiar with git. Is that the proper way to update to the latest version of the repository?
wombatman is offline   Reply With Quote
Old 2021-04-24, 02:21   #47
EdH
 
EdH's Avatar
 
"Ed Hall"
Dec 2009
Adirondack Mtns

23·5·101 Posts
Default

Quote:
Originally Posted by wombatman View Post
I used "git fetch" in each of the directories, but I'm also not overly familiar with git. Is that the proper way to update to the latest version of the repository?
I think it's "git pull" once you have established a clone, but you might want to research it.
EdH is offline   Reply With Quote
Old 2021-04-24, 02:53   #48
wombatman
I moo ablest echo power!
 
wombatman's Avatar
 
May 2013

6F816 Posts
Default

Quote:
Originally Posted by EdH View Post
I think it's "git pull" once you have established a clone, but you might want to research it.
That did the trick. Thank you both for your help!
wombatman is offline   Reply With Quote
Old 2021-04-24, 06:25   #49
bur
 
bur's Avatar
 
Aug 2020
79*6581e-4;3*2539e-3

6238 Posts
Default

I installed yafu from sourceforge using EdH how-to. Could someone explain how I transition to the github version? gmp-ecm and ggnfs are build and working, so it's just downloading and building the github version. If possible step-by-step. Thanks.

Last fiddled with by bur on 2021-04-24 at 06:26
bur is offline   Reply With Quote
Old 2021-04-25, 12:34   #50
kruoli
 
kruoli's Avatar
 
"Oliver"
Sep 2017
Porta Westfalica, DE

68210 Posts
Default

Quote:
Originally Posted by bsquared View Post
If you are unable to make progress please let me know. I don't have any AMD systems to test on, but obviously I would like yafu to be able to run on them.
I guess there is some instruction that is available on Intel with AVX2, that is not available on my Zen 1 Threadripper. I tried the AVX2 binary for Windows from Github and that one wouldn't even start for me. Would it help you ifI ran the feature detector of y-cruncher and share it here?

Meanwhile, your "non-special" Windows binary is running fine.
kruoli is online now   Reply With Quote
Old 2021-04-28, 09:43   #51
bur
 
bur's Avatar
 
Aug 2020
79*6581e-4;3*2539e-3

13·31 Posts
Default

I cloned the files with git clone, but make quits with an error regarding a missing .h file and msieve. I think I need to edit Makefile to include the proper location for msieve?

Since there are various lines where it is mentioned, I don't know which of them to edit. This is for linux/ubuntu.

Last fiddled with by bur on 2021-04-28 at 09:43
bur is offline   Reply With Quote
Old 2021-04-28, 12:53   #52
bsquared
 
bsquared's Avatar
 
"Ben"
Feb 2007

2×1,789 Posts
Default

Quote:
Originally Posted by kruoli View Post
I guess there is some instruction that is available on Intel with AVX2, that is not available on my Zen 1 Threadripper. I tried the AVX2 binary for Windows from Github and that one wouldn't even start for me. Would it help you ifI ran the feature detector of y-cruncher and share it here?

Meanwhile, your "non-special" Windows binary is running fine.
Yes, that would be good to see, thanks. Yafu has something similar, with the -vproc option, but if yafu doesn't run at all then I guess that won't work.
bsquared is offline   Reply With Quote
Old 2021-04-28, 12:56   #53
kruoli
 
kruoli's Avatar
 
"Oliver"
Sep 2017
Porta Westfalica, DE

2·11·31 Posts
Default

The AVX-less version works, so I'll post both outputs (yafu (precompiled Windows version without AVX) and y-cruncher feature detector) later, when I have access to the machine.
kruoli is online now   Reply With Quote
Old 2021-04-28, 13:03   #54
bsquared
 
bsquared's Avatar
 
"Ben"
Feb 2007

2×1,789 Posts
Default

Quote:
Originally Posted by bur View Post
I cloned the files with git clone, but make quits with an error regarding a missing .h file and msieve. I think I need to edit Makefile to include the proper location for msieve?

Since there are various lines where it is mentioned, I don't know which of them to edit. This is for linux/ubuntu.
Line 26 includes the location of zlib within the msieve directory, maybe that is what you need to change.
Code:
-I../../msieve/zlib
Also, line 172 of the makefile begins this if/else structure to specify the location of the msieve library:

Code:
ifeq ($(NFS),1)
	CFLAGS += -DUSE_NFS
#	modify the following line for your particular msieve installation

	ifeq ($(COMPILER),icc)
		LIBS += -L../../msieve/lib/linux
	else
        ifeq ($(COMPILER),icc)
            LIBS += -L../../msieve/lib/wsl/
        else
			ifeq ($(MINGW),1)
				LIBS += -L../../msieve/lib/mingw/
			else
				LIBS += -L../../msieve/lib/linux/
			endif
        endif
	endif

	LIBS += -lmsieve
endif
The point of all that is to have several locations for potential msieve installations and which one you use depends on the compiler. I try to make sure builds work using icc, gcc, and mingw/gcc so it was helpful to just select which one to use from the command line. It looks like a gcc build would use the last "else" line.

If you don't need that complexity you can replace it all with something like this:

ifeq ($(NFS),1)
CFLAGS += -DUSE_NFS
LIBS += -L../relative/path/to/libmsieve.a
endif
bsquared is offline   Reply With Quote
Old 2021-04-28, 17:35   #55
bur
 
bur's Avatar
 
Aug 2020
79*6581e-4;3*2539e-3

13·31 Posts
Default

Ok, thank, I'll try that.
bur is offline   Reply With Quote
Reply

Thread Tools


Similar Threads
Thread Thread Starter Forum Replies Last Post
yafu ignoring yafu.ini chris2be8 YAFU 6 2019-10-17 16:22
Running YAFU via Aliqueit doesn't find yafu.ini EdH YAFU 8 2018-03-14 17:22
YAFU-1.34 bsquared YAFU 119 2015-11-05 16:24
Yafu bug. storflyt32 YAFU 2 2015-06-29 05:19
yafu 1.32 bsquared YAFU 28 2012-07-20 16:17

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


Thu Oct 28 16:01:05 UTC 2021 up 97 days, 10:30, 0 users, load averages: 1.31, 1.39, 1.46

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

This forum has received and complied with 0 (zero) government requests for information.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation.
A copy of the license is included in the FAQ.