Update Limits & Gas Schedule for FEVM #588
Stebalien
started this conversation in
Enhancements - Technical
Replies: 1 comment 1 reply
-
Thanks for this. I did initially have a comment here, but have removed it as it was based on a mistaken reading. This looks good so far. Can we expect some benchmark results to indicate the likely cost changes for core network operations like WindowPoSt and doing deals? |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Discussion for #573.
With the introduction of user programmable smart contracts, we need to ensure that the gas model accurately reflects the cost of on-chain computation. In the current network, users can only trigger course-grained behaviors by submitting messages to built-in actors. However, with the introduction of FEVM, users will be able to deploy new smart contracts with fine-grained control over FVM execution. If we don't carefully tune the gas model to accurately charge for computation, an attacker could carefully construct a contract to take advantage that and slow down or even stop chain validation.
This FIP proposes a few adjustments to the gas charging schedule. Specifically:
This FIP also introduces overall memory limits. However, these memory limits currently only include Wasm memories and table elements (not IPLD blocks, wasm code, and other metadata).
Additionally, this FIP introduces a maximum block size limit of 1MiB for all newly created IPLD blocks.
Finally, this FIP reduces the maximum recursive call depth limit from 1025 to 1024 to bring it in-line with the initial intentions of this limit and other blockchain VMs.
Beta Was this translation helpful? Give feedback.
All reactions