lighthouse/lcli/src
Michael Sproul cc4b778b1f Inline safe_arith methods (#3229)
## Proposed Changes

Speed up epoch processing by around 10% by inlining methods from the `safe_arith` crate.

The Rust standard library uses `#[inline]` for the `checked_` functions that we're wrapping, so it makes sense for us to inline them too.

## Additional Info

I conducted a brief statistical test on the block at slot [3858336](https://beaconcha.in/block/3858336) applied to the state at slot 3858335, which requires an epoch transition. The command used for testing was:

```
lcli transition-blocks --testnet-dir ./common/eth2_network_config/built_in_network_configs/mainnet --no-signature-verification state.ssz block.ssz output.ssz
``` 

The testing found that inlining reduced the epoch transition time from 398ms to 359ms, a reduction of 9.77%, which was found to be statistically significant with a two-tailed t-test (p < 0.01). Data and intermediate calculations can be found here: https://docs.google.com/spreadsheets/d/1tlf3eFjz3dcXeb9XVOn21953uYpc9RdQapPtcHGH1PY
2022-05-31 06:09:12 +00:00
..
change_genesis_time.rs Altair consensus changes and refactors (#2279) 2021-07-09 06:15:32 +00:00
check_deposit_data.rs Update testnet tooling (#1001) 2020-04-19 02:20:43 +00:00
create_payload_header.rs Rename random to prev_randao (#3040) 2022-03-03 02:10:57 +00:00
deploy_deposit_contract.rs Fix local testnet scripts (#2229) 2021-03-30 05:17:58 +00:00
eth1_genesis.rs Altair consensus changes and refactors (#2279) 2021-07-09 06:15:32 +00:00
generate_bootnode_enr.rs Additional networking metrics (#2549) 2021-12-22 06:17:14 +00:00
indexed_attestations.rs Add lcli indexed-attestations (#3221) 2022-05-31 06:09:08 +00:00
insecure_validators.rs Fix local testnet scripts (#2229) 2021-03-30 05:17:58 +00:00
interop_genesis.rs v1.1.1 spec updates (#2684) 2021-12-02 14:26:54 +11:00
main.rs Inline safe_arith methods (#3229) 2022-05-31 06:09:12 +00:00
new_testnet.rs Retrospective invalidation of exec. payloads for opt. sync (#2837) 2022-02-28 22:07:48 +00:00
parse_ssz.rs Add merge objects to lcli parse-ssz subcommand (#3119) 2022-03-25 14:32:33 +00:00
replace_state_pubkeys.rs Update lcli pubkey replace command (#2677) 2021-12-02 14:26:53 +11:00
skip_slots.rs Altair consensus changes and refactors (#2279) 2021-07-09 06:15:32 +00:00
transition_blocks.rs Inline safe_arith methods (#3229) 2022-05-31 06:09:12 +00:00