I’m trying to understand the performance benefits of running Solidity smart contracts on PVM compared to Ethereum’s EVM, and I’m finding some apparent contradictions in the documentation.
According to the PVM architecture docs:
EVM uses a word size of 256bit. Which means that every arithmetic operation has to be performed on those big numbers. This makes any meaningful number crunching really slow as it has to be translated to a lot of native instructions. PolkaVM uses a word size of 64bit which is natively supported by the underlying hardware. That said, when translating Solidity contracts via YUL (#Revive**) we will still end up with 256bit arithmetic as YUL is too low-level to automatically convert the integer types**.
This suggests that for Solidity contracts, we don’t get the 64-bit word size benefits that PVM offers. The performance advantage would only come from writing contracts in other languages that can leverage native 64-bit operations.
-
Register vs Stack Architecture: Since Solidity contracts on PVM still use 256-bit arithmetic, are there measurable performance gains from PVM’s register-based design compared to EVM’s stack-based approach? There was a relevant discussion about stack vs register architectures, but I’d like to understand the specific benefits for PVM/Solidity.
-
Solidity/PVM vs Ethereum’s EVM: I would like to know what exactly is the performance benefit of Solidity on PVM when compared to Ethereum’s EVM.
-
PVM on Polkadot Hub vs EVM on Ethereum: What are the performance benefits of using PVM/Solidity on Polkadot Hub vs Solidity on Ethereum? I would expect that the underlying chain (Polkadot Hub) and the Ethereum node compute power would also matter and should be accounted for in benchmarking PVM Solidity contracts vs Ethereum’s EVM Solidity contracts.
-
Benchmarks/Metrics: Are there any published benchmarks comparing:
- Identical Solidity contracts running on PVM vs EVM
- Gas costs or execution time comparisons
- Performance metrics for common operations (loops, storage access, arithmetic)