mersenneforum.org  

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

Reply
 
Thread Tools
Old 2012-02-10, 04:01   #12
Prime95
P90 years forever!
 
Prime95's Avatar
 
Aug 2002
Yeehaw, FL

2×33×151 Posts
Default

Quote:
Originally Posted by R.D. Silverman View Post
This is poorly posed.
Dubslow's response is essentially correct. This isn't an interesting mathematics optimization problem, rather a mundane programming optimization problem. I'm looking for a fast function that quickly, but not necessarily super accurately, simulates prime95's existing P-1 bounds generator over a range of values that the typical prime95 user encounters.

I forget all the details, but I received a bug report that accurately generating these optimal bounds on hundreds of assignments was causing problems at startup (sending expected completion dates to the server). This seemed like a potential quick and dirty fix.
Prime95 is offline   Reply With Quote
Old 2012-02-10, 07:20   #13
cheesehead
 
cheesehead's Avatar
 
"Richard B. Woods"
Aug 2002
Wisconsin USA

11110000011002 Posts
Default

I like the idea of saving:

1) a time estimate (not actual ETA, which would get mixed up if worktodo lines are rearranged/removed/added) and

2) (except for "Pminus1" where B1/B2 are specified) algorithmic B1/B2 bounds *

for each P-1 assignment in the worktodo line for that individual assignment

The first time these are calculated the long way, store them in the worktodo line. Then just read them out after that, unless something forces re-calculation of bounds/time.

Computing fresh ETAs each time, based on the stored time estimates, would be trivial.

This way, only the new assignments that have been added since the preceding request for ETAs would need to go through the full optimization algorithm to produce the ETA listing.

- - -

* If a particular worktodo line's assignment had not yet actually started, there wouldn't exist any save file with the bounds in it.

Last fiddled with by cheesehead on 2012-02-10 at 07:29
cheesehead is offline   Reply With Quote
Old 2012-02-10, 09:12   #14
R.D. Silverman
 
R.D. Silverman's Avatar
 
"Bob Silverman"
Nov 2003
North of Boston

22×1,877 Posts
Default

Quote:
Originally Posted by Dubslow View Post
I think you missed what he's getting at. Prime95 already has an excellent bounds optimizer, which optimizes for maximum success for lowest running time*
This is TOTAL nonsense. To achieve what you suggest, just run for ZERO
time.
R.D. Silverman is offline   Reply With Quote
Old 2012-02-10, 09:18   #15
R.D. Silverman
 
R.D. Silverman's Avatar
 
"Bob Silverman"
Nov 2003
North of Boston

22·1,877 Posts
Default

Quote:
Originally Posted by Prime95 View Post
Dubslow's response is essentially correct. This isn't an interesting mathematics optimization problem, rather a mundane programming optimization problem. I'm looking for a fast function that quickly, but not necessarily super accurately, simulates prime95's existing P-1 bounds generator over a range of values that the typical prime95 user encounters.
No, Dubslow's response was total nonsense. (max prob of success for
minimal time)


And the question that you ask now is different from what was asked originally.


The true question should be how to optimize the "existing P-1 bounds generator over a range of values that the typical prime95 user encounters."

and that question IS a mathematical one.

As for a fast function, just use table lookup combined with some
simple interpolation.
R.D. Silverman is offline   Reply With Quote
Old 2012-02-10, 09:37   #16
ckdo
 
ckdo's Avatar
 
Dec 2007
Cleves, Germany

2×5×53 Posts
Default

Quote:
Originally Posted by Dubslow View Post
I have 29 P-1 assignments currently, and it took 7 seconds to run (yes I did time it).
I have a quad with 5620 P-1 assignments. Bounds calculation took 63:29.93 (yes, I actually did time that too).

Problem: Assignments finish faster than bounds can be calculated, and submitting a result triggers bounds calculation.

If I had set the machine to automatically communicate with PrimeNet, it would (a) never finish communicating and (b) permanently use half a core for nothing useful - it has enough work such that it will not request more and little enough that it won't unreserve anything.
ckdo is offline   Reply With Quote
Old 2012-02-10, 13:32   #17
Dubslow
Basketry That Evening!
 
Dubslow's Avatar
 
"Bunslow the Bold"
Jun 2011
40<A<43 -89<O<-88

3·29·83 Posts
Default

Quote:
Originally Posted by R.D. Silverman View Post
The true question should be how to optimize the "existing P-1 bounds generator over a range of values that the typical prime95 user encounters."
False. He is only looking to mimic it, for significantly less run time.
Quote:
Originally Posted by R.D. Silverman View Post
As for a fast function, just use table lookup combined with some
simple interpolation.
True. (And has already been suggested.)
Quote:
Originally Posted by ckdo View Post
I have a quad with 5620 P-1 assignments. Bounds calculation took 63:29.93 (yes, I actually did time that too).

Problem: Assignments finish faster than bounds can be calculated, and submitting a result triggers bounds calculation.

If I had set the machine to automatically communicate with PrimeNet, it would (a) never finish communicating and (b) permanently use half a core for nothing useful - it has enough work such that it will not request more and little enough that it won't unreserve anything.
Dear god that's a lot of assignments.

Last fiddled with by Dubslow on 2012-02-10 at 13:33
Dubslow is offline   Reply With Quote
Old 2012-02-11, 18:33   #18
Mr. P-1
 
Mr. P-1's Avatar
 
Jun 2003

22218 Posts
Default

Quote:
Originally Posted by R.D. Silverman View Post
No, Dubslow's response was total nonsense. (max prob of success for minimal time)
You are correct. A more precise statement of the optimisation problem which the client tries to solve is:

Input Available Memory, number of bits Trial Factored, number of LL's already completed. Output optimal B1,B2, where the quantity to be optimised (minimised) is the expected running time to clear the exponent, either by finding a factor, or by completing two matching LL tests.

Assumptions: No further factorisation (either TF or some other method) will be attempted after P-1 but before the final LL. The LL will be done on the same machine as the P-1

As I have remarked on many occasions, for people doing P-1 work specifically (as opposed to people P-1ing exponents they are going to LL), these assumptions aren't valid. Additionally, for these people, the quantity the client tries to optimise is, well, non-optimal. Instead of trying to minimise the expected time to clear an exponent, it should be trying to maximise the expected time saving per unit time expended by me, where "expected time saving" means the difference between the expected time the average machine will take to clear the assignment if I don't do the P-1 first and if I do.
Mr. P-1 is offline   Reply With Quote
Old 2012-02-12, 18:07   #19
axn
 
axn's Avatar
 
Jun 2003

22·32·151 Posts
Default

Ok. Very crude first attempt. Assumes "tests saved" is two. For "tests saved" = 1, you can halve the output, I guess. Error is roughly within +/-10% ( for about 95% of the cases). Only calibrated within 25m < p < 75m. No idea how good it will be outside this range.

EDIT:- Produces rubbish values way outside the calibration range
Attached Files
File Type: txt estimator.txt (2.5 KB, 201 views)

Last fiddled with by axn on 2012-02-12 at 18:17
axn is offline   Reply With Quote
Reply

Thread Tools


Similar Threads
Thread Thread Starter Forum Replies Last Post
Most Wanted rogue FermatSearch 35 2021-03-15 14:06
Fibonacci Formula MattcAnderson Math 7 2013-01-14 23:29
Most wanted kar_bon Riesel Prime Data Collecting (k*2^n-1) 15 2011-08-09 16:50
New LLT formula hoca Math 7 2007-03-05 17:41
100 Most Wanted Citrix Factoring 24 2004-02-22 01:05

All times are UTC. The time now is 22:25.


Sun Jan 29 22:25:41 UTC 2023 up 164 days, 19:54, 0 users, load averages: 0.82, 0.87, 0.92

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2023, 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.

≠ ± ∓ ÷ × · − √ ‰ ⊗ ⊕ ⊖ ⊘ ⊙ ≤ ≥ ≦ ≧ ≨ ≩ ≺ ≻ ≼ ≽ ⊏ ⊐ ⊑ ⊒ ² ³ °
∠ ∟ ° ≅ ~ ‖ ⟂ ⫛
≡ ≜ ≈ ∝ ∞ ≪ ≫ ⌊⌋ ⌈⌉ ∘ ∏ ∐ ∑ ∧ ∨ ∩ ∪ ⨀ ⊕ ⊗ 𝖕 𝖖 𝖗 ⊲ ⊳
∅ ∖ ∁ ↦ ↣ ∩ ∪ ⊆ ⊂ ⊄ ⊊ ⊇ ⊃ ⊅ ⊋ ⊖ ∈ ∉ ∋ ∌ ℕ ℤ ℚ ℝ ℂ ℵ ℶ ℷ ℸ 𝓟
¬ ∨ ∧ ⊕ → ← ⇒ ⇐ ⇔ ∀ ∃ ∄ ∴ ∵ ⊤ ⊥ ⊢ ⊨ ⫤ ⊣ … ⋯ ⋮ ⋰ ⋱
∫ ∬ ∭ ∮ ∯ ∰ ∇ ∆ δ ∂ ℱ ℒ ℓ
𝛢𝛼 𝛣𝛽 𝛤𝛾 𝛥𝛿 𝛦𝜀𝜖 𝛧𝜁 𝛨𝜂 𝛩𝜃𝜗 𝛪𝜄 𝛫𝜅 𝛬𝜆 𝛭𝜇 𝛮𝜈 𝛯𝜉 𝛰𝜊 𝛱𝜋 𝛲𝜌 𝛴𝜎𝜍 𝛵𝜏 𝛶𝜐 𝛷𝜙𝜑 𝛸𝜒 𝛹𝜓 𝛺𝜔