Committee Proposal 83

TRON Core Devs
TRON
Published in
5 min readFeb 5, 2023

Committee proposal 83 is a voting request for modifying the №72, №73, №74, №75 network parameters, activating the dynamic energy model. The №83 committee proposal is already in effect, please refer to here, this post is dedicated to provide more details and make it clearer.

Why need to implement the dynamic energy model?

At present, the energy consumption distribution of smart contracts is not balanced on the TRON network, most of the resource consumption on the TRON network is concentrated in top 5 contracts as shown in the figure below.

Figure 1 - Energy consumption of smart contracts for each maintenance period in the past 6 months
Figure 1 — Energy consumption of contracts on the TRON network for each cycle in the past 6 months

The energy is mainly occupied by popular contracts, and it is difficult for other dApps to obtain resource with low cost to grow.

Meanwhile, according to the statistical data of low-value transactions on the TRON network in the last month listed below. On average, about 31% of the popular contracts transactions are low-value transactions.

Figure 2 — Low-value smart contract transaction ratio

If this situation continues, not only will it affect the user experience, but it will also make it difficult for other dApps to grow. The capacity of the network is limited, when the network is filled with a large number of queued low-value transactions, other transactions will have to wait longer, which is harmful for the users and the dApps ecosystem.

Therefore, it is necessary to introduce the dynamic energy model, which increases low-value transaction cost without affecting other dApps. Furthermore, it is expected to help the TRON network achieve self-balancing of energy supply and consumption, while ensuring the robustness, diversity, and balanced development of the ecosystem.

Energy consumption analysis of the dynamic energy model

The dynamic energy model is to dynamically adjust the future energy consumption of the contract based on the known energy usage of the contract. And the proposed parameters are as follows,

  • ALLOW_DYNAMIC_ENERGY = 1
    Set the №72 network parameter to 1, open the dynamic resource model
  • DYNAMIC_ENERGY_THRESHOLD = 3000000000
    The №73 network parameter, set the threshold parameter in the dynamic energy model to 3 billion, which means that if the basic energy consumption of popular contracts exceeds 3 billion in a maintenance period, the contract will increase a certain percentage of additional energy consumption in the next maintenance period.
  • DYNAMIC_ENERGY_INCREASE_FACTOR = 2000
    The №74 network parameter, the precision is 10000, the increase_factor parameter in the dynamic energy model is set to 0.2. When the energy consumed by popular contracts in one maintenance period exceeds the threshold, the energy_factor variable of the contract in the next maintenance period is increased by 20%
  • DYNAMIC_ENERGY_MAX_FACTOR = 12000
    The №75 network parameter, the precision is 10000, set the max_factor parameter in the dynamic energy model to 1.2, max_factor is the maximum value of the energy_factor variable of the contract. This means that no matter how many maintenance periods the energy consumption of popular contracts exceeds the threshold continuously, the maximum energy_factor will only increase up to 120%

For more details on the dynamic energy model, please check:Introduction to Dynamic Energy Model.

The dynamic energy model has set the energy consumption threshold parameter to 3 billion in a single maintenance time interval. If the energy dconsumption of popular contracts exceeds the threshold in a maintenance time interval, then in the next interval, calling these contracts will increase a certain percentage of additional energy consumption.

And the max_factor parameter is set to 1.2, that means if the energy_factor of popular contracts continues to increase after maintenance time intervals, as the energy consumption exceeds the threshold value in all these intervals, the maximum energy consumption of calling these contracts is 2.2 times the basic energy consumption.

Then if the energy_factor of a popular contract is greater than 0, and in one single maintenance time interval, the energy consumption of this contract decreases to lower than threshold value, then in the next interval, calling this contract will decrease a certain percentage of additional energy consumption. And if the energy consumption remains lower than threshold value in continuous intervals, the energy_factor will gradually decrease until it reaches 0.

The cost of transactions on the TRON network analysis after the dynamic energy model takes effect

When the dynamic energy model is enabled, the cost of popular TRC20 token transactions will increase. The comparison between the dynamic energy model enabled TRC20 token transaction cost on TRON and ERC20 token transaction cost on Ethereum is shown as follows.

Figure 3 — Comparison of transaction cost on Ethereum and on the TRON network

After the dynamic energy model takes effect, even the cost of the most popular TRC20 token transfer on the TRON network is still lower than that of the ERC20 token transaction on Ethereum based on the calculation of relative low gas price in recent 2 years.

How to adapt to this proposal?

After the proposal takes effect, most of the smart contracts would not be impacted, only the energy consumption of calling a few popular smart contracts that exceed the threshold would increase, and it will increase to 2.2 times the current energy consumption at most.

Make feelimit adaptation to ensure that the dApps can operate normally after the proposal takes effect. For estimating energy consumption and feelimit setting, please refer to the related chapter of the article.

It is recommended that developers and users stake TRX to obtain free energy to reduce costs, staking TRX for resources is still the best option for developers and users.

Summary

The dynamic energy model will increase the cost of calling popular smart contracts without influencing other dApps, making the allocation of energy resources on the chain more reasonable, ensuring the robustness and balanced development of the ecosystem. It is also expected to help the TRON network achieve self-balancing of energy supply and consumption, making room for future reductions in energy unit prices.

--

--