mersenneforum.org

mersenneforum.org (https://www.mersenneforum.org/index.php)
-   GMP-ECM (https://www.mersenneforum.org/forumdisplay.php?f=55)
-   -   Exit status 15 (https://www.mersenneforum.org/showthread.php?t=23370)

shortcipher 2018-05-24 10:28

Exit status 15
 
While running GMP-ECM with B1=11000000 and c=1302, it stopped with Exit status 15 and found no factors. The only place I have found the exit status values documented is the Linux Man page for gmp-ecm at [url]https://www.systutorials.com/docs/linux/man/1-gmp-ecm/[/url]. It doesn't show exit status 15.
Anyone know what this value means? I was running in quiet mode so no other indications.

fivemack 2018-05-24 10:34

[QUOTE=shortcipher;488275]While running GMP-ECM with B1=11000000 and c=1302, it stopped with Exit status 15 and found no factors. The only place I have found the exit status values documented is the Linux Man page for gmp-ecm at [url]https://www.systutorials.com/docs/linux/man/1-gmp-ecm/[/url]. It doesn't show exit status 15.
Anyone know what this value means? I was running in quiet mode so no other indications.[/QUOTE]

My suspicion is that exit status 15 means 'exit status -15', which means 'the process was terminated' - usually this means the computer ran out of memory and decided to kill ecm. You're right that +15 is not a valid configuration of set bits for a gmp-ecm status.

shortcipher 2018-05-28 07:03

@fivemack was right in saying that the process was terminated. I was running GMP-ECM on Windows 7 as a Python subprocess. Akos Kiss at [url]https://bugs.python.org/issue31863[/url] reports that processes CAN return exit code 15 when terminated on Windows. In my case, the GMP-ECM subprocess was terminated by another process running on the same PC which was over-zealous in trying to clean up orphaned subprocesses.

storm5510 2020-10-14 23:21

Sorry if this is a bit off-topic:

In looping mode using [C]-one[/C], would GMP-ECM produce a non-zero exit code if a factor was found?

kruoli 2020-10-15 08:49

Yes! If it finds the number itself:
[CODE][B]~$[/B] echo 2047 | ecm -one 1000
GMP-ECM 7.0.4 [configured with GMP 6.2.0, --enable-asm-redc] [ECM]
Input number is 2047 (4 digits)
Using B1=1000, B2=51606, polynomial x^1, sigma=1:2307810929
Step 1 took 1ms
********** Factor found in step 1: 2047
Found input number N
[B]~$[/B] echo $?
8[/CODE]
If it finds a factor and the cofactor is prime (maybe PRP):
[CODE][B]~$[/B] echo 2047 | ecm -one 1
GMP-ECM 7.0.4 [configured with GMP 6.2.0, --enable-asm-redc] [ECM]
Input number is 2047 (4 digits)
Using B1=1, B2=12, polynomial x^1, sigma=1:309160743
Step 1 took 0ms
Step 2 took 0ms
********** Factor found in step 2: 23
Found prime factor of 2 digits: 23
Prime cofactor 89 has 2 digits
[B]~$[/B] echo $?
14[/CODE]
If it finds a factor and the cofactor is composite:
[CODE][B]~$[/B] echo '2*(2^2047-1)' | ecm -one 1
GMP-ECM 7.0.4 [configured with GMP 6.2.0, --enable-asm-redc] [ECM]
Input number is 2*(2^2047-1) (617 digits)
********** Factor found in step 1: 2
Found prime factor of 1 digits: 2
Composite cofactor (2*(2^2047-1))/2 has 617 digits
[B]~$[/B] echo $?
6[/CODE]


I'd have to look into the code if there are other possibilities.

storm5510 2020-10-15 13:00

[QUOTE=kruoli;559927]Yes! If it finds the number itself:
[CODE][B]~$[/B] echo 2047 | ecm -one 1000
GMP-ECM 7.0.4 [configured with GMP 6.2.0, --enable-asm-redc] [ECM]
Input number is 2047 (4 digits)
Using B1=1000, B2=51606, polynomial x^1, sigma=1:2307810929
Step 1 took 1ms
********** Factor found in step 1: 2047
Found input number N
[B]~$[/B] echo $?
8[/CODE]If it finds a factor and the cofactor is prime (maybe PRP):
[CODE][B]~$[/B] echo 2047 | ecm -one 1
GMP-ECM 7.0.4 [configured with GMP 6.2.0, --enable-asm-redc] [ECM]
Input number is 2047 (4 digits)
Using B1=1, B2=12, polynomial x^1, sigma=1:309160743
Step 1 took 0ms
Step 2 took 0ms
********** Factor found in step 2: 23
Found prime factor of 2 digits: 23
Prime cofactor 89 has 2 digits
[B]~$[/B] echo $?
14[/CODE]If it finds a factor and the cofactor is composite:
[CODE][B]~$[/B] echo '2*(2^2047-1)' | ecm -one 1
GMP-ECM 7.0.4 [configured with GMP 6.2.0, --enable-asm-redc] [ECM]
Input number is 2*(2^2047-1) (617 digits)
********** Factor found in step 1: 2
Found prime factor of 1 digits: 2
Composite cofactor (2*(2^2047-1))/2 has 617 digits
[B]~$[/B] echo $?
6[/CODE] I'd have to look into the code if there are other possibilities.[/QUOTE]

Interesting. Thank you for the reply.

I was looking for a way to incorporate this into a Windows batch file. Below is an example:

[QUOTE]echo "2^1861-1" | ecm -c 100 -v -one 3 1e6
if %errorlevel% neq 0 goto errhandler[/QUOTE]In this case, [U]neq[/U] is "not equal to." Knowing the specific return value is not really necessary. The three examples above demonstrate that [C]-one[/C] also works in a non-looping mode. I was wondering about this.


All times are UTC. The time now is 12:38.

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