20100920, 17:09  #1 
Oct 2008
A_{16} Posts 
Optimal Parameters for Small Factors
Hello all,
I was wondering if anyone has any suggestions for the optimal B1 parameter and number of curves to run when attempting to factor numbers where the factors are known to be in the 79 digit range. I'm doing some work on the quadratic sieve where I need to factor many numbers in the 50100 bit range (1631 digit range), but where I know that useful numbers will have factors of 79 digits, and if the number has any larger or smaller factors then it's useless and I don't need to know the factors. Thanks, Patrick Konsor 
20100920, 17:21  #2 
Apr 2010
Over the rainbow
3^{2}·281 Posts 
for the 79 digits range, a B1 of 100 would be enough, after 30 or so (and again each time you find a factor, ) get 50 at 11000. it should get rid of the factor up to 20 25 digits.
Last fiddled with by firejuggler on 20100920 at 17:23 
20100921, 12:22  #3  
Nov 2003
2^{2}×5×373 Posts 
Quote:
A Practical Analysis of ECM Mathematics of Computation 

20100921, 20:10  #4 
Tribal Bullet
Oct 2004
2·3·19·31 Posts 
Alex Kruppa's PhD dissertation dealt with this subject too, in the context of factoring integers with three factors in that range.

20100921, 20:53  #5 
Aug 2006
1756_{16} Posts 

20100924, 16:59  #7 
Oct 2008
2·5 Posts 
Thanks guys, that information is helpful.
Does anyone happen to know if GMPECM is primarily limited by memory bandwidth? I've tried running 6 different process (on a 12 core machine) but the performance of each is 6 times worse than running just one process at a time. 
20100924, 18:04  #8 
Aug 2006
2×29×103 Posts 
I found a ~510% slowdown running two copies on an i7 (4core). I'm not sure if it's transferlimited or not.

20100924, 18:20  #9  
(loop (#_fork))
Feb 2006
Cambridge, England
2×3,191 Posts 
Quote:
Tom 

20100924, 18:27  #10 
Oct 2008
2·5 Posts 
No, 1631 digit numbers (with 79 digit factors). To be specific, I'm not running it from the command line, I'm making library calls from within my program, which needs to factor tons of numbers in that range. I'm trying to run some parameter sweeps by running many different processes (each with just one thread), but, as I said, if I run 6 processes then they all slow down by a factor of 6 (and I know that the ECM library calls are responsible for almost all of the slow down). If I just run two processes then there's a 30% slow down per process. The only performance factor I can think of that would slow it down in this way this is memory bandwidth. Perhaps there's some sort of ECM configurations or parameters that might help?
Last fiddled with by patrickkonsor on 20100924 at 18:42 
20100924, 19:11  #11 
"Serge"
Mar 2008
Phi(4,2^7658614+1)/2
2^{2}·2,333 Posts 
libecm is not threadsafe/aware, though, ...as far as I've heard.
That may be your problem. 
Thread Tools  
Similar Threads  
Thread  Thread Starter  Forum  Replies  Last Post 
Awfully small factors....  petrw1  Lone Mersenne Hunters  17  20091120 03:40 
optimal parameters for GMPECM , oe+ , I  Walter Nissen  GMPECM  16  20070320 19:35 
Small factors  Kees  PrimeNet  6  20061116 00:12 
"Optimal" parameters for ECM  Jushi  GMPECM  4  20060517 11:32 
Missed small factors  dswanson  Data  63  20041124 04:30 