Commit Graph

95 Commits

Author SHA1 Message Date
Paul Hauner
8677b9e9cc
Fix bug with epoch caches, add tests 2019-03-17 21:07:19 +11:00
Paul Hauner
3a384d93f8
Allow state processing to compile under v0.5.0 2019-03-17 17:47:12 +11:00
Paul Hauner
3b8c1df5da
Fix bug in per block processing. 2019-03-17 12:49:55 +11:00
Paul Hauner
6bd2055a0a
Update block processing to v0.5.0 2019-03-17 12:25:37 +11:00
Paul Hauner
ef86948259
Add bones of YAML state test parsing.
Is incomplete, need to update all our types to v0.5.0 first
2019-03-15 13:32:23 +11:00
Paul Hauner
236b97476a
Marge fixes to test_harness, add serdehex crate 2019-03-15 13:31:30 +11:00
Paul Hauner
96d96ba9ba
Remove assertion in benches 2019-03-14 20:54:30 +11:00
Paul Hauner
4fd8551e8b
Update loglevel, comments in benches 2019-03-14 17:49:39 +11:00
Paul Hauner
2535f47f13
Add builder for benches
Also adds a "sane" case for block processing
2019-03-14 16:44:56 +11:00
Paul Hauner
ed49023b87
Merge branch 'faster-rewards' into sane-case 2019-03-14 16:11:41 +11:00
Paul Hauner
fc0cdb8226
Start building non-worst case benches 2019-03-14 18:10:36 +13:00
Paul Hauner
1c1c15a122
Tidy per epoch processing
- Add comments to ValidatorStatuses
- Add some checks to guard against a bad statuses list
- Remove unused attester_sets.rs file.
2019-03-14 16:00:22 +11:00
Paul Hauner
10aee6214c
Tidy per_epoch_processing
Mainly renaming variables and files for readability.
2019-03-14 14:59:30 +11:00
Paul Hauner
95599ddc66
Update Attesters struct
- Renames variables
- Moves total balance calculation into struct
2019-03-14 12:49:48 +11:00
Paul Hauner
a319144835
Improve crosslink reward processing 2019-03-14 12:17:43 +11:00
Paul Hauner
6f919e6f7d
Add first iteration on faster rewards processing. 2019-03-14 11:53:50 +11:00
Paul Hauner
587be831b5
Add method for dropping pubkey cache. Add bench. 2019-03-13 16:49:32 +11:00
Paul Hauner
6cd3c4bd1a
Add a cache for public keys to BeaconState
This allows for a fast lookup of "is this public key already in the
validator registry".
2019-03-13 16:40:28 +11:00
Paul Hauner
f949919b9b
Add comments to epoch_processing 2019-03-12 18:02:53 +11:00
Paul Hauner
fbfa233d36
Add debug messages to TestingBeaconStateBuilder 2019-03-12 17:16:12 +11:00
Paul Hauner
cce88c9923
Improve DX for loading validator keys from file 2019-03-12 14:39:16 +11:00
Paul Hauner
f34ae86cde
Add support for loading keypairs from file 2019-03-12 12:46:44 +11:00
Paul Hauner
9de6a0c733
Rename benching files 2019-03-12 09:57:00 +11:00
Paul Hauner
e81f1c31c9
Fix proof-of-possession issues.
These were introduced in an earlier commit
2019-03-11 19:47:33 +11:00
Paul Hauner
292991810d
Move state processing benches around 2019-03-11 19:46:22 +11:00
Paul Hauner
36085f63e9
Rename state trans benches 2019-03-11 14:52:21 +11:00
Paul Hauner
0b7082e2b9
Move benching_utils structs into types 2019-03-11 11:17:27 +11:00
Paul Hauner
6ae99a1462
Ensure drop times aren't included in benchmarks
Also moves to the new `iter_batched` method on criterion (instead of
`iter_with_setup`.
2019-03-11 10:56:31 +11:00
Paul Hauner
53456a6c79
Remove last inclusion_slot(..) call 2019-03-10 21:06:40 +11:00
Paul Hauner
21d75ef0bd
Add tree hash benches 2019-03-10 18:31:14 +11:00
Paul Hauner
f27b62d410
Add optimisation for epoch processing 2019-03-10 17:49:06 +11:00
Paul Hauner
9cc8e2598f
Organise epoch benching file 2019-03-10 17:48:26 +11:00
Paul Hauner
89fc386264
Add extra checks for epoch benches finalization 2019-03-10 13:38:57 +11:00
Paul Hauner
c33e299176
Ensure epoch processing benches get new eth1 data 2019-03-10 12:56:37 +11:00
Paul Hauner
3f98849362
Optimise attester slashing processing. 2019-03-10 08:55:45 +11:00
Paul Hauner
e7fba3a473
Process transfers in parallel. 2019-03-10 08:36:49 +11:00
Paul Hauner
1ca99b8c4c
Optimise deposits processing. 2019-03-10 08:33:17 +11:00
Paul Hauner
5f3da0732f
Fix attestations bug in block builder.
It was previously producing too many attestations in some scenarios.
2019-03-10 08:31:40 +11:00
Paul Hauner
90d00773cb
Add slashings back into per-block processing.
I thought they would invalidate the attestations but I was wrong.
2019-03-10 08:30:36 +11:00
Paul Hauner
c1e386a0b1
Add deposits, transfers and exits to benches 2019-03-09 22:10:47 +11:00
Paul Hauner
6250c81bb9
Fix bug in attestation verification
We were ensuring that a validator was present on the aggregation
bitfield before adding their signature to the agg pub
2019-03-09 20:09:17 +11:00
Paul Hauner
62ab782ee2
Add TestingAttestationBuilder 2019-03-09 20:09:02 +11:00
Paul Hauner
f8ec1e0cfa
Add slashings and attestations to per block benching 2019-03-09 18:56:01 +11:00
Paul Hauner
73ebb4bc2e
Add incomplete per-block processing benchmarks
Still needs to fill block with operations
2019-03-09 14:11:49 +11:00
Paul Hauner
ca5d9658ce
Move epoch processing benches into separate file 2019-03-09 10:45:28 +11:00
Paul Hauner
63743a962c
Add per-epoch benchmarks, optimise function. 2019-03-09 10:38:53 +11:00
Paul Hauner
f479beb87e
Implement deposit merkle root verification.
It is currently disabled, but it's there for later.
2019-03-08 09:26:03 +11:00
Paul Hauner
1ef2652cac
Add transfer processing to BeaconChain 2019-03-07 17:23:11 +11:00
Paul Hauner
15e4aabd8a
Add deposit processing, fix clippy lints 2019-03-07 16:15:38 +11:00
Paul Hauner
195cb16a41
Update test_harness for spec v0.4.0 2019-03-07 14:29:21 +11:00