목적: 실제 문제보다는 추후에 더 높은 TPS를 위한 Parallel VM 연구개발.
- Kaia 코어 분석 - EVM, DB
- Parallel VM 이론 리서치
- 레퍼런스 리서치 - DAG 기반, Lazy Updates
- 모듈 구현 및 테스팅 (성능 측정)
- 카이아 도입 리서치
Ethereum
Data Availability(DA): data needed for transactions and computations on the blockchain is available and can be accessed by nodes.
- Goals: speeds up block syncing and building time.
- how do we speed up the EVM? → execution.
- 기존 EVM: EVM blocks are inherently sequential, so typically transactions are executed sequentially.
- PEVM: pevm allows us to split the task of executing transactions across many CPU cores.
evm chain tx flow.
API backend holds txPool
AddLocal: send tx from user
AddRemote: P2P tx broadcast
다른 이유:
- 트랜잭션 유실을 로컬 파일 시스템(journal)에 저장해서 유실되지 않도록 함.
pending을 miner가 가져와서 Loop로 sequential 블록을 생성.
- vm
global state에 연결되어 있는 상태값에 접근할때 병렬처리를 할 수가 있을까?