A while ago EOSGo shared the following news update in the r/eos subreddit about CPU shortage. It’s a screenshot from telegram which shows Block.One CTO, Dan Larimer explain how resource exchange will solve the CPU scarcity problem of EOS mainnet. Here’s the update: (if the image is too small, try this url – https://i.redd.it/vmrh5sbd13x11.png )
EOS has been facing some serious CPU issues which are limiting the network usage. The EOS.IO code states in its config file that it is targeting 1000 tps. But in reality, it hasn’t been able to reach that level with a certain degree of stability. Occasionally it fires up to 3000 tps but that doesn’t stay for long. Recently, a research article criticized EOS for not reaching tps goals.
The comments Dan made were somewhat of a response to those concerns. He explained why EOS wasn’t reaching high tps. Since EOS CPU resources are awarded linearly, those with a lot of tokens get lot of CPU which they generally don’t use. This is why the network has a low % CPU utilization but still hits 100% since those who are transecting have only 5% of the staked tokens.
Which means the other 95% CPU resources are not being utilized since they are awarded to users who aren’t transacting. After REX is launched, the users who have unused CPU resource, that is, those EOS holders who have a lot of tokens but aren’t transacting will be able to sell their CPU resources. So, all of those unused CPU resources will enter a free market and will be used.
That will solve the CPU scarcity problem and increase the tps (by at least 5 times). One last thing:
In the original reddit thread where it was posted, a user asked who will consume CPU resources and from where demand for CPU resources will come. The demand to use CPU will come from users who have run out of CPU resources and need more to do more transactions. Let me explain this with an example.
Lets assume that I have 4 EOS staked for CPU on my account. I made 100 transfers today which depleted all the CPU time allocated to me. Now I need to do some more transactions. I can solve this by staking more EOS or renting CPU time from REX. Renting from REX is lot cheaper than staking more EOS. So, what I will do is buy some CPU time from someone else and use that to transact. This is how demand for CPU time is created.
Thanks for reading, if you have any questions about REX, feel free to ask me in the comments. If you liked the article, please consider sharing it in your facebook / twitter timeline.