mersenneforum.org

mersenneforum.org (https://www.mersenneforum.org/index.php)
-   Software (https://www.mersenneforum.org/forumdisplay.php?f=10)
-   -   ECMNet Feature Requests (https://www.mersenneforum.org/showthread.php?t=13996)

xilman 2011-04-11 15:48

[QUOTE=rogue;258182]There will be no means to order work selection by b1, as it is presumed that total work should be sufficient. Total work is computed by sum(b1 * ECM curves for b1) for all b1.[/QUOTE]I don't think I understand this. Does it mean that you have removed the old[code]// strategy1 - by lowest B1 that needs curves done and total work done[/code] functionality? If so, I'll have to rethink my present choices. Or does your quoted material restate the old explanation for strategy1?


Paul

rogue 2011-04-11 18:06

[QUOTE=xilman;258194]Thanks, but please don't let my tastes delay a release. I'm happy to wait for recursive factorization on the assumption that it won't be too difficult for me to implement recursion by manual modifications to the database.

Paul[/QUOTE]

Recursion is there. It was a question of whether or not to remove the ability to turn it off.

rogue 2011-04-11 18:29

[QUOTE=xilman;258195]I don't think I understand this. Does it mean that you have removed the old[code]// strategy1 - by lowest B1 that needs curves done and total work done[/code] functionality? If so, I'll have to rethink my present choices. Or does your quoted material restate the old explanation for strategy1?

Paul[/QUOTE]

strategy1 and strategy2 are so similar that one could argue that they would produce the same results. Based upon the total work done, the server will determine the current B1 that needs work and how many curves are needed for that B1.

I'll try to explain how it works and hopefully that will allay any fears you may have about losing functionality.

When the server starts up, it reads in ecmserver.b1 and builds a table, which looks something like this:
[code]
B1 Curves Total Work
300 8 308
2000 30 62400
11000 74 874000
50000 221 11864000
250000 453 124300000
1000000 984 1097250000
3000000 2541 8607000000
11000000 4949 62062000000
43000000 8266 409877000000
110000000 20158 2572818000000
260000000 47173 14482360000000
850000000 77666 78281080000000
2900000000 96000 344416100000000
9900000000 445000 4683900000000000[/code]

The total ECM work done for each composite is stored in a column (don't worry the actual b1s and curves run are still there as well). When the work selection routine is called, it uses that value and does a lookup in the table above to find the current b1 level needing work. For example, if the total work for a composite is 2000000000, then it indicates that all curves for b1 <= 1e6 are probably done and that some curves for 3e6 are probably done. It then does a computation (8607000000 - 2000000000) / 3e6 and computes that approximately 2202 curves for b1=3e6 needs to be run.

So unless higher b1 for ECM are run out of sequence, this should provide the same results for both strategy1 and strategy2.

If you still have concerns, please let me know.

rogue 2011-04-14 17:28

I finally finished with the latest set of code changes. Now back to testing.

rogue 2011-04-25 00:36

With the holiday weekend I have had no time to test and next weekend will be just as bad because I will be on vacation for the next few days with no access to a computer or phone (as vacations should be).

rogue 2011-05-16 13:40

I finally got back to some testing this weekend. Things are looking good so far, but I have a lot more testing to do before I can release an alpha.


All times are UTC. The time now is 08:20.

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