| Workload | Result |
|---|---|
| Euler V2 on Ethereum | Portal: 1,819 s; stock Ponder over RPC: 6,543 s; 3.6x faster |
| Euler V2 across 15 chains | 28,405,932 events in 51m 47s |
Single-chain comparison
The Ethereum comparison covered blocks20,529,207 through 25,436,954 on the same host and store backend. The Portal run and the stock RPC run were measured one after the other. Both spent most of their time fetching data, and the stock RPC run made 576,207 metered JSON-RPC requests.
This was one comparison, not an average across repeated runs. The ratio reflects the Portal dataset and metered RPC endpoint used for the test. See the repository’s benchmark report for the full conditions.
Multichain run
The 15-chain run used:- a 16 GB memory limit and a 2-core CPU quota, with about one core of actual indexer work
- a separate Postgres 16 database
- dedicated Portal capacity
- a fixed finalized head and local snapshots for the 90 startup RPC responses
Correctness evidence
The repository validates the Portal path at several levels:- The full-history Ethereum validation cell compares Portal and stock RPC sync-store rows for logs, transactions, receipts, traces, and blocks.
- The 15-chain run matched its frozen reference on all 62 complete-range aggregate cells, including per-chain log counts and ranges plus whole-store block and transaction totals. This is aggregate parity, not a row-by-row comparison of the entire 15-chain store.
- Kill-and-resume tests compare an interrupted backfill with an uninterrupted baseline.
- Source-specific validation cells cover receipts, traces, dataset column gaps, and failure behavior across multiple EVM networks.
VALIDATION.md for the current status before applying a result to another network, range, source type, or package version.
The package tracks active Ponder development. Treat the repository reports as the source of truth when a new release changes the tested version or implementation.