mersenneforum.org  

Go Back   mersenneforum.org > Factoring Projects > GMP-ECM

Reply
 
Thread Tools
Old 2012-06-14, 19:55   #1
ATH
Einyen
 
ATH's Avatar
 
Dec 2003
Denmark

283410 Posts
Default Error in GMP-ECM 6.4.3 and latest svn

Trying to compile the new 6.4.3 it fails during "make check":

Code:
GMP-ECM 6.4.3 [configured with MPIR 2.5.1, --enable-asm-redc] [P-1]
Input number is 234^997+997^234 (2363 digits)
Using B1=100, B2=492, polynomial x^1, x0=2131690193
Step 1 took 0ms
Assertion failed: (__builtin_constant_p (1UL) && (1UL) == 0 ? ((F[i])->_mp_size
< 0 ? -1 : (F[i])->_mp_size > 0) : __gmpz_cmp_ui (F[i],1UL)) == 0, file pm1fs2.c
, line 1949

This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.
############### ERROR ###############
Expected return code 0 but got 3
make: *** [check] Error 1
Full compile log: ecm643error.txt

I did that failing P-1 run with -v -v -v -v: log (300kb): ecm643error2.txt


I also tried the latest svn 2111 (as of 1.5h before this post) and it passed "make check" but failed during the tuning phase: "make ecm-params; make", and of course in the following "make install":
Code:
mv -f .deps/libecm_la-stage2.Tpo .deps/libecm_la-stage2.Plo
/bin/sh ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I./x86_64
 -I/usr/local/include -I/usr/local/include   -O3 -m64 -mavx -std=gnu99 -march=co
rei7-avx -mtune=corei7-avx -MT libecm_la-mpmod.lo -MD -MP -MF .deps/libecm_la-mp
mod.Tpo -c -o libecm_la-mpmod.lo `test -f 'mpmod.c' || echo './'`mpmod.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I./x86_64 -I/usr/local/include -I/us
r/local/include -O3 -m64 -mavx -std=gnu99 -march=corei7-avx -mtune=corei7-avx -M
T libecm_la-mpmod.lo -MD -MP -MF .deps/libecm_la-mpmod.Tpo -c mpmod.c -o libecm_
la-mpmod.o
mpmod.c:616:35: error: 'TUNE_MULREDC_TABLE' undeclared here (not in a function)
mpmod.c:617:35: error: 'TUNE_SQRREDC_TABLE' undeclared here (not in a function)
mpmod.c:617:1: error: invalid initializer
make[2]: *** [libecm_la-mpmod.lo] Error 1
make[2]: Leaving directory `/home/gmpecm'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/gmpecm'
make: *** [all] Error 2
Full compile log: ecm2111error.txt

When I tried to compile it without the tuning step it succeeded.
ATH is offline   Reply With Quote
Old 2012-06-14, 21:04   #2
akruppa
 
akruppa's Avatar
 
"Nancy"
Aug 2002
Alexandria

2,467 Posts
Default

It's the bug that was supposed to be fixed, somehow I managed package the unpatched file! The correct .tar.gz will be uploaded shortly.
akruppa is offline   Reply With Quote
Old 2012-06-14, 23:20   #3
akruppa
 
akruppa's Avatar
 
"Nancy"
Aug 2002
Alexandria

246710 Posts
Default

The file is updated. Can you try again? I don't have access to a Windows machine to test until tomorrow.
akruppa is offline   Reply With Quote
Old 2012-06-15, 10:29   #4
Karl M Johnson
 
Karl M Johnson's Avatar
 
Mar 2010

3·137 Posts
Default

Works for me, I use the auto updating compilation scripts made by ATH, and it successfully compiled 2112 build of GMP-ECM.
Karl M Johnson is offline   Reply With Quote
Old 2012-06-15, 10:42   #5
akruppa
 
akruppa's Avatar
 
"Nancy"
Aug 2002
Alexandria

2,467 Posts
Default

That one fetches the latest version of the svn trunk and compiles it. The svn trunk version and the 6.4.3 release are not the same. It should work, though, as the patch has been added in the trunk, but it also contains many other changes over 6.4.2 and 6.4.3.
akruppa is offline   Reply With Quote
Old 2012-06-15, 20:14   #6
ATH
Einyen
 
ATH's Avatar
 
Dec 2003
Denmark

1011000100102 Posts
Default

The new 6.4.3b compiles without error for me.

The latest svn 2112 still fails for me in the tuning phase like svn 2111.


I updated my gmpecmcompile.zip and added an option to choose between GMP-ECM 6.4.3b or the latest svn.

Last fiddled with by ATH on 2012-06-15 at 20:15
ATH is offline   Reply With Quote
Old 2012-06-16, 19:38   #7
debrouxl
 
debrouxl's Avatar
 
Sep 2009

3D116 Posts
Default

For me, make check has been consistently failing for weeks, with SVN HEAD (updated each time), at
Code:
GMP-ECM 7.0-dev [configured with GMP 5.0.90, --enable-asm-redc, --enable-gpu, --enable-assert] [ECM]
Input number is 5394204444759808120647321820789847518754252780933425517607611172590240019087317088600360602042567541009369753816111824690753627535877960715703346991252857 (154 digits)
Using B1=149827, B2=61418292, polynomial x^2, sigma=0:805816989
Step 1 took 1144ms
Step 2 took 540ms
############### ERROR ###############
Expected return code 6 but got 0
make: *** [check] Erreur 1
Core i7-2670QM (Sandy Bridge), Debian unstable x86_64, distro-patched GCC 4.6.3+ (soon to be upgraded to 4.7.1 - I see that 4.7.1 has now landed in the packages, so it's reasonable to start using the 4.7 series).
debrouxl is offline   Reply With Quote
Old 2012-06-16, 20:17   #8
xilman
Bamboozled!
 
xilman's Avatar
 
May 2003
Down not across

270816 Posts
Default ecm -gpu

Anyone else here trying ecm built with gpu support? If you're not running the svn versions the answer is undoubtedly "no".

Cyril can't reproduce an issue which is rock solid for me. I can't find anything wrong with the code but that's not too surprising perhaps. This summarizes what's wrong:
Code:
[pcl@anubis trunk]$ cd /usr/local/src/ecm-gmp/trunk
[pcl@anubis trunk]$ make check
Making check in x86_64
make[1]: Entering directory `/usr/local/src/ecm-gmp/trunk/x86_64'
make[1]: Nothing to be done for `check'.
make[1]: Leaving directory `/usr/local/src/ecm-gmp/trunk/x86_64'
make[1]: Entering directory `/usr/local/src/ecm-gmp/trunk'
make[1]: Leaving directory `/usr/local/src/ecm-gmp/trunk'
./test.pp1 ./ecm
GMP-ECM 7.0-dev [configured with GMP 5.0.2, --enable-asm-redc, --enable-gpu, --enable-assert] [P+1]
Input number is 328006342451 (12 digits)
Using B1=120, B2=8008, polynomial x^1, x0=5
Step 1 took 0ms
Step 2 took 0ms
********** Factor found in step 2: 328006342451
Found input number N

#
# Lots of correct output deleted
#

GMP-ECM 7.0-dev [configured with GMP 5.0.2, --enable-asm-redc, --enable-gpu, --enable-assert] [ECM]
Input number is 10000000000000000000000000000000000000121 (41 digits)
Using B1=4372759, B2=8561918830, polynomial Dickson(6), sigma=0:291
Step 1 took 5208ms
********** Factor found in step 1: 10000000000000000000000000000000000000121
Found input number N
Tuning parameters from x86_64/k8/params.h
All ECM tests are ok.
echo ""

./test.gpuecm ./ecm
GMP-ECM 7.0-dev [configured with GMP 5.0.2, --enable-asm-redc, --enable-gpu, --enable-assert] [ECM]
Input number is 458903930815802071188998938170281707063809443792768383215233 (60 digits)
Using B1=10000, B2=1873422, sigma=3:42-3:265 (224 curves)
Computing 224 Step 1 took 51ms of CPU time / 2331ms of GPU time
********** Factor found in step 1: 5422968571
Found probable prime factor of 10 digits: 5422968571
Probable prime cofactor 84622273724735933231540562835816167053314357811123 has 50 digits
GMP-ECM 7.0-dev [configured with GMP 5.0.2, --enable-asm-redc, --enable-gpu, --enable-assert] [ECM]
Input number is 2^349-1 (106 digits)
Using B1=587, B2=33126, sigma=3:13-3:236 (224 curves)
Computing 224 Step 1 took 8ms of CPU time / 142ms of GPU time
********** Factor found in step 2: 1146749307995035755805410447651043470398282494584140561868794419693461438044242404035009276555062843277311
Found input number N
############### ERROR ###############
Expected return code 6 but got 8
make: *** [check] Error 1
[pcl@anubis trunk]$
That one consistently fails. The remaining check, if run by hand, succeeds every time.

Anyone any ideas?

Paul
xilman is offline   Reply With Quote
Old 2012-06-18, 19:14   #9
Brian Gladman
 
Brian Gladman's Avatar
 
May 2008
Worcester, United Kingdom

52310 Posts
Default

I can't offer you much in the way of ideas but all the gpu tests pass on Windows x64 so it might possibly be a compiler problem. It might hence be worth trying a different version of the compiler to see if the bug persists.
Brian Gladman is offline   Reply With Quote
Old 2012-07-20, 18:34   #10
RichD
 
RichD's Avatar
 
Sep 2008
Kansas

B7D16 Posts
Default

Quote:
Originally Posted by debrouxl View Post
( ... I see that 4.7.1 has now landed in the packages, so it's reasonable to start using the 4.7 series).
I have been getting this on both ECM 6.4.2 & 6.4.3 using gcc 4.7.1, so I think it is a compiler issue.

Code:
GMP-ECM 6.4.3 [configured with GMP 5.0.5, --enable-asm-redc] [P-1]
Input number is 10090030271*10^400+696212088699 (411 digits)
Using B1=2000, B2=2660562, polynomial x^1, x0=1175914231
./ecm: symbol lookup error: ./ecm: undefined symbol: __gmpn_add_nc
############### ERROR ###############
Expected return code 14 but got 127
make: *** [check] Error 1
No problems when I use gcc 4.5.1.
RichD is offline   Reply With Quote
Old 2012-07-29, 17:15   #11
ATH
Einyen
 
ATH's Avatar
 
Dec 2003
Denmark

2·13·109 Posts
Default

Quote:
Originally Posted by RichD View Post
I have been getting this on both ECM 6.4.2 & 6.4.3 using gcc 4.7.1, so I think it is a compiler issue.
I get the compile error on the latest svn with gcc 4.6.1 and 4.7.1.

I tried gcc 4.5.3 and 4.5.4 for mingw64 but they didn't work at all, I can't find gcc 4.5.1 for mingw64.
ATH is offline   Reply With Quote
Reply

Thread Tools


Similar Threads
Thread Thread Starter Forum Replies Last Post
Latest msieve - GPU for LA? david314 Msieve 1 2013-07-01 16:45
latest SVN 1677 ATH GMP-ECM 7 2012-01-07 18:34
Problem compiling latest SVN ATH GMP-ECM 2 2011-06-23 07:27
Has anyone seen my latest treatise? davieddy Lounge 0 2011-01-21 19:29
Latest version? [CZ]Pegas Software 3 2002-08-23 17:05

All times are UTC. The time now is 20:40.

Sat May 30 20:40:21 UTC 2020 up 66 days, 18:13, 1 user, load averages: 0.94, 1.30, 1.42

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2020, 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.