How Many Stake Pools?

This post is for discussing how many stake pools will be operational at launch.

For clarity I have attached official material below that supports this discussion.

If you have other material that should appear in this masthead, please let me know, and I will add them to this list.

Context:

2018-08-06 Charles Hoskinson, pscp.tv Cardano Update
Time 08:32 - 08:47
Our hope is to have lots of stake pools, in fact, the latest number we’ve been batting around is over one-thousand, and our hope is to try and make the protocol as decentralized as possible, and as efficient as possible, and we’re really happy about the overall design.

staking.cardano.org
Configuration of stake pools

For maximal efficiency and security, a solid majority of stake (about 80%) should be delegated to a number of stake pools (about 100 seems to be a reasonable number).

The stake pools should be online when needed, and they should provide relay nodes, which are additional network infrastructure. The remaining proportion of stake (about 20%) should belong to “small” stakeholders, who can decide to either participate in the protocol on their own or to simply do nothing.

Reward Sharing Schemes for Stake Pools pdf
P.5
Our objective is to have a given number of equal-weight coalitions, which contrasts with the typical question in cooperative game theory on how the values of the coalitions are distributed (e.g., core or Shapley value) in such a way that the grand coalition is stable [18].

P.7
It should be clear that for appropriate values of the parameters, there is incentive for the stake holders to form pools so that they can share the cost. Ideally, we want to find a reward function that, at equilibrium, it leads to the creation of the desired number of almost equal-stake pools independently of (i) number of players (ii) the distribution of stake and costs (iii) the degree of concurrency in selecting a strategy (iv) more forward-looking play, that is, non-myopic play as opposed to best-response.

P.8
For example, a player who considers creating a new pool can estimate how much stake he can attract, given the current distribution of stakes and pools.
This seems like an impossible task7, so we have to settle for solutions that achieve the above goals approximately under some natural assumptions about the distribution of stake and costs and about the equilibria selection dynamics.

In simple terms, the reward function r essentially has to satisfy two properties: it should be increasing fast for small values to incentivize players to join together in pools to share the cost, and it should be constant for large values to discourage the creation of large pools or equivalently to incentivize the breakup of large pools into smaller pools.

P.19
By induction on the number of the pools to which j allocates stake, we can prove in the same way that j ’s utility will not increase if he dissolves his pool.
Note that the number of pools to which j allocates stake does not have an impact on desirability and ranking of the pools, because in all cases (i) there exist k − 1 active pools with positive desirability (j has dissolved his own pool) and (ii) desirability, which determines ranking, does not depend on pool size.

P.21
Note that the ranking of the pools also does not change in this case, because the desirability does not depend on pool size and the number of the active pools remains the same.

7 Likes

Right off we have a large range to deal with, is it 1,000 or 100?

  • 1,000 from 2018-08-06 Charles Hoskinson, pscp Cardano Update
  • Or “about 100 seems to be a reasonable number” as staking Cardano has on its page?

(2018-09-20 edit as per @werkof post below)
If I set the percent staked at 80% (estimating), that is approximately 25,000,000,000 Ada staked.

Setting all pools at equal weight, the quantity of Ada distribution:
Qty of Pools
   100 = 1%    250,000,000 Ada
1,000 = 0.1%   25,000,000 Ada

1 Like

I’d go with the latest estimate—1000.

6 Likes

I believe they mentioned in one of the videos, that the number of stakepools will be increased gradually, so I can imagine they’d start with 100 and increase it to 1000 over time.

1 Like

Makes sense; in one of the AMAs Charles also mentioned that stake pools are optional for launching Shelly. He mentioned that at present most networks are working with even 21 pools.

So I guess that removes dependency on price of ADA for launching Shelly. The decentralization aspect can be scaled gradually without affecting monetary expansion.

If buying power of ADA remains low until Q1 2019, the three founders CF, IOHK, and EMURGO can maintain stake pools on the same infrastructure they host at present and have cost=0 and margin=0 initially. That will be the “training wheels on” analogy for Shelly.

Good summary of different sources.
But why estimate only 51% of supply being staked?
I would say this is the absolute minimum that we should have, and the whole incentives paper points to possibly have much more.

Probably just to be conservative to estimate minimum rewards for those of us seriously thinking about this. At least that is how I saw it. With that logic I’d go with the 1000 pools also.

Thank you for pulling all that information together BTW!

2 Likes

It would be hard to find 1000 reliable persons willing to run and support software. Not even speaking about teams …

I don’t think that would be that hard if the incentives are there.

1 Like

If you recall which video, a gradual build up, was in let me know.

Does anyone else think this?

Agreed, should have more than 51% staked, I choose 51% as a minimum, creating a base to build up.
Changed to 80% to better reflect Cardano’s goal.

Interesting, so you are using the 1,000 pool figure to calculate pools minimal viability, nice.

I did some back of the napkin calculations on this:
1,000 pools running at 5% fee is around 27,500 ADA Yearly
100 pools running at 5% fee is around 278,000 ADA Yearly

Huge difference in viability.


The simple formula I use to work out Ada pool incentives:

  • 5,560,000 Ada for every 1% step in pool fees
  • Divided by the number of pools, assuming equilibrium between all pools.

Example:
5,560,000 / 100 pools = 55,600 Ada at 1%

For higher pool fees just multiply by new pool fee:
5% pool fee:
5 x 55,600 = 278,000 Ada


2018-09-27
Somehow I missed @vantuz-subhuman great Cardano Calculator, screenshot below, supports my back of napkin calculator:

Note, “Your stake (in coins)” is being used as pool stake here, thus working with 1,000 equally sized pools.



Seeing Cardano's PoS will require pool operators to post the cost of running their server(s), the question becomes how many pools can you handle and still be viable?

Disclosure, our nodes cost us $300.00 USD a month, not including egress bandwidth.

5 Likes

Can you elaborate on this a little bit? I have been trying to get info on real costs, configuration, etc for running a stake pool but the folks who know their stuff have been cryptic. You are the first one to put a number on this. Thanks being open about it!

I suppose some people would be ok running a pool with deficit as long as they build up reputation. Think of it as early investment. The smart ones would probably HODL their rewards to realize their gains rather that capture losses immediately.

Sure it would be cheaper to buy ADA on the market but running a pool gives you visibility and business continuity when things actually pick up.

To your point, ADA would have to go up to roughly 0.13 to cover your server costs (excluding bandwidth). It’s not too far away a target for crypto…

Our infrastructure costs will be an outlier, higher than most as we are running on our own equipment.

Nodes will run on Atom C3000 series processors, specifically, Supermicro A2SDi-16C-HLN4F mITX motherboards for all their computation, memory (128G) and power savings capabilities.

We run on the ZFS filesystem, mirrored, on Intel Optane NVMe drives.

For DDoS protection a Corero server sits in front doing its job.

We want to control the boot on up, almost everyone else will be running on a virtualization platform LXC or KVM, which comes at significantly lower costs Cardano is currently running on Amazon so there’s that.

There are a lot of virtualization providers, some of them are very good, if I was to pick one it would probably be UpCloud.com or Joyent.com (I have no affiliation with them)

Looking at UpCloud pricing, you could deploy a node for 40USD a month; I picked the 8G memory plan which gives Cardano SL breathing room.

In Cardano’s Reward Sharing Schemes for Stake Pools:
“a desirable property is that the formed pools have are efficient in terms of cost and they are of similar size.”

Seeing that similar sized pools operate at alike costs, I could be out of business before Cardno runs decentralized.

Side note, the “whales” I know use pool fee against their holding as a measure if they should operate a pool or not.

7 Likes

Thank you for providing a detailed answer.

I like the idea of a $40/month pool infrastructure. It would force everyone to converge to lower pool fees, all else equal. It would be less than 1%, which has been my estimate.

Shouldn’t whales be able to solo stake? Why bother setting up a pool if you can “fill it up” with your own ADA?

What do you know about solo staking? My sense is participants should be able to solo stake from a laptop using nothing but Daedalus.

1 Like

Afaik, if nothing has changed since I last checked the code, Daedalus is an Edge node and you won’t be able to solo stake by using it.

Yes, I should have added private staking to the mix.

Regarding solo staking, I’m almost positive solo staking will be possible. I want solo staking for all the liberty reasons, on the flip side I’m not for it as it has the potential to slow Cardano down.

As @_ilap pointed out Daedalus is not capable of operating as a full node, think relay nodes.

1 Like

@Jotunn Does your cost also include relay nodes that may be required as accompanying service to stake pools? I know there’s nothing specifically in writing about that - but I am sure I have heard Charles mention that in a couple AMAs / updates.

Also, SL may not be the only chain to store data for. From the side-chain presentation it looks like there will be 4 side-chains. Additionally, there may be an Oracle service node as well. So the storage requirement may not be trivial.

How do you think solo staking would look like? They keep mentioning that around 20% of Ada could be solo staked, but I don’t see how…

I would have guessed they would make it easy to set up, that’s why I brought up Daedalus.

I hope they will put in place some minimum requirements (bandwidth, uptime, storage, etc) for solo staking to avoid slowing down the network.

If solo stakers continually fail to meet them, their stake would be ignored.

E.g. Big stakeholders can decide to have their own infrastructure for staking, meaning by that that the operation costs are smaller than the rewards.

One requirement is that the slot leaders (selected stakeholders) must be online 24/7 and not for just creating a block when the time arrives, but for securing the network and optionally participate in leader selection and voting on updates. I am not sure abt the current settings and the parameters might have changed (stake requirement for participating in MPC/SSC and update voting), so I could be wrong.

Daedalus is a full node, which validates the blocks and transactions, but cannot participate in block creation, slot leader selection (coin tossing) and voting on updates.

4 Likes