It took some more time than planned, but I released the new PPLNS Reward system last night. For future changes and updates to the pool I will post release details beforehand. Promised
[Anorak.Tech] ETH Mining Pool uses a PPLNS reward system to calculate the payout rewards of each pool worker. This method guarantees a fair payout of the rewards for long time miners.
What is PPLNS?
Based upon what-is-pplns modified by Anorak.Tech
PPLNS is short for “Pay Per Last N Shares”. The proportional reward system is round based. One round is the time between the first share after the last found block and the share which solves a block. PPLNS however means that we no longer consider valid shares of one round, but we consider a number N of shares, no matter if they’re apart of the round or not. The number N is currently for each blockchain:
(twice the network difficulty)
Let me illustrate PPLNS using the image below. One round has an arbitrary number of shares which is solely based on sheer luck. On proportional reward system only shares of one round are considered for calculating rewards. However with PPLNS, a quite constant number N of shares is considered for calculating rewards. This number N changes only with the difficulty. Please have a look at the image below:
As you know the number of shares needed to solve a block within a round is different. Round one and three needed
( network difficulty * 2 ) shares to be solved. Round two and four are quite short rounds. There were less than
( network difficulty * 2 ) shares necessary to solve them. Round five however is a very long round which means the pool needed more than
( network difficulty * 2 ) shares to solve the block. From this follows that:
- Rounds one and three are like proportional rounds. All of your shares from the given round are considered for reward calculations
- For rounds two and four, shares from the previous rounds are considered for calculations as well (marked green). In other words: regardless of round boundaries we always consider the last
( network difficulty * 2 )shares. Your portion of the amount of shares is used to calculate your reward.
- Round five however is very long. In this round your lowermost shares (within the marked red part) are silently dropped if they are not within the last
( network difficulty * 2 )shares.
Why do we need to switch the reward system at all?
PPLNS favors constant and/or occasional loyal pool members over pool hoppers. As you might have seen, each time we find a ETH block the pools hash-rate peaks instantly. This is due to pool hoppers starting to mine. They are betting for a “quick win” (like round two above) with low shares per round. If the round exceeds a certain amount of shares they “hop” to another proportional pool which started a new round more recently. This assures better rewards for pool hoppers over occasional or constant miners which are loyal to their pool.
Pool hopping however implies that pool hoppers need to know when a round is started and how much shares are considered for reward. This is very easy with proportional reward system. While using PPLNS, this is no longer true. On long rounds (like round five above) the pool hoppers shares won’t be considered for reward calculations in favor of loyal miners.
This is due to the fact that pool hoppers only mine on the beginning of rounds. On short and normal rounds pool hoppers won’t lose their shares. Due to the fact that shares from previous rounds from loyal miners are considered twice (or even more often on extremely short rounds) the pool hopper won’t get the same reward as from proportional reward system.
I’m only an occasional miner. Will I loose shares if playing/being offline?
It depends. Even if you’re a constant miner you’ll lose shares on very long rounds. On the other hand, if you for example stop mining shortly before the end of round three (from the image above) you’ll be rewarded for round three. If you then start mining on the mid of round five you’ll be rewarded a bit for round four (despite the fact you haven’t submitted any shares - as some of your shares from round three are considered for round four as well). You’ll be fully rewarded for round five (you won’t lose any shares as you “skipped” the “red part” of shares which have been cut off due to the length of the round). The point however is no one (and thus the pool hopper as well) knows when a round ends in advance. Thus you deliberately can’t avoid cut offs. Sometimes you’re lucky; sometimes you’re not. This however levels out over the time for non-hoppers. The important point is that you as loyal pool member have an advantage over pool hoppers. Even if you only mine occasionally, such as if you want silence in your mining room for once, you still have an advantage.
Isn’t it that you as pool operator earn more from PPLNS?
Short answer: No. As a pool operator it doesn’t matter at all which reward system is used. I expect rounds to become a bit longer after PPLNS is activated, as the pool hoppers will start to avoid the Pool. Thus revenues for me will be lower. There have been some loyal Pool members who clearly stated that they wanted to get rid of the pool hoppers and I respected their wishes. Furthermore, I’m too an occasional miner on the Pool. I don’t want my miners to be running at night, and from time to time I need them to test new Pool versions on development systems. Thus being a miner like you - I like PPLNS better than proportional. Speaking in regards to being pool operator, there is no difference between the reward systems.
I have been mining for 2 hours now, but my round share is very very low?
Due to the total numbers of N shares, you need quite some time to “ramp up” your Round Share. When you start mining, your total quote of shares will be below the pool average. After total N has made a full shift (adding N new shares to the queue) you gained full distribution and finished the “ramp up”. Depending on the pool hashrate, this will take about 24h.
I have been mining for more than 24 hours now, but why dont I get paid?
Throughout mining at this pool, you collect a proportion of the PPLNS queue based on the amount of shares you send in a given time. This is represented as
Your Current Round Share. The timeframe is limited by the total length of the PPLNS queue
( network difficulty * 2 ). As soon as the pool finds the next block, its reward (3 ETH for the block + transaction fees) will be distributed to all workers with the amount of
( Total Block Reward / 100 ) * Your Current Round Share. So if the pool has bad luck and we have to wait 2 days before we find a block, you wont be paid in 2 days. Keep in mind that your average reward over a month is still equal to other payment systems, as a whole bunch of blocks can drop within minutes aswell. Thus - Averaged.
Thanks to g2x3k/Poolx-eu for PPLNS description