Commit Graph

1609 Commits

Author SHA1 Message Date
Paul Hauner
7108d057fb
Set BeaconState to process deposits in parallel
Provides a large speed improvement.
2019-02-28 23:09:21 +11:00
Paul Hauner
073be906da
Remove cache operations from epoch processing.
- Don't build the next cache at all.
- Call `advance_caches()` in per-slot processing.
2019-02-28 16:37:12 +11:00
Age Manning
19a64f906e
Initial beacon node setup.
- Add network crate.
- Add sync crate.
- Add version crate.
- Add lighthouse configuration.
- Add network configuration.
2019-02-28 10:29:28 +11:00
Age Manning
ed032dddea
Merge pull request #261 from sigp/epoch-benches
Move epoch benches to 16k validators
2019-02-27 12:39:31 +11:00
Age Manning
274458d41e
Merge pull request #260 from sigp/shuffle-bench
Add benchmarks to shuffling crates
2019-02-27 12:37:30 +11:00
Paul Hauner
04f179243e
Fix type in BeaconStateBuilder comments 2019-02-26 22:35:51 +13:00
Paul Hauner
c2fb095759
Add docstrings to BeaconStateBuilder 2019-02-26 22:34:41 +13:00
Paul Hauner
3ff8f6ebb3
Update epoch trans. tests to us 16,384 validators 2019-02-26 22:25:29 +13:00
Paul Hauner
af17fb1d03
Update BeaconStateBuilder API 2019-02-26 22:00:07 +13:00
Paul Hauner
5cfc9cb21d
Test state processing with and w/o caches 2019-02-26 20:18:59 +13:00
Paul Hauner
931da13545
Add drop_cache fn to BeaconState
Permits clearing an epoch cache.
2019-02-26 20:18:20 +13:00
Paul Hauner
f82c4268e2
Split BeaconState::genesis into two functions
This allows us to build a genesis state without inducting all the
validators. This will be a signigicant speed up for tests as we can
avoid generating keypairs and checking proof-of-possessions.
2019-02-26 20:16:14 +13:00
Paul Hauner
a8ebc0e19c
Add benchmarks for fisher_yates_shuffle 2019-02-26 19:32:32 +13:00
Paul Hauner
0fe3a81c9e
Add benches to swap_or_not_shuffle 2019-02-26 19:30:51 +13:00
Age Manning
d140563545
Merge pull request #259 from sigp/bench-epoch-trans
Add benching and test for epoch processing
2019-02-26 16:43:24 +11:00
Paul Hauner
65d303c500
Fix failing tests 2019-02-26 17:20:43 +13:00
Paul Hauner
e97b554485
Run rustfmt 2019-02-26 16:50:04 +13:00
Paul Hauner
9f846eda26
Fix clippy lint 2019-02-26 16:49:17 +13:00
Paul Hauner
906131f882
Add tests and benches for epoch processing 2019-02-26 16:27:42 +13:00
Paul Hauner
53663e54b5
Fix error with get_permutated_index.
Error types were modified. Error involved shuffling with the _value_of
active validator indicies, not an _index_.
2019-02-26 16:26:06 +13:00
Paul Hauner
59d6b1fdd0
Move BeaconStateBuilder out of test mods
This allows it to be accessed by other crates/tests.
2019-02-26 16:25:08 +13:00
Paul Hauner
45c6e0395f
Merge pull request #250 from thojest/lighthouse-246
Lighthouse 246 - Create derive macro for TestRandom
2019-02-26 15:14:48 +13:00
thojest
6e8fc1b6d0 resolved merge conflicts due to Treehash macro implementation (lighthouse-246) 2019-02-25 23:20:24 +01:00
Paul Hauner
87ea95ce35
Merge pull request #251 from mjkeating/tree_hash_macro
Use Hashtree macro for most struct types
2019-02-26 09:14:37 +13:00
mjkeating
c688e37693 merged master 2019-02-25 09:46:49 -08:00
mjkeating
d7184345b8 renamed the macro Hashtree to TreeHash 2019-02-25 09:17:17 -08:00
thojest
9a892bbdfd removed TestRandom import in beacon_state (lighthouse-246) 2019-02-25 09:26:43 +01:00
thojest
cd4346962a Merge branch 'master' into lighthouse-246 2019-02-25 09:24:47 +01:00
Paul Hauner
26827c60a3
Merge pull request #240 from sigp/signature-scheme-update
Signature scheme update
2019-02-25 20:56:26 +13:00
mjkeating
2ce316235f merged master and resolved beacon_state conflict 2019-02-24 16:54:26 -08:00
Kirk Baird
3ae7d24d17 Merge branch 'master' into ssz-fuzzing 2019-02-25 10:49:51 +11:00
Kirk Baird
4c3b0a6575
Formatting 2019-02-25 10:38:04 +11:00
Kirk Baird
f72b45147a
Merge conflicts from master 2019-02-25 10:36:54 +11:00
Paul Hauner
548d768b02
Merge pull request #249 from sigp/beacon-state-caching
State caching as a first-class citizen
2019-02-25 08:35:36 +13:00
Age Manning
27e7bbd72f
Fix typo in BeaconState
Co-Authored-By: paulhauner <paul@paulhauner.com>
2019-02-25 08:35:21 +13:00
Paul Hauner
5ca7c9929a
Merge branch 'master' into beacon-state-caching 2019-02-24 19:14:05 +13:00
Paul Hauner
ab10cbbdb5
Fix clippy lints, small typos 2019-02-24 18:52:12 +13:00
Paul Hauner
c49f425fe8
Tidy, add comments to BeaconState 2019-02-24 18:25:17 +13:00
Paul Hauner
779b6266a5
Ensure shuffling is cached between slot calcs
Previously it was being re-built for every slot, now it is being
generated once-per-epoch.
2019-02-23 18:45:32 +13:00
Kirk Baird
9f9b466f95
Modify attestion_aggregation to use frok version in domain 2019-02-23 14:39:54 +11:00
Kirk Baird
a5cbda0b60 Merge branch 'master' into signature-scheme-update 2019-02-23 13:34:57 +11:00
mjkeating
f95a0134e6 now using the Hashtree macro for most struct types 2019-02-22 13:07:04 -08:00
thojest
66b5accdc2 replaced manual TestRandom implementation with macro when possible; fixed typo in TestRandom macro (lighthouse-246) 2019-02-22 17:10:26 +01:00
thojest
278b41c8ef decided against moving test_utils (lighthouse-246) 2019-02-22 16:05:52 +01:00
thojest
7a382043e1 added test_random_derive implementation (lighthouse-246) 2019-02-22 15:54:18 +01:00
thojest
5f3ba42b97 added first draft for lib-crates for test_random and test_random_derive (lighthouse-246) 2019-02-22 12:16:11 +01:00
Kirk Baird
ab1dc7bfce
Add simple fuzz tests for hashing and boolean-bitfield 2019-02-22 16:50:14 +11:00
Paul Hauner
7a28893bab
Fix bug in Epoch.slot_iter()
It wasn't running the whole range, plus it could get into a loop when
used near the u64::max_value
2019-02-22 18:48:35 +13:00
Paul Hauner
89ab0f683e
Change "few_validators" spec to be 8 shards.
A bug arises when the number of shards is less than the slots in an
epoch.
2019-02-22 18:19:47 +13:00
Paul Hauner
a5de6a1915
Add caching to BeaconState.
Removes CachingBeaconState
2019-02-22 18:14:16 +13:00