Author

Topic: Question about mining pool difficulty (Read 237 times)

legendary
Activity: 3500
Merit: 2246
🌀 Cosmic Casino
May 01, 2019, 09:47:58 AM
#5
Thank you very much, @VRobb, @philipma1957 and @kano, for such thorough explanations!

Now I understand that the only way of proving that you are performing useful work is sending shares to the pool.

Now, do I understand it correctly that, since the network difficulty is higher than that required for shares, you can also solve the real task in the process, and although it was sent as a share, pool will broadcast it to the network as a mined block?

This pattern significantly reduces the amount of information that needs to be sent to the pool by miners, because they don't need to send all the hashes they make, but only those which are lower than or equal to the pool's target.

I hope I understand it correctly this time.
legendary
Activity: 4634
Merit: 1851
Linux since 1997 RedHat 4
April 30, 2019, 06:47:32 PM
#4
In English Smiley

Lets say everyone on the pool has miner type SuperMiner10 that the pools sets the difficulty to 10,000

When your miner is mining at 10,000 difficulty, it means it sends shares (worth 10,000) to the pool as proof of the amount of work it is doing over the time between submitting each share to the pool.

1 Difficulty is 2^32 hashes or a bit over 4 billion.

A 10,000 difficulty share proves you have done work equivalent of 10,000 x 2^32 hashes
You can't fake it.

So e.g. if you have 2 miners sending 10,000 difficulty shares - then you would send, on average, twice as many shares as another person with only one miner.
Thus when rewards are calculated, you'd expect (on average) to get twice as much reward as the person with only 1 miner.

NOW, if you change the difficulty, it's expected to NOT effect your reward.
The relationship between the difficulty and the expected amount of shares is linear.
If your SuperMiner10 is mining at 20,000 difficulty, it will find (on average) half as many shares over a given time period vs mining at 10,000 difficulty.
So since each share is now worth twice as much, the overall result will be the same - half as many shares worth twice as much.

If your SuperMiner10 is mining at 5,000 difficulty, it will find (on aveage) twice as many shares over a given time period vs mining at 10,000 difficulty.
Again since each share is now worth half as much, the overall result will be the same - twice as many shares worth half as much.

Of course if someone is mining with a SuperMiner20 that hashes twice as fast as the SuperMiner10, then they also expect to get twice the reward.
The pool will set double the difficulty so they find roughly the same number of shares as the slower miner, but each share proves you've done twice the work of the slower miner.

And lastly, before anyone gets some weird idea about trying to earn more by messing around with the difficulty ...
Nope you can't, coz people thought about that long ago and ensured you can't do that with proof of work.

So why do we do this?
Coz the pool has no idea what hash rate your miner is actually doing, but shares do prove what hash rate your miner is doing.
Otherwise a person could mess with their miner and get it to say it is mining at 1000 times faster than it really is.
Again shares do prove what hash rate your miner is doing.

Edit: if you wish to google about that proof - it's called "Proof of Work" or PoW
legendary
Activity: 4326
Merit: 8950
'The right to privacy matters'
April 30, 2019, 05:31:27 PM
#3
a pool can accept shares at 6.36 trillion and above.  this would mean it only takes block winning shares.

if it did that  and was not a solo pool it would not be able to know how much hash you were point at the pool since only 1 share comes in. A block winning one.

so some pools  use 10k to infinity  and count all the ones you sent over 10k

since many shares from 10k to 6.36 billion will show before you go over and hit the block the pool can estimate what you sent to them in hash.

With BTC  I would say 10k and above would be very accurate way to track you hash rate.

But  25k 50k 100k 250k 500k even 1000k  are small enough to track the amount of hash you sent. In most cases it will be accurate since 6.36 trillion is much bigger the any of those numbers.
hero member
Activity: 1610
Merit: 538
I'm in BTC XTC
April 30, 2019, 02:34:22 PM
#2
Well they do, but how does one know what the hashing power is of a particular machine?  It's by the diff of the submitted shares coupled with the time needed to generate said shares.  Higher diff/longer time is eqivalent to lower diff/shorter time.  Hashpower at the pool level is back calculated via diff of shares and time; for the whole Network it is based on solved blocks and time.

HTH, and Mine On!  Cool
legendary
Activity: 3500
Merit: 2246
🌀 Cosmic Casino
April 30, 2019, 10:17:49 AM
#1
Sorry if the answer to my question is too obvious, but I didn't manage to find it on the Internet, so I decided to ask it here.

As known, each mining pool sets its own difficulty, which is lower than that of the network, to award the participants in accordance with the work they are doing.

My question is, Why can't they simply award miners in accordance with the hashing power provided by each of them?

What are the reasons for setting higher targets(=lower difficulties) for miners, and, maybe someone knows, how many such problems solved on average, say, by Antminer S9i within 10 minutes?

I would understand if otherwise it was impossible to control whether a miner was connected to the network all the time, but I'm not sure if that is the case.

Thank you.
Jump to: