User Tools

Site Tools


poolinfo:dashboard:pool-diff

What is pool difficulty and how is it calculated?

In understanding how pool difficulty works, it is important to recap how points work.

Points

Points represent the amount of farming that a farmer has done. It is calculated by number of proofs submitted, weighted by difficulty. One k32 farms 10 points per day (on average). To accumulate 1000 points you need 10 TiB farming for a day.

Difficulty

As difficulty goes up, a farmer does less lookups and finds less proofs, but does not receive any more or any less points per unit of time. This means that obtaining 10 proofs a day with difficulty 1 for a k32, is equivalent to obtaining 1 proof a day with difficulty 10.

So, does my difficulty matter?

For farmers it should not matter what difficulty is set, as long as they are consistently submitting partials. This last bit matters specifically when you are still in the plotting phase, as stress to your system may cause the consistency of your partial submissions (see below).

Pool operators prefer a higher difficulty, as this results in less traffic to their servers.

Calculating pool difficulty

Setting the right difficulty thus becomes a balancing act between maintaining a high enough frequency of submitting partials for farmers and keeping the amount of pings to our server manageable. This balancing act currently aims to set each farmer’s difficulty level so that they send partials every 5 minutes, and the algorithm checks your last 30 partials (around 2.5h of activity) to adjust for this.

Set your own difficulty

We offer farmers the possibilty to change their pool difficulty. If your system is under high stress from plotting resulting in many stale or invalid submissions, a high difficulty level will punish you extra hard. And if you want to reduce CPU usage to save on electricity, you can set your partial timing higher.

Changing you pool difficulty can be done through the Dashboard. Under the “Settings” tab, you will find a dropdown where you can choose three alternative difficulty calculators:

  • Partial per x minutes
  • Partial per x minutes (TripleM999's version)
  • Fixed difficulty

Choose which one you like best. Keep in mind you may only switch your settings once every hour.

Partial per x minutes

what chia vanilla difficulty algorithm does:

  1. if time between current and last partial is more than 3h, drop difficulty to 1/5
  2. if time between current and last partial is more than 1h, drop difficulty to 2/3
  3. calculate new difficulty so, that time between partials is the wanted time, based on given number of partials and their actual timeframe

Partial per x minutes (TripleM999's version)

  1. calculate a target difficulty so, that time between partials is the wanted time, based on given number of partials and their actual timeframe
  2. new difficulty is the rounded arithmetic median of current and target diff, or round((curr_diff + target_diff) / 2)

Fixed difficulty

Sets a fixed difficulty level. Simple.

poolinfo/dashboard/pool-diff.txt · Last modified: 2021/09/21 14:22 by vleesbanaan