Hey, I have more hashing power on the table now (about 65GH/s total) my difficulty keeps jumping around now from 16 to 32 at one point it was 4 for a long time but my hash rate is fairly consistent. Is this expected and if not let me know what your thoughts are.
Yeah, mine jumps around a lot too. Maybe there should be a little more hysteresis added to the formula for switching difficulties?
I asked awhile back how the pool determines a miners difficulty, below is wizkid057's response. I just didn't expect it to jump around so much. Now that I know it's not just me I'm sure it's expected.
The pool targets 32 shares per minute. So, sticking with that...
(hashrate_in_hashes_per_second/4294967296)*60 = difficulty_1_shares_per_minute
Difficulty 2 would be triggered at 64 shares/min, Diff 4 @ 128, Diff 8 @ 256, etc.
So for you,
(10,000,000,000/4294967296)*60 = ~140 difficulty 1 shares/min
Then divide by 32 to get difficulty ~4.36 for 32 shares/min. Round down to the nearest power of two >= 1, and you get difficulty 4.
Yeah, I expected a calculation like that. Since the hashrate seen by the pool varies, though, you can find yourself straddling a 'border', so to speak, so you keep switching back and forth between two difficulties.
For example, if you are hashing pretty close to exactly 512 shares per minute, you will probably find yourself switching between diff 16 and diff 8 if your shares-per-minute varies from say 495 to 530 spm.
This could be changed such that you need to get to 512 spm to get diff 16, but after that you won't switch back to diff 8 unless you go below some threshold, say 480 spm.
That way you don't oscillate back and forth. This is done in lots of devices you are familiar with, like thermostats, for example. If your furnace was set to keep the temperature at
exactly 70 degrees, it would just turn on and off constantly when the temperature gets to 70 degrees. Hysteresis prevents this.