-
Notifications
You must be signed in to change notification settings - Fork 71
--diff acts as a starting difficulty with vardiff enabled #76
Comments
I honestly think this is valuable behavior, so the bigger question is should we keep the current behaviour and change docs, or should we add different args for more specific, less "magic" behaviour. I see three main difficulty adjustment needs:
So, some possible configurability semantics:
To avoid potential DOS vecotrs we need to:
Thoughts on this? I think this is closely tied to my end goal of not having "vardiff" ports or "highdiff" ports, but rather port defaults and each port can be configured how you'd like. |
I was thinking along similar lines, but hadn't thought about allowing Ideally I think we need to be shooting towards a single port per currency (with sensible + configurable defaults), or we're gonna end up with a pretty crazy amount of ports to pick from, with little actual difference between them. As a passing thought... What do you think of allowing users with who donate to the pool to set a higher min/max on some of these things? That way we can provide really slick graphs for people who want 'em, and it covers the increased resource usage. Should be easy to implement by periodically throwing a few keys in Redis. |
So this is really several work chunks:
|
That sounds pretty straightforward. Long term I'd like to be able to adjust difficulty on-the-fly. For example, if the server is under high load it'd be nice to just bump everyone's difficulty up a bit. Or adjust difficulty/sps for users who set theirs to be super spammy. Perhaps that is an issue for later. But it might be able to be accomplished by instead of switching the vardiff flag off, to instead changing the vardiff range to a single item? The downside would be running the vardiff calculation unnecessarily quite a lot. |
Eh, I'd rather do the flag. Flag checking already occurs, and I we'd be forced to do 90% of the work for 4 just to accomplish 2. As for changing peoples diff all at once, etc, I think with 0.7 having the connection states in Redis will make this pretty easy. |
I have been Lyra2RE CPU mining (https://github.com/tpruvot/cpuminer-multi) on the variable difficulty port at SimpleMulti.com (stratum+tcp://ca.simplemulti.com:3374). My difficulty gets set to 0.08 after a few seconds and my CPU mines away... However, about every 20 minutes the miner "takes a break" while the stratum sends more work: http://imgur.com/1cmxrEp I am wondering if I am being flagged for submitting shares too quickly at too low a difficulty and the stratum closes my connection for a few minutes. Is there a solution for this? In the interim, I am pointing my CPU miners at the Lyra2RE fixed-difficulty port (stratum+tcp://ca.simplemulti.com:3373).This definitely has slowed down my submission rate, but the CPUs are never idle, and the shares are worth significantly more. Is there any way to have the pool auto-adjust the difficulty up from 0.08 to something higher when mining on the variable difficulty port so that the miner is not ever disconnected and forced to reset? It really appears that if your submission rate per minute, with low difficulty, is to too high, you are throttled. Mining Lyra2RE at yaamp.com does not have this same "reset" every few minutes. I am not sure what the difference is. |
@Jakerich No, there is no way to manually adjust below 0.64. We've intentionally set the minimum manual difficulty at a moderate level to prevent abuse. SimpleMulti does no throttling, If you were submitting shares too quickly your difficulty would be increased. It is possible there is a bug causing the disconnects (possibly related to #113 ?) but this could also be a network connectivity issue. |
Although I think we should probably not actually rigidly follow the difficulty specified, or a malicious user could flood the server with low difficulty shares, we should probably never adjust to a difficulty lower than what is set.
Clarification by icook:
--diff
argument in password field acts as a starting difficulty on vardiff, but a fixed difficulty on fixed diff. This was not intended behaviour.The text was updated successfully, but these errors were encountered: