nimbus-eth2/beacon_chain/spec/eth2_apis
Jacek Sieka 7501f10587
60% state replay speedup (#4434)
* 60% state replay speedup

* don't use HashList for epoch participation - in addition to the code
currently clearing the caches several times redundantly, clearing has to
be done each block nullifying the benefit (35%)
* introduce active balance cache - computing it is slow due to cache
unfriendliness in the random access pattern and bounds checking and we
do it for every block - this cache follows the same update pattern as
the active validator index cache (20%)
* avoid recomputing base reward several times per attestation (5%)

Applying 1024 blocks goes from 20s to ~8s on my laptop - these kinds of
requests happen on historical REST queries but also whenever there's a
reorg.

* fix test and diffs
2022-12-19 14:01:49 +02:00
..
dynamic_fee_recipients.nim Reduce fee recipient log spam (#4255) 2022-10-25 14:47:43 +02:00
eth2_rest_serialization.nim 60% state replay speedup (#4434) 2022-12-19 14:01:49 +02:00
rest_beacon_calls.nim Support for obtaining deposit snapshots during trustedNodeSync (#4303) 2022-12-07 12:24:51 +02:00
rest_beacon_client.nim compatibility with Nim 1.4+ (#3888) 2022-07-29 10:53:42 +00:00
rest_common.nim deprecate --terminal-total-difficulty-override; remove launch script for deprecated ropsten (#4241) 2022-10-24 23:32:52 +03:00
rest_config_calls.nim compatibility with Nim 1.4+ (#3888) 2022-07-29 10:53:42 +00:00
rest_debug_calls.nim nicer error message for failed backfill (#4188) 2022-09-29 23:55:18 +03:00
rest_keymanager_calls.nim compatibility with Nim 1.4+ (#3888) 2022-07-29 10:53:42 +00:00
rest_keymanager_types.nim EIP4844 tweaks to pass SSZ consensus object tests (#4390) 2022-12-05 21:36:53 +00:00
rest_nimbus_calls.nim VC: doppelganger protection (#3877) 2022-07-21 19:54:07 +03:00
rest_node_calls.nim compatibility with Nim 1.4+ (#3888) 2022-07-29 10:53:42 +00:00
rest_remote_signer_calls.nim deprecate --terminal-total-difficulty-override; remove launch script for deprecated ropsten (#4241) 2022-10-24 23:32:52 +03:00
rest_types.nim update EF consensus spec URLs from v1.3.0-alpha.1 to v1.3.0-alpha.2 (#4432) 2022-12-15 12:15:12 +00:00
rest_validator_calls.nim Implementation for REST /eth/v1/validator/liveness/{epoch} endpoint. (#4381) 2022-12-06 12:29:00 +01:00