nimbus-eth2/research
Jacek Sieka 03a147ab8d
avoid state copy in state transition (#930)
In BlockPool, we keep the head state around, so it's trivial to restore
the temporary state there and keep going as if nothing happened.

This solves 3 problems:
* stack space - the state copy on mainnet is huge
* GC scanning - using stack space for state slows down the GC
significantly
* reckless copying - the copy itself takes a long time

In state_sim, we'll do the same and allocate on heap - this helps a
little with GC - without it, the collection of the temporary strings
created with `toHex` while printing the json dominates the trace.
2020-04-26 21:13:33 +02:00
..
fork_choice_rule replace links to Apache and MIT licenses with HTTPS versions (#592) 2019-11-25 16:30:02 +01:00
.gitignore some ignores 2019-03-26 19:41:34 -06:00
serialized_sizes.nim [WIP] Fake bls at runtime (#735) 2020-03-05 13:52:10 +01:00
serialized_sizes.nim.cfg ssz: finish implementation (#42) 2018-12-17 19:03:53 +01:00
state_sim.nim avoid state copy in state transition (#930) 2020-04-26 21:13:33 +02:00
state_sim.nim.cfg add simple wasm page with state simulator (#334) 2020-01-22 15:36:16 +00:00