![]() |
|
|
#12 | |
|
Banned
"Luigi"
Aug 2002
Team Italia
2·3·11·73 Posts |
Quote:
Code:
luigi@luigi-Aspire-MC605:~/luigi/ecm$ python gen_ecm_times.py
-> echo "10^150-233" | ecm -sigma 0:3046069392 11e3
Traceback (most recent call last):
File "gen_ecm_times.py", line 147, in <module>
p = subprocess.Popen(cmd, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
File "/usr/lib/python2.7/subprocess.py", line 710, in __init__
errread, errwrite)
File "/usr/lib/python2.7/subprocess.py", line 1327, in _execute_child
raise child_exception
OSError: [Errno 2] No such file or directory
luigi@luigi-Aspire-MC605:~/luigi/ecm$ ll /usr/lib/python2.7/subprocess.py
-rw-r--r-- 1 root root 59046 giu 22 2015 /usr/lib/python2.7/subprocess.py
Last fiddled with by ET_ on 2016-07-17 at 10:02 |
|
|
|
|
|
|
#13 | |
|
Mar 2006
1110111112 Posts |
Quote:
And just to let everyone know, I'm running the script on my computer from digit level 30 to 70 (ie, original B1 list: 250e3 <= B1 <= 2.9e9). This will take several days to generate, but I'll post my results when I get them. |
|
|
|
|
|
|
#14 | |
|
Banned
"Luigi"
Aug 2002
Team Italia
2×3×11×73 Posts |
Quote:
Unfortuntely, still no success with the new script, but it's no issure in reality, as I have write a script myself to test te speed of gmp-ecm with Fermat numbers. Thank you for the quick answer! Luigi |
|
|
|
|
|
|
#15 | |
|
Mar 2006
479 Posts |
Quote:
$ which ecm /usr/local/bin Then you can set ECM_PATH = '/usr/local/bin/' |
|
|
|
|
|
|
#16 |
|
Banned
"Luigi"
Aug 2002
Team Italia
12D216 Posts |
|
|
|
|
|
|
#17 |
|
Just call me Henry
"David"
Sep 2007
Cambridge (GMT/BST)
133768 Posts |
Surely all we need to judge the ratio between nfs speed on different pcs is to run a fairly quick sieving test as a benchmark. I suppose different size numbers might have a slightly different ratio(as the ratio of time spend in qs vs sieving etc changes) but it should be fairly good.
|
|
|
|
|
|
#18 | |
|
Mar 2006
479 Posts |
Quote:
1) I was able to run the gen_ecm_times.py script on a linux machine and found the problem that ET_ was running into. I've fixed that in the attached gen_ecm_times zip file. 2) I have finished my run of gen_ecm_times.py with the original B1 from 250e3 to 2.9e9 on all 31 numbers from 150 to 300 digits. This was on my main machine, so my occasional use of the machine may have slightly skewed some of the times, but hopefully not by too much. I'm running another batch with the original B1 from 250e3 to 25e9 on a linux machine that is dedicated to this task only. It will probably take around 20 days to finish. 3) Since the format of ecm_times.txt is different from fivemack's, I've rewritten ecm-toy.py to be able to understand this new data format. I'm attaching a zip of my rewritten ecm-toy.py, which includes my ecm_times.txt and my new calculations for ecm-probabilities.txt. 4) I did some number crunching on the num_curves = a*e^(b*x) equations and came up with some slightly different formulas. It took me a minute to realize that your (fivemack's) multipliers needed to be inverted (1/a, instead of a). Once I accounted for that I was able to compare your curves with mine. I'm including an excel spreadsheet that lists your equations and mine, shows the number of curves recommended by gmp-ecm, and compares that in a couple of ways to the curve counts generated by your equation, and two equations of mine. The gist of the results is that your equations seem to work better for 35-55 digits. Then from 60-80 digits mine take over as more accurate. I've compared the difference in curve counts, and the ratio of the curve counts, which both basically show the same thing. I've highlighted the best curve estimates in green to show which equation was best for that digit level. I'm attaching these results as est_curves.zip. I've put my "m" equations into the ecm-probabilites.txt file. 5) I've formatted the output at the end of the program to make more sense to me. Hopefully others will find it useful too. Here is an example: Code:
> ecm-toy.py g250 100@260e6 pc1 <...snip...> Best b1 is 850000000 expected time 810.852 days Expected NFS time is 880.439 days And now NFS beats them Recommend running the following number of ecm curves before switching to NFS: 4500 curves with B1 = 110.0e6 300 curves with B1 = 850.0e6 Probability estimates for a factor to be within a given digit range: Digit Range | Probability | Cumulative ------------|-------------|----------- 30 - 34 | 0.00000 | 0.00000 35 - 39 | 0.00000 | 0.00000 40 - 44 | 0.00000 | 0.00000 45 - 49 | 0.00021 | 0.00021 50 - 54 | 0.01955 | 0.01977 55 - 59 | 0.05703 | 0.07680 60 - 64 | 0.06893 | 0.14573 65 - 69 | 0.07094 | 0.21666 70 - 74 | 0.07123 | 0.28789 75 - 79 | 0.07126 | 0.35914 80 - 84 | 0.07125 | 0.43039 85 - 89 | 0.07123 | 0.50163 90 - 94 | 0.07122 | 0.57285 95 - 99 | 0.07121 | 0.64406 100 - 104 | 0.07120 | 0.71526 105 - 109 | 0.07119 | 0.78646 110 - 114 | 0.07119 | 0.85765 115 - 119 | 0.07118 | 0.92883 120 - 124 | 0.07117 | 1.00000 125 - 129 | 0.00000 | 1.00000 Last fiddled with by WraithX on 2016-07-23 at 04:08 |
|
|
|
|
|
|
#19 |
|
Just call me Henry
"David"
Sep 2007
Cambridge (GMT/BST)
2×33×109 Posts |
We could do with working out ecm timings and gnfs timings on the same pc. This would make WraithX's version of the script usable. How does pc1 compare to tractor?
I would suggest that we could set a standardised sieving benchmark that takes 1 hour on the baseline pc. Then the gnfs time can be scaled accordingly. Currently the snfs timing has no scaling at all for different pcs. In general I don't think it matters that much how accurate the timings are as it doesn't change the probability of finding a factor with ecm that much. As long as we aim for a factor of 1.5 we shouldn't be too far off. |
|
|
|
|
|
#20 |
|
I moo ablest echo power!
May 2013
13×137 Posts |
I'm having some issues with the ecm-toy.py. When I run
Code:
python ecm-toy.py g250 100@260e6 tractor Code:
Traceback (most recent call last):
File "ecm-toy.py", line 215, in <module>
t_one_curve = interpolate_list(entry, targdig)
File "ecm-toy.py", line 82, in interpolate_list
(M,e)=fitexp_list(listy[1])
File "ecm-toy.py", line 50, in fitexp_list
(m,c)=fitlin(dl)
File "ecm-toy.py", line 32, in fitlin
ssxx = sxx - sx*sx/s;
ZeroDivisionError: integer division or modulo by zero
|
|
|
|
|
|
#21 |
|
Just call me Henry
"David"
Sep 2007
Cambridge (GMT/BST)
588610 Posts |
Which version of the script are you using(Which post did you download it from?)?
The script is written for python 2. I only had to make two changes to WraithX's version to get it to run. xrange to range and R.sort() to R=sorted(R). I also had to give it some gnfs timings. I used the tractor values. I need to work out what scaling factor should be used though. edit: You seem to almost be using WraithX's cmd line. tractor doesn't have ecm timings in WraithX's format. Use pc1 rather than tractor. It will need gnfs timings to do gnfs. snfs will work straight away. Last fiddled with by henryzz on 2016-09-30 at 21:00 |
|
|
|
|
|
#22 |
|
I moo ablest echo power!
May 2013
110111101012 Posts |
Yeah, I'm using WraithX's from post 18. I'll make the changes you suggest and see if it works.
|
|
|
|
![]() |
| Thread Tools | |
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Nuke attack - run or hide? | MooMoo2 | Soap Box | 40 | 2018-01-19 23:48 |
| What Bounds to choose, and what are Bounds | 144 | Information & Answers | 5 | 2017-03-15 13:36 |
| GPU attack on double Mersennes? | Uncwilly | GPU Computing | 29 | 2013-09-08 20:53 |
| Attack of the Cosmic Rays | S485122 | Hardware | 3 | 2010-08-24 01:19 |
| Attack of the Killer Zombies | ewmayer | Lounge | 12 | 2007-01-30 05:56 |