nimbus-eth2/beacon_chain/spec
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
..
datatypes 60% state replay speedup (#4434) 2022-12-19 14:01:49 +02:00
eth2_apis 60% state replay speedup (#4434) 2022-12-19 14:01:49 +02:00
mev VC: blinded block publishing support (#4332) 2022-11-24 09:14:05 +00:00
presets 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
beacon_time.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
beaconstate.nim 60% state replay speedup (#4434) 2022-12-19 14:01:49 +02:00
block_id.nim compatibility with Nim 1.4+ (#3888) 2022-07-29 10:53:42 +00:00
crypto.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
deposit_snapshots.nim eip4844 block/slot sanity and transition tests (#4399) 2022-12-08 02:07:41 +00:00
digest.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
engine_authentication.nim eip4844 light client tests; avoid case object out-of-bound array reads (#4404) 2022-12-08 17:21:53 +01:00
english_word_list.txt Bump testutils 2020-06-01 16:58:28 +03:00
eth2_merkleization.nim Support for obtaining deposit snapshots during trustedNodeSync (#4303) 2022-12-07 12:24:51 +02:00
eth2_ssz_serialization.nim EIP4844 tweaks to pass SSZ consensus object tests (#4390) 2022-12-05 21:36:53 +00:00
forks.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
helpers.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
keystore.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
light_client_sync.nim rename `BlockError` -> `VerifierError` (#4310) 2022-11-10 17:40:27 +00:00
network.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
presets.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
signatures.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
signatures_batch.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
ssz_codec.nim 60% state replay speedup (#4434) 2022-12-19 14:01:49 +02:00
state_transition.nim 60% state replay speedup (#4434) 2022-12-19 14:01:49 +02:00
state_transition_block.nim consolidate consensus spec transition test fixtures (#4428) 2022-12-15 22:51:04 +00:00
state_transition_epoch.nim 60% state replay speedup (#4434) 2022-12-19 14:01:49 +02:00
validator.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
weak_subjectivity.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