This repository has been archived by the owner on Nov 6, 2020. It is now read-only.
Performance improvement on Elliptic Curve operations #8235
Labels
M2-config 📂
Chain specifications and node configurations.
M4-core ⛓
Core client code / Rust.
Z1-question 🙋♀️
Issue is a question. Closer should answer.
Milestone
Actual state
I'm working on a application/platform on parity using PoA.
Network: 50 nodes Parity on 1.10.0-beta-0a9d41e
Consensus: PoA, 1s block time, 20M gas
Transactions: All transactions involve huge solidity calculations: zkp using ecmul and ecadd precompiles on alt-bn128 elliptic curve.
Gas per tx: ~200 * ecmul + 150 * ecadd + 1,3 M (= 1,7 M given our genesis)
My current throughput is really slow: ~0.9 TPS, I suspect it's supposed to be quite faster and I need to speed it.
Improvements / Questions / Suggestions
Steps to reproduce
Command to run 1M ecmul (which, I agree, is only a part of the bottleneck but the rest cannot be published yet).
spec.txt
parity-evm stats --gas 1FFFFFFFFFFFF --chain spec.txt --code 7f2bd3e6d0f3b142924f5ca7b49ce5b9d54c4703d7ae5648e61d02268b1a0a9fb76080527f21611ce0a6af85915e2f1d70300909ce2e49dfad4a4619c8390cae66cefdb20460a0527f00000000000000000000000000000000000000000000000011138ce750fa15c260c052620F42405b60406040606060806000600761fffff1506001900380607057
The text was updated successfully, but these errors were encountered: