mersenneforum.org

mersenneforum.org (https://www.mersenneforum.org/index.php)
-   Msieve (https://www.mersenneforum.org/forumdisplay.php?f=83)
-   -   Msieve v1.49 feedback (https://www.mersenneforum.org/showthread.php?t=15678)

Andi47 2011-06-18 09:51

Msieve v1.49 feedback
 
[QUOTE=jasonp;263910] Until then it's going to be all NFS polynomial selection, all the time.
[/QUOTE]

hmmmm... what about multithreaded NFS poly selection (msieve -np -t <threads>)? one can do this with the new yafu nfs() functionality or by hand, but both ways are not suitable for fully automated aliquot sequence runs with aliqueit.

jasonp 2011-06-18 10:56

For at least the next few months, I'm only going to have the time to do some deep explorations on running stage 2 for very large problems. After that, I've been thinking of an overhaul of the code to use some of the nice stuff in YAFU.

chris2be8 2011-06-18 16:41

[QUOTE=Andi47;264058]hmmmm... what about multithreaded NFS poly selection (msieve -np -t <threads>)? one can do this with the new yafu nfs() functionality or by hand, but both ways are not suitable for fully automated aliquot sequence runs with aliqueit.[/QUOTE]

The factMsieve,pl from [url]http://mersenneforum.org/showthread.php?t=15662[/url] should do what you want. Assuming aliqueit can generate a NAME.n file and call factMsieve.pl then it should do the rest once you've set paths to binaries, number of CPUs, etc.

The (untested) facility to start helpers automatically was designed for aliqueit etc to exploit multiple systems. I've just not had time to set up passwordless ssh (rsh or rexec should work instead of ssh) from the master to a helper and test it.

Chris K

Andi47 2011-06-18 16:57

[QUOTE=chris2be8;264082]The factMsieve,pl from [url]http://mersenneforum.org/showthread.php?t=15662[/url] should do what you want. Assuming aliqueit can generate a NAME.n file and call factMsieve.pl then it should do the rest once you've set paths to binaries, number of CPUs, etc.

The (untested) facility to start helpers automatically was designed for aliqueit etc to exploit multiple systems. I've just not had time to set up passwordless ssh (rsh or rexec should work instead of ssh) from the master to a helper and test it.

Chris K[/QUOTE]

Thanks, I will check it out.

Andi47 2011-06-18 18:31

[QUOTE=Andi47;264084]Thanks, I will check it out.[/QUOTE]

Poly search seemed to run fine (although I did no deep check if it in fact did 6-threaded poly search), but when sieving was about to start, I got this error:

[code]syntax error at factMsieve.pl line 103, near "my "
Global symbol "$LARGEP" requires explicit package name at factMsieve.pl line 103.
Global symbol "$LARGEP" requires explicit package name at factMsieve.pl line 186.
BEGIN not safe after errors--compilation aborted at factMsieve.pl line 668.[/code]

reverting to older but stable version of factmsieve.pl

Edit: I changed [COLOR="Blue"]my $NICE="nice -n 19 "[/COLOR]; to [COLOR="Blue"]my $NICE="";[/COLOR] hence nice does not work under windows (gives an error "statement is spelled wrong or does not exist"). Could this have caused the problem? (my $NICE= " " did'nt work either.)

chris2be8 2011-06-19 15:02

Strange, the code works for me, but I run Linux. Are you sure you didn't delete the ; on the end of the my $NICE= line? If I deliberately delete it I get similar error messages.

Chris K

chris2be8 2011-06-19 15:13

When using msieve for line sieving under what circumstances does it write the relations in compressed format? I want to run msieve's line sieving to a new file which I can then copy into the $NAME.dat file, but I'm getting compressed relations which can't be copied into the same file as the uncompressed relations from gnfs-lasieve4I*

I managed to get it to work by renaming the output file to end with .gz, gunzip'ing it and copying that into $NAME.dat, but thats not very likely to work on Windows systems which probably won't have gunzip installed.

Chris K

Andi47 2011-06-19 15:28

[QUOTE=chris2be8;264150]Are you sure you didn't delete the ; on the end of the my $NICE= line? If I deliberately delete it I get similar error messages.

Chris K[/QUOTE]

ooops you are right, the ; went indeed missing. I will do another test run in a few days. (I don't want to interrupt my current factorization.)

chris2be8 2011-06-21 16:44

[QUOTE=chris2be8;264152]When using msieve for line sieving under what circumstances does it write the relations in compressed format? I want to run msieve's line sieving to a new file which I can then copy into the $NAME.dat file, but I'm getting compressed relations which can't be copied into the same file as the uncompressed relations from gnfs-lasieve4I*
[/QUOTE]

Any comments? Jason? Anyone?
Chris K

jasonp 2011-06-21 17:01

Msieve uses an abstraction to represent a source for reading or writing relations. If compiled with NO_ZLIB=1, relation input and output are assumed to be of uncompressed text. Otherwise the same algorithm from gzip is used automatically to read from and write to the file, and thus the whole file has to be compressed (or not). Note that you can concatenate compressed relation files with no further processing, and the result is still a valid compressed file.

(My windows binaries are always compiled with NO_ZLIB=1)

chris2be8 2011-06-22 17:04

Does it always write uncompressed data if the output file already contains some uncompressed data? That's the only difference I can see in my two cases.

Also does msieve object if there is more that 1 "N " line in the input .dat file?

Recompiling with NO_ZLIB=1 won't help, I'm trying to update factMsieve.pl for anyone to use and I can't guarantee everyone will do that (or even know how to).

Chris K


All times are UTC. The time now is 04:52.

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