mersenneforum.org  

Go Back   mersenneforum.org > Factoring Projects > Msieve

Reply
 
Thread Tools
Old 2016-06-08, 20:48   #111
VBCurtis
 
VBCurtis's Avatar
 
"Curtis"
Feb 2005
Riverside, CA

4,861 Posts
Default

Alfred-
He is not commenting on your troubles in any way. This is a feedback thread, he's providing feedback that perhaps the default target-density should be higher than 70.

It seems to me the density that leads to shortest project length rises with difficulty. 70 appears best for GNFS up to mid 140s and SNFS up to 200ish. At the risk of asking for too much, perhaps default density could be a function of project difficulty or large-prime size?

On the other hand, a world where defaults "just work" for projects up to a day or two, while larger projects require tweaking such settings for best performance isn't such a bad world.

If default density could be a function of difficulty, perhaps (GNFS size - 65) with a min of 70 and max of 120 would reduce our need to invoke the target-density command line flag.
VBCurtis is offline   Reply With Quote
Old 2016-06-08, 21:13   #112
pinhodecarlos
 
pinhodecarlos's Avatar
 
"Carlos Pinho"
Oct 2011
Milton Keynes, UK

3·17·97 Posts
Default

Is there away you could send me the dat file, ini and fb files?
pinhodecarlos is offline   Reply With Quote
Old 2016-06-08, 21:48   #113
Alfred
 
Alfred's Avatar
 
May 2013
Germany

8510 Posts
Default

Quote:
Originally Posted by pinhodecarlos View Post
Is there away you could send me the dat file, ini and fb files?

Yes, I think there is a way.
I can split the dat file to smaller pieces, say 10,000,000 relations per part.
Then upload (send) the pieces to whatever you want.

In any case, thank you for your great offering.
Alfred is offline   Reply With Quote
Old 2016-06-08, 21:51   #114
pinhodecarlos
 
pinhodecarlos's Avatar
 
"Carlos Pinho"
Oct 2011
Milton Keynes, UK

3×17×97 Posts
Default

Quote:
Originally Posted by Alfred View Post
Yes, I think there is a way.
I can split the dat file to smaller pieces, say 10,000,000 relations per part.
Then upload (send) the pieces to whatever you want.

In any case, thank you for your great offering.
Can you make a torrent file?
pinhodecarlos is offline   Reply With Quote
Old 2016-06-11, 14:05   #115
Alfred
 
Alfred's Avatar
 
May 2013
Germany

5·17 Posts
Default

Quote:
Originally Posted by pinhodecarlos View Post
Can you make a torrent file?
No.

msieve succeeded.
I used the previous set of relations, but removed the duplicates and
reordered the set of unique relations (simply using python's sort() function).
This set of unique relations is identical with the previous set.

@VBCurtis
I understand (more or less).
Thank you for your response.
Attached Files
File Type: log 12012.2432.ok.log (10.2 KB, 107 views)
Alfred is offline   Reply With Quote
Old 2016-06-14, 15:07   #116
wreck
 
wreck's Avatar
 
"Bo Chen"
Oct 2005
Wuhan,China

23×3×7 Posts
Default

While doing the test postprocessing of 10^343-1 by Kurt,
there is a strange behavior when using msieve_svn988, it
complains "matrix not dense enough, retrying" repeatly.
The svn967 do -nc2 normally.
The command when use svn988 is
miseve -s -i -l -nf -v -t 12 -p

The command when use svn967 is
miseve -s -i -l -nf -v -t 12 -p "target_density=070"

Both postprocessing log and polynomial file are attached.
Attached Files
File Type: log R343_msieve988.log (21.6 KB, 187 views)
File Type: log R343_msieve967.log (12.7 KB, 99 views)
File Type: txt R343_poly.txt (531 Bytes, 128 views)
wreck is offline   Reply With Quote
Old 2016-06-15, 12:52   #117
jasonp
Tribal Bullet
 
jasonp's Avatar
 
Oct 2004

3,541 Posts
Default

This is very strange: for the high-memory singleton removal pass, the 967 log has
Code:
Sun Jun 12 21:29:51 2016  begin with 634064226 relations and 599307596 unique ideals
Sun Jun 12 21:50:18 2016  reduce to 347280625 relations and 277146609 ideals in 20 passes
while the 988 log has
Code:
Sun Jun 12 01:27:11 2016  begin with 630234936 relations and 341529243 unique ideals
Sun Jun 12 01:27:54 2016  reduce to 433544069 relations and 836522 ideals in 10 passes
This looks like the large dataset bug, the 988 version has only half of the unique ideals that it is supposed to have. Do you get better behavior if you manually remove duplicates from the dataset and re-run the filtering? With the number of relations you have, you should be able to try a larger target density and reduce the matrix solve time.

The smaller number of ideals makes the intermediate files generated by the 988 filtering much larger, and in that case the filtering tries to read the dataset in several passes to keep it in memory. But because you really have many more ideals than that, the partial datasets all fail.

Last fiddled with by jasonp on 2016-06-15 at 13:22
jasonp is offline   Reply With Quote
Old 2016-06-16, 13:04   #118
wreck
 
wreck's Avatar
 
"Bo Chen"
Oct 2005
Wuhan,China

23×3×7 Posts
Default

I give some time to investigate the difference of these two postprocessing
logs, the first line not the same is at
commencing in-memory singleton removal
That line does not appear before "keeping xxx ideals with weight <= 200"
at the log988, but it does appear before "keeping xxx ideals with weight
<= 200" at log966.
Then I search the reason why it does not appear at log988.
This line is print at first sentence in function filter_purge_singletons_core.

There are three places call filter_purge_singletons_core(), they are:
1. filter_purge_cliques at line 646 in common/filter/clique.c
2. filter_read_lp_file at line 134 in common/filter/singleton.c
3. filter_read_lp_file at line 243 in common/filter/singleton.c

It is likely that the "filter_read_lp_file at line 134 in common/filter/singleton.c"
should call first.
Before "filter_read_lp_file at line 134 in common/filter/singleton.c", there is one line,
filter_read_lp_file_1pass(obj, filter, 200);

I think the
"keeping 341529243 ideals with weight <= 200, target excess is 299982897"
is print in function filter_read_lp_file_1pass.
Most some other normal postprocessing log does not print this line,
so it is possible there exist some issues in this function.
The function filter_read_lp_file_1pass is seems only called once , and in the problem log,
the sentecnes
Code:
	if (i != j) {
		logprintf(obj, "keeping %u ideals with weight <= %u, "
				"target excess is %u\n",
				j, max_ideal_weight, 
				filter->target_excess);
is executed,
maybe it could give some help to print out some sample of
Code:
if (counts[i] == 0 || counts[i] > max_ideal_weight)
to see why there i is not equal to j.

In the function get_file_size
Code:
		char name_gz[256];
		sprintf(name_gz, "%s.gz", name);
changed to
Code:
		char name_gz[256];
		memset(name_gz, 0, sizeof(name_gz));
		sprintf(name_gz, "%s.gz", name);
seems better.
I can not understand why this function ' s return value is
Code:
		return (tmp.st_size / 11) * 20;
the number 11 and 20 seems two magic numbers.

That's all I can got after some hours review of the msieve code.

I saw the commands "manually remove duplicates" some years ago but
have forgot it , could you tell me how to do that?

We are going to sieve 700M unique rels, and then test different
target_density to choose the best one.
wreck is offline   Reply With Quote
Old 2016-06-17, 14:14   #119
jasonp
Tribal Bullet
 
jasonp's Avatar
 
Oct 2004

3,541 Posts
Default

The GGNFS tree on sourceforge has useful utilities here.
jasonp is offline   Reply With Quote
Old 2016-11-04, 16:47   #120
pinhodecarlos
 
pinhodecarlos's Avatar
 
"Carlos Pinho"
Oct 2011
Milton Keynes, UK

3·17·97 Posts
Default

I have a question with regards to the LA phase. Now that UK temperatures are dropping and so far I've been running msieve with 4 threads under LA phase, I was wondering in running LA with 6 threads or even 7. Will I see a gain on it? I've always worked with less than 4 threads due to heat constrain. Just asking although I can stop my current job and try it with 7 threads.

Thanks you.

Carlos
pinhodecarlos is offline   Reply With Quote
Old 2016-11-04, 18:22   #121
henryzz
Just call me Henry
 
henryzz's Avatar
 
"David"
Sep 2007
Cambridge (GMT/BST)

23·3·5·72 Posts
Default

Quote:
Originally Posted by pinhodecarlos View Post
I have a question with regards to the LA phase. Now that UK temperatures are dropping and so far I've been running msieve with 4 threads under LA phase, I was wondering in running LA with 6 threads or even 7. Will I see a gain on it? I've always worked with less than 4 threads due to heat constrain. Just asking although I can stop my current job and try it with 7 threads.

Thanks you.

Carlos
As far as I am aware it is up to experimentation. At one point I think it may have been faster to use two mpi instances on a cpu. I don't know whether that is still/ever was true. I don't think it is anymore.
It certainly is cooling down in the UK this week. Unplesantly cold cycling today.

Last fiddled with by henryzz on 2016-11-04 at 18:23
henryzz is offline   Reply With Quote
Reply



Similar Threads
Thread Thread Starter Forum Replies Last Post
Msieve 1.50 feedback firejuggler Msieve 99 2013-02-17 11:53
Msieve v1.48 feedback Jeff Gilchrist Msieve 48 2011-06-10 18:18
Msieve 1.43 feedback Jeff Gilchrist Msieve 47 2009-11-24 15:53
Msieve 1.42 feedback Andi47 Msieve 167 2009-10-18 19:37
Msieve 1.41 Feedback Batalov Msieve 130 2009-06-09 16:01

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


Sat Jul 17 01:09:14 UTC 2021 up 49 days, 22:56, 1 user, load averages: 1.20, 1.62, 1.54

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.