mersenneforum.org  

Go Back   mersenneforum.org > Great Internet Mersenne Prime Search > Data > mersenne.ca

Reply
 
Thread Tools
Old 2021-03-14, 01:11   #562
petrw1
1976 Toyota Corona years forever!
 
petrw1's Avatar
 
"Wayne"
Nov 2006
Saskatchewan, Canada

32×5×103 Posts
Default

Quote:
Originally Posted by Viliam Furik View Post
If I am interpreting the numbers correctly, that means I am about right. Is that correct?

Maybe the best way to test would be to parse the list of known factors and compare the minimal work amount for TF and P-1, as there is a bias towards the TF in the factoring process because the TF is done first.
The answer in math and computers is always: "It depends".

I think the current stats being close to even are at least partly because GIMPS does a good job determining when and how to do TF vs P1.
If the TF/P1 balance gets too much out of whack this will no longer hold.

Keep in mind how much faster GPUs are at TF than CPUs or even GPUs are at P1.
My personal example: I have a 2080Ti GPU running on an i7-7820x 8-core CPU.
So if 1 TF factor is found each 200 GhzDays my GPU will find about 24 per day.
If 1 P1 factor is found each 200 GhzDays my CPU will find 1 factor each 2 days.

Remember that with each successive bit level the TF work doubles while the odds of finding a factor is almost the same; approximately 1/(bit_level+1).
However, the expected TF success rate will decrease a little if extra P1 (or ECM) work has been done; because P1/ECM will find some factors that the applied TF bit level would find.
As far as I know there does not exist a calculator here that can calculate the expected TF success rate taking into count how much P1/ECM has been done.

For the same reason, the more TF that has been done before P1, the lower the odds of P1 finding a factor. This estimates that quite well: https://www.mersenne.ca/prob.php.
The P1 work required for a desired success rate increases rapidly.
For example, using 35000001 with 74 TF bits.

2% 0.50 GhzDays
3% 1.30
4% 3.03
5% 6.36
6% 12.54
petrw1 is offline   Reply With Quote
Old 2021-03-16, 10:34   #563
SethTro
 
SethTro's Avatar
 
"Seth"
Apr 2019

27310 Posts
Default

I really appreciate the "ECM Summary" which gives a quick sense of the ECM work that's been complete. Would you consider

1. Adding an "ECM Summary" summary row
This could be as simple as "X total GHz Days"
It could also potentially include an estimated percentage of tXX completed (I'm happy to write some code if that would help out)
2. For exponents with lots of ECM rows filtering B1/B2 pairs with only a single ECM curves and GHz Days < 1.
SethTro is offline   Reply With Quote
Old 2021-03-16, 11:56   #564
James Heinrich
 
James Heinrich's Avatar
 
"James Heinrich"
May 2004
ex-Northern Ontario

64408 Posts
Default

Quote:
Originally Posted by SethTro View Post
It could also potentially include an estimated percentage of tXX completed (I'm happy to write some code if that would help out)
While I vaguely understand the concept (e.g. "T-levels" section in YAFU docfile.txt) I have no idea how to calculate it, so if you want to provide some code that would be helpful.
James Heinrich is online now   Reply With Quote
Old 2021-03-16, 17:18   #565
Viliam Furik
 
"Viliam Furík"
Jul 2018
Martin, Slovakia

457 Posts
Default

petrw1 -> I wasn't talking about a factor being found for the given exponent by P-1 vs. TF, but about the amount of work needed to find a given factor. I don't think these are the same things.

For example, those factors which are k-smooth can be found by P-1 using less GHz-D, than by TF, as they are often of higher bit-size. If the factor is easier to find by TF than P-1, that means it's a relatively small factor with big factors of k.

My "conjecture" is that the ratio of the counts of factors being easier to find by TF and factors found by P-1 is about 1:1, maybe even tends to 1:1 as exponent goes to the infinity.

Probably not true, but it seems close enough.
Viliam Furik is offline   Reply With Quote
Old 2021-03-16, 17:46   #566
James Heinrich
 
James Heinrich's Avatar
 
"James Heinrich"
May 2004
ex-Northern Ontario

25·3·5·7 Posts
Default

Quote:
Originally Posted by SethTro View Post
1. Adding an "ECM Summary" summary row
This could be as simple as "X total GHz Days"
It could also potentially include an estimated percentage of tXX completed (I'm happy to write some code if that would help out)
2. For exponents with lots of ECM rows filtering B1/B2 pairs with only a single ECM curves and GHz Days < 1.
I have implemented these two (see for example M1277).

More specifically for part 2: I'm currently displaying any B1/B2 pairs that either have a total effort of >1.0GHz-days, or at least 10 curves run at those bounds. That still leaves a number of single curves run at "oddball" bounds (but with non-trivial effort), and a number of curves of trivial effort but >10 curves run. Let me know if you think the filtering criteria should be adjusted.

When you have some sample code for calculating t-level that I can emulate, I can add that value in as well.
James Heinrich is online now   Reply With Quote
Old 2021-03-16, 23:45   #567
SethTro
 
SethTro's Avatar
 
"Seth"
Apr 2019

3×7×13 Posts
Default

Quote:
Originally Posted by James Heinrich View Post
I have implemented these two (see for example M1277).

More specifically for part 2: I'm currently displaying any B1/B2 pairs that either have a total effort of >1.0GHz-days, or at least 10 curves run at those bounds. That still leaves a number of single curves run at "oddball" bounds (but with non-trivial effort), and a number of curves of trivial effort but >10 curves run. Let me know if you think the filtering criteria should be adjusted.

When you have some sample code for calculating t-level that I can emulate, I can add that value in as well.
I'm not sure you enabled the change in production, I'm seeing 206 rows including
"123456 654321000 2 0.002" and
"1000 10000 1 2.40618e-7"
which I believe would be filtered by your proposed change.
SethTro is offline   Reply With Quote
Old 2021-03-16, 23:51   #568
James Heinrich
 
James Heinrich's Avatar
 
"James Heinrich"
May 2004
ex-Northern Ontario

25×3×5×7 Posts
Default

Quote:
Originally Posted by SethTro View Post
I'm not sure you enabled the change in production, I'm seeing 206 rows.
You probably have that page cached from prior to the change then. Try ctrl-F5 for a forcible refresh, there should only be 180 rows with the last one showing "various" instead of B1/B2.
James Heinrich is online now   Reply With Quote
Old 2021-03-17, 00:39   #569
SethTro
 
SethTro's Avatar
 
"Seth"
Apr 2019

3·7·13 Posts
Default

Quote:
Originally Posted by James Heinrich View Post
I have implemented these two (see for example M1277).

More specifically for part 2: I'm currently displaying any B1/B2 pairs that either have a total effort of >1.0GHz-days, or at least 10 curves run at those bounds. That still leaves a number of single curves run at "oddball" bounds (but with non-trivial effort), and a number of curves of trivial effort but >10 curves run. Let me know if you think the filtering criteria should be adjusted.

When you have some sample code for calculating t-level that I can emulate, I can add that value in as well.
Perfect I see it now (after I reloaded without cache).

I wrote some simple starting code for estimating factoring progress, I used the numbers from ecm progress report and I imagine the UI could look similar (see attachment).

@VBCurtis couple of questions you could help out with
1. Why is it called tXX?
2. The number of expected curves to find a t50 factor with a set B1/B2 is independent of size of N correct? AKA I can calculate B1/B2 -> expected curves and use that value for all exponents?
3. Do I need to change any of the ECM math given Mersenne cofactors have a certain form?
4. Is this methodology generally sound?
Code:
# (B1, B2, expected_curves to find a t35 factor)
expected_curves = [(11e3, 11e5, 3495192), (11e3, 11e8, 374814), ..., (1e6, 100e6, 1566), (1e6, 900e6, 957), ...] 
# t35 progress for 50 curves of 30e6,450e6 without info on this exact B1,B2 pair can be estimated by
min_curves_needed = min(count for b1, b2, count in expected_curves if b1 < 30e6 and b2 < 450e6)
progress = 50 / min_curves_needed
Attached Thumbnails
Click image for larger version

Name:	Screenshot from 2021-03-16 17-17-39.png
Views:	23
Size:	37.5 KB
ID:	24508  

Last fiddled with by SethTro on 2021-03-17 at 00:39
SethTro is offline   Reply With Quote
Old 2021-03-17, 03:14   #570
VBCurtis
 
VBCurtis's Avatar
 
"Curtis"
Feb 2005
Riverside, CA

478110 Posts
Default

Quote:
Originally Posted by SethTro View Post
@VBCurtis couple of questions you could help out with
1. Why is it called tXX?
2. The number of expected curves to find a t50 factor with a set B1/B2 is independent of size of N correct? AKA I can calculate B1/B2 -> expected curves and use that value for all exponents?
3. Do I need to change any of the ECM math given Mersenne cofactors have a certain form?
4. Is this methodology generally sound?
Code:
# (B1, B2, expected_curves to find a t35 factor)
expected_curves = [(11e3, 11e5, 3495192), (11e3, 11e8, 374814), ..., (1e6, 100e6, 1566), (1e6, 900e6, 957), ...] 
# t35 progress for 50 curves of 30e6,450e6 without info on this exact B1,B2 pair can be estimated by
min_curves_needed = min(count for b1, b2, count in expected_curves if b1 < 30e6 and b2 < 450e6)
progress = 50 / min_curves_needed
I am honored to receive such a call-out!
1. T45 = one "expects" in the probability sense to find a 45-digit factor in that number of trials. 1/e of the factors of that size will be missed with a T45, but one should move up to larger bounds by this time anyway. I don't know what the T stands for- tested?
2. Correct- number of curves does not change with input size. Time for each curve does, but of course we don't care about that when estimating work done.
3. No, I don't think any of the curve-count math changes for ECM on Mersennes.
4. If you have a copy of GMP-ECM, I'd invoke that with a toy input, the B1 and B2 values, and the -v flag to get output of number of curves at that size to complete a T-level. You may be able to pull the calculation from the GMP-ECM source, actually. If grabbing the curve-count code is not tenable, I suggest building a table of a range of B1 / B2 manually. Unfortunately, GMP-ECM won't use exactly B2 = 100* B1 since it uses an entirely different stage 2, so this many not work for common P95 choices.
Hope this helps!
VBCurtis is offline   Reply With Quote
Old 2021-03-17, 06:41   #571
LaurV
Romulan Interpreter
 
LaurV's Avatar
 
Jun 2011
Thailand

24E516 Posts
Default

Quote:
Originally Posted by James Heinrich View Post
However in this case, it both looks ugly and probably contains a good deal of incorrect data.
You are wrong. The reports are beautiful. We don't need some cats and squirrels walking around, numbers are enough, they are clean to read, and we can copy paste them without getting strange characters in the clipboard, etc.
Good job!
LaurV is offline   Reply With Quote
Old 2021-03-17, 07:04   #572
LaurV
Romulan Interpreter
 
LaurV's Avatar
 
Jun 2011
Thailand

100100111001012 Posts
Default

re ECM calculation, I remember somebody in the past (Alex Kruppa?) did similar calculation, which was posted on the forum. Yafu source code (Ben2?) could help too (including with where the tXX terminology comes from, there was a discussion about it here too, when it was implemented in Yafu - possibly in Yafu-related threads?).

Right now I am quite busy at job, but I am laughing thinking that if RDS would have been still lurking around, he would have immediately sent us to read HIS book (which, to be fair, contains all sort of things related to this calculation too).

Last fiddled with by LaurV on 2021-03-17 at 07:06
LaurV is offline   Reply With Quote
Reply

Thread Tools


Similar Threads
Thread Thread Starter Forum Replies Last Post
Small inconsistencies between mersenne.org and mersenne.ca factor databases GP2 mersenne.ca 44 2016-06-19 19:29
mersenne.ca (ex mersenne-aries.sili.net) LaurV mersenne.ca 8 2013-11-25 21:01
Gaussian-Mersenne & Eisenstein-Mersenne primes siegert81 Math 2 2011-09-19 17:36
Mersenne Wiki: Improving the mersenne primes web site by FOSS methods optim PrimeNet 13 2004-07-09 13:51

All times are UTC. The time now is 13:36.

Thu May 13 13:36:05 UTC 2021 up 35 days, 8:16, 1 user, load averages: 3.85, 3.45, 3.27

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.