![]() |
How much ecm should i do???
how much ecm should i do before switching to msieve
i keep on finding that i have spent more time on ecm than msieve takes this is with numbers between 85 and 100 digits that i am having this problem i have did 35 digit ecm on a 97 digit number a couple of days ago and that turned out to be way too much could people post what rules they would use for switching to msieve i have searched the forum but found nothing thanks |
[QUOTE=themaster;125965]how much ecm should i do before switching to msieve
i keep on finding that i have spent more time on ecm than msieve takes this is with numbers between 85 and 100 digits that i am having this problem i have did 35 digit ecm on a 97 digit number a couple of days ago and that turned out to be way too much could people post what rules they would use for switching to msieve i have searched the forum but found nothing thanks[/QUOTE] Let the msieve binary do the ECM for you; it already has tuning that guarantees you won't spend too much time before switching to QS. |
i do the ecm on multiple pcs so that is not possible
i looked at msieves code and found [code] static uint32 choose_max_digits(msieve_obj *obj, uint32 bits) { /* choose the amount of work to do. We want the chosen digit level to be a small fraction of what QS and NFS would need */ uint32 max_digits = 15; if (bits == 0) return 0; if (obj->flags & MSIEVE_FLAG_DEEP_ECM) { if (bits > 220) { if (bits < 280) max_digits = 20; else if (bits < 320) max_digits = 25; else if (bits < 360) max_digits = 30; else if (bits < 400) max_digits = 35; else max_digits = 40; } } return max_digits; } [/code] this seems a bit low to me |
[QUOTE=themaster;125976]i do the ecm on multiple pcs so that is not possible
i looked at msieves code and found [code] static uint32 choose_max_digits(msieve_obj *obj, uint32 bits) { /* choose the amount of work to do. We want the chosen digit level to be a small fraction of what QS and NFS would need */ uint32 max_digits = 15; if (bits == 0) return 0; if (obj->flags & MSIEVE_FLAG_DEEP_ECM) { if (bits > 220) { if (bits < 280) max_digits = 20; else if (bits < 320) max_digits = 25; else if (bits < 360) max_digits = 30; else if (bits < 400) max_digits = 35; else max_digits = 40; } } return max_digits; } [/code] this seems a bit low to me[/QUOTE] hmmmm... that's roughly what I am doing manually. (I am ECM'ing on multiple PCs too.) Additionally I do some p-1 and p+1. |
it probably is just that i am used to doing a lot more
|
I've heard a 2/7 rule of thumb mentioned before. For a 97-digit number, that would mean stopping ECM at 25 or 30 digits if you're trying to optimize computer time.
|
before this i used 1/3 but it often stretched
|
[QUOTE=jbristow;125994]I've heard a 2/7 rule of thumb mentioned before. For a 97-digit number, that would mean stopping ECM at 25 or 30 digits if you're trying to optimize computer time.[/QUOTE]AFAIK, the rulle of thumb is 2/9 for SNFS and 1/3 for GNFS. This latter rule is consistent with the 3/2 relative difficulties ROT for NFS.
Within reason, it doesn't much matter. If the factorization is non-trivial other considerations come into play, such as memory usage and communication overheads. Paul |
[quote=xilman;126007]AFAIK, the rulle of thumb is 2/9 for SNFS and 1/3 for GNFS. This latter rule is consistent with the 3/2 relative difficulties ROT for NFS.
Within reason, it doesn't much matter. If the factorization is non-trivial other considerations come into play, such as memory usage and communication overheads. Paul[/quote] what would u use for QS |
[QUOTE=themaster;126039]what would u use for QS[/QUOTE]As I said, it doesn't much matter. QS is only competitive below 100 digits or thereabouts. I'd probably go to around 30 digits or so.
Paul |
thanks
this should speed me up quite a bit so i can find more 100 digit RHPs |
| All times are UTC. The time now is 15:38. |
Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.