Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: v1.15.0 release #6347

Merged
merged 34 commits into from
Jan 29, 2024
Merged

chore: v1.15.0 release #6347

merged 34 commits into from
Jan 29, 2024

Conversation

philknows
Copy link
Member

Motivation

New release for Sepolia/Holesky Forks.
Superseeds #6346 to ensure merging into proper stable branch.

nflaig and others added 30 commits January 13, 2024 05:50
* docs: update networking page

* Update wordlist

* Update port description

* must instead of should

* Apply feedback

Co-authored-by: Matthew Keil <[email protected]>

* Why on startup, who cares

* Add log exmaple

---------

Co-authored-by: Matthew Keil <[email protected]>
* fix: do not download known block by root

* fix: handle PreDeneb for SeenGossipBlockInput
* Migrate spec-test-utils and spec tests to vitest

* Fix build check

* Fix export path

* Add config file

* Fix spec tests

* Fix the duplicate package script

* Fix spec tests

* Fix lint errors

* Update the spec tests runner tasks

* Fix the import for a spec test

* Fix the import for a spec test

* Fix spec tests

* Update the task runner

* Run spec test in fork not threads

* Fix the config file path

* Fix validator spec tests

* Fix e2e tests

* Make the validator spec tests run in parallel

* Update the spec test runner options
…es (#6295)

* Change docs nav titles and include vc config

* Rename and re-include config with builder boost

* refactor builderboostFactor from comments

* add clarification to maxprofit

* clarification on intro

Co-authored-by: Nico Flaig <[email protected]>

* address additional comments

* Remove redundancies in navigation menu

* Just formatting changes

* Update wordlist

* Use term "beacon node", more consistent with text above

* Apply some feedback from Gajinder

* fix builder boost factor math example

* Use integer value in Example 1

* Update executiononly description

---------

Co-authored-by: Nico Flaig <[email protected]>
* Migrate validator tests to vitest

* Increase hook timeout for e2e test
* wip

* chore: update discv5 and enr

* chore: bump dependencies

* chore: fix import statement

* chore: update libp2p dependencies

* chore: yarn.lock cleanup

* chore: update discv5

* feat: revamp libp2p dashboard

* Clean up metrics registry type casts

* chore: fix lint / build errors

* chore: more import updates

* chore: more yarn.lock cleanup

* chore: update gossipsub

---------

Co-authored-by: Nico Flaig <[email protected]>
* Allow to skip gossip validation

* Add code comment
* Fix sim test genesis delay

* Update the defaults for the all sim tests

* Increase the limit for slotImportTolerance for unknown block sync

* Update the additional slots for TTD

* Adjust the ttd time

* Adjust the ttd

* Adjust the ttd

* Update the ttd calculation

* Add timestamp to report

* Update the slot to check the merge transition

* Update ttd calculations

* Increase the genesis delay

* Update the shangai ttd calculation

* Increase the slot tolerance

* Disable broadcast validation for unknown block tests

* Fix lint errors
* Ignore known attestations submitted through API

* Ignore known sync committee aggregate

* Add log contex to ignored aggregate attestations

* Fix typo in submitPoolSyncCommitteeSignatures
* add documentation contribution instructions

* docs contribution to include cmd and wordlist

* spell check documentation

* add wordlist check script

* word list correction

* incorporate feedback
* feat: implement BufferPool for PersistentCPStateCache

* fix: alloc vs allocUnsafe for BufferPool

* chore: conform to style guide

* feat: use using with Disposable object

* Add custom build target for beacon-node unit tests

* chore: address PR comments

---------

Co-authored-by: Nazar Hussain <[email protected]>
* fix: make eventstream spec compliant

* fix: lints

* fix: rely on version for light-client event serialization

* fix: align lightClientUpdate event to existing pattern

* fix: use top level fromJSON

* fix: remove useless config

* chore: cleanup unused event

* Update test data to match spec examples

* Determine fork based on attested header slot

* Remove unrelated ssz types update

---------

Co-authored-by: Nico Flaig <[email protected]>
* fix: cache justifiedTotalActiveBalanceByIncrement and implement getProposerScore()

* feat: confirmation rule prerequisite for forkchoice

* chore: no need to change unrealizedJustified in ForkChoiceStore

* fix: beacon-node perf test

* fix: spec test v1.4.0-beta.6

* fix: ignore whisk for now
* feat: log agent version when client is not known

* chore: add test case for getKnownClientFromAgentVersion
* Fix consensusBlockValue unit in debug log

* lint
* Cleanup mocha/chai usage

* Split the config files for each package

* Fix types

* Fix lint errors

* Sort the lint rules

* Fix types

* Cleanup sinon usage

* Fix tests

* Fix lint error

* Add vitest word to dictionary

* Fix the test iteration

* Fix e2e tests

* Sort the words

* Fix sim test assertion

* Fix data import

* Fix import order for mocks

* Fix import order

* Fix e2e tests

* Add contribution guide

* Fix the lint error

* Add src to dictionary

* Remove eslint-disable for skipped tests

* Fix assertions

* Update CONTRIBUTING.md

Co-authored-by: Matthew Keil <[email protected]>

---------

Co-authored-by: Matthew Keil <[email protected]>
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 5.0.6 to 5.0.12.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v5.0.12/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v5.0.12/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
nflaig and others added 4 commits January 23, 2024 12:55
* Move `MIN_EPOCHS_FOR_BLOB_SIDECARS_REQUESTS` from constants to config

* Align structure / comments with consensus spec

* Add references to preset / config files

* Rename directory and files that contain config values

* Add comment to networking params
* feat: increase default memory limit to 8GB

* Revise comments
Copy link

codecov bot commented Jan 23, 2024

Codecov Report

Merging #6347 (92ed347) into stable (5ac2fae) will decrease coverage by 20.35%.
The diff coverage is n/a.

Additional details and impacted files
@@             Coverage Diff             @@
##           stable    #6347       +/-   ##
===========================================
- Coverage   80.48%   60.13%   -20.35%     
===========================================
  Files         202      407      +205     
  Lines       19620    46451    +26831     
  Branches     1176     1534      +358     
===========================================
+ Hits        15791    27935    +12144     
- Misses       3802    18486    +14684     
- Partials       27       30        +3     

Copy link
Contributor

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: e8f062f Previous: - Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 674.71 us/op
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 92.767 us/op
BLS verify - blst-native 1.4542 ms/op
BLS verifyMultipleSignatures 3 - blst-native 3.0468 ms/op
BLS verifyMultipleSignatures 8 - blst-native 6.7332 ms/op
BLS verifyMultipleSignatures 32 - blst-native 24.441 ms/op
BLS verifyMultipleSignatures 64 - blst-native 48.134 ms/op
BLS verifyMultipleSignatures 128 - blst-native 94.954 ms/op
BLS deserializing 10000 signatures 993.55 ms/op
BLS deserializing 100000 signatures 9.5583 s/op
BLS verifyMultipleSignatures - same message - 3 - blst-native 1.4448 ms/op
BLS verifyMultipleSignatures - same message - 8 - blst-native 1.6644 ms/op
BLS verifyMultipleSignatures - same message - 32 - blst-native 2.5724 ms/op
BLS verifyMultipleSignatures - same message - 64 - blst-native 3.6610 ms/op
BLS verifyMultipleSignatures - same message - 128 - blst-native 6.0434 ms/op
BLS aggregatePubkeys 32 - blst-native 28.765 us/op
BLS aggregatePubkeys 128 - blst-native 110.23 us/op
getAttestationsForBlock 54.713 ms/op
getSlashingsAndExits - default max 171.11 us/op
getSlashingsAndExits - 2k 437.14 us/op
proposeBlockBody type=full, size=empty 6.6194 ms/op
isKnown best case - 1 super set check 486.00 ns/op
isKnown normal case - 2 super set checks 365.00 ns/op
isKnown worse case - 16 super set checks 356.00 ns/op
CheckpointStateCache - add get delete 5.7000 us/op
validate api signedAggregateAndProof - struct 3.0293 ms/op
validate gossip signedAggregateAndProof - struct 3.0605 ms/op
validate gossip attestation - vc 640000 1.5692 ms/op
batch validate gossip attestation - vc 640000 - chunk 32 203.16 us/op
batch validate gossip attestation - vc 640000 - chunk 64 182.52 us/op
batch validate gossip attestation - vc 640000 - chunk 128 194.34 us/op
batch validate gossip attestation - vc 640000 - chunk 256 159.42 us/op
pickEth1Vote - no votes 1.5047 ms/op
pickEth1Vote - max votes 15.793 ms/op
pickEth1Vote - Eth1Data hashTreeRoot value x2048 22.335 ms/op
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 35.381 ms/op
pickEth1Vote - Eth1Data fastSerialize value x2048 746.32 us/op
pickEth1Vote - Eth1Data fastSerialize tree x2048 6.5080 ms/op
bytes32 toHexString 679.00 ns/op
bytes32 Buffer.toString(hex) 352.00 ns/op
bytes32 Buffer.toString(hex) from Uint8Array 544.00 ns/op
bytes32 Buffer.toString(hex) + 0x 353.00 ns/op
Object access 1 prop 0.25600 ns/op
Map access 1 prop 0.19000 ns/op
Object get x1000 8.9140 ns/op
Map get x1000 0.99600 ns/op
Object set x1000 68.574 ns/op
Map set x1000 51.626 ns/op
Return object 10000 times 0.30880 ns/op
Throw Error 10000 times 4.4128 us/op
fastMsgIdFn sha256 / 200 bytes 3.8140 us/op
fastMsgIdFn h32 xxhash / 200 bytes 370.00 ns/op
fastMsgIdFn h64 xxhash / 200 bytes 442.00 ns/op
fastMsgIdFn sha256 / 1000 bytes 13.127 us/op
fastMsgIdFn h32 xxhash / 1000 bytes 533.00 ns/op
fastMsgIdFn h64 xxhash / 1000 bytes 579.00 ns/op
fastMsgIdFn sha256 / 10000 bytes 129.00 us/op
fastMsgIdFn h32 xxhash / 10000 bytes 2.3010 us/op
fastMsgIdFn h64 xxhash / 10000 bytes 1.6430 us/op
send data - 1000 256B messages 24.106 ms/op
send data - 1000 512B messages 34.598 ms/op
send data - 1000 1024B messages 54.446 ms/op
send data - 1000 1200B messages 49.992 ms/op
send data - 1000 2048B messages 65.965 ms/op
send data - 1000 4096B messages 70.677 ms/op
send data - 1000 16384B messages 216.12 ms/op
send data - 1000 65536B messages 576.55 ms/op
enrSubnets - fastDeserialize 64 bits 2.0090 us/op
enrSubnets - ssz BitVector 64 bits 707.00 ns/op
enrSubnets - fastDeserialize 4 bits 290.00 ns/op
enrSubnets - ssz BitVector 4 bits 681.00 ns/op
prioritizePeers score -10:0 att 32-0.1 sync 2-0 165.44 us/op
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 188.34 us/op
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 223.83 us/op
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 422.52 us/op
prioritizePeers score 0:0 att 64-1 sync 4-1 453.51 us/op
array of 16000 items push then shift 1.9182 us/op
LinkedList of 16000 items push then shift 11.546 ns/op
array of 16000 items push then pop 146.89 ns/op
LinkedList of 16000 items push then pop 11.027 ns/op
array of 24000 items push then shift 2.9547 us/op
LinkedList of 24000 items push then shift 10.840 ns/op
array of 24000 items push then pop 185.68 ns/op
LinkedList of 24000 items push then pop 11.560 ns/op
intersect bitArray bitLen 8 7.9310 ns/op
intersect array and set length 8 95.315 ns/op
intersect bitArray bitLen 128 40.634 ns/op
intersect array and set length 128 1.2288 us/op
bitArray.getTrueBitIndexes() bitLen 128 2.1530 us/op
bitArray.getTrueBitIndexes() bitLen 248 4.1140 us/op
bitArray.getTrueBitIndexes() bitLen 512 7.8350 us/op
Buffer.concat 32 items 1.5220 us/op
Uint8Array.set 32 items 2.6960 us/op
Set add up to 64 items then delete first 5.9603 us/op
OrderedSet add up to 64 items then delete first 8.1267 us/op
Set add up to 64 items then delete last 6.2151 us/op
OrderedSet add up to 64 items then delete last 8.3070 us/op
Set add up to 64 items then delete middle 6.4012 us/op
OrderedSet add up to 64 items then delete middle 10.213 us/op
Set add up to 128 items then delete first 13.069 us/op
OrderedSet add up to 128 items then delete first 17.327 us/op
Set add up to 128 items then delete last 12.323 us/op
OrderedSet add up to 128 items then delete last 16.504 us/op
Set add up to 128 items then delete middle 12.406 us/op
OrderedSet add up to 128 items then delete middle 23.198 us/op
Set add up to 256 items then delete first 26.446 us/op
OrderedSet add up to 256 items then delete first 35.764 us/op
Set add up to 256 items then delete last 24.229 us/op
OrderedSet add up to 256 items then delete last 29.553 us/op
Set add up to 256 items then delete middle 23.128 us/op
OrderedSet add up to 256 items then delete middle 56.401 us/op
transfer serialized Status (84 B) 2.1100 us/op
copy serialized Status (84 B) 1.6170 us/op
transfer serialized SignedVoluntaryExit (112 B) 2.2280 us/op
copy serialized SignedVoluntaryExit (112 B) 1.7930 us/op
transfer serialized ProposerSlashing (416 B) 2.7870 us/op
copy serialized ProposerSlashing (416 B) 2.4640 us/op
transfer serialized Attestation (485 B) 2.5650 us/op
copy serialized Attestation (485 B) 2.2910 us/op
transfer serialized AttesterSlashing (33232 B) 3.2280 us/op
copy serialized AttesterSlashing (33232 B) 10.110 us/op
transfer serialized Small SignedBeaconBlock (128000 B) 3.6790 us/op
copy serialized Small SignedBeaconBlock (128000 B) 25.027 us/op
transfer serialized Avg SignedBeaconBlock (200000 B) 3.9750 us/op
copy serialized Avg SignedBeaconBlock (200000 B) 37.693 us/op
transfer serialized BlobsSidecar (524380 B) 3.5160 us/op
copy serialized BlobsSidecar (524380 B) 101.18 us/op
transfer serialized Big SignedBeaconBlock (1000000 B) 5.2930 us/op
copy serialized Big SignedBeaconBlock (1000000 B) 237.88 us/op
pass gossip attestations to forkchoice per slot 4.8723 ms/op
forkChoice updateHead vc 100000 bc 64 eq 0 790.68 us/op
forkChoice updateHead vc 600000 bc 64 eq 0 5.1607 ms/op
forkChoice updateHead vc 1000000 bc 64 eq 0 9.6837 ms/op
forkChoice updateHead vc 600000 bc 320 eq 0 5.0896 ms/op
forkChoice updateHead vc 600000 bc 1200 eq 0 6.7027 ms/op
forkChoice updateHead vc 600000 bc 7200 eq 0 7.8435 ms/op
forkChoice updateHead vc 600000 bc 64 eq 1000 13.181 ms/op
forkChoice updateHead vc 600000 bc 64 eq 10000 15.471 ms/op
forkChoice updateHead vc 600000 bc 64 eq 300000 25.056 ms/op
computeDeltas 500000 validators 300 proto nodes 8.0161 ms/op
computeDeltas 500000 validators 1200 proto nodes 8.1482 ms/op
computeDeltas 500000 validators 7200 proto nodes 8.0648 ms/op
computeDeltas 750000 validators 300 proto nodes 12.383 ms/op
computeDeltas 750000 validators 1200 proto nodes 12.083 ms/op
computeDeltas 750000 validators 7200 proto nodes 12.596 ms/op
computeDeltas 1400000 validators 300 proto nodes 23.309 ms/op
computeDeltas 1400000 validators 1200 proto nodes 22.586 ms/op
computeDeltas 1400000 validators 7200 proto nodes 21.720 ms/op
computeDeltas 2100000 validators 300 proto nodes 34.714 ms/op
computeDeltas 2100000 validators 1200 proto nodes 37.711 ms/op
computeDeltas 2100000 validators 7200 proto nodes 35.697 ms/op
altair processAttestation - 250000 vs - 7PWei normalcase 4.0925 ms/op
altair processAttestation - 250000 vs - 7PWei worstcase 5.4611 ms/op
altair processAttestation - setStatus - 1/6 committees join 273.34 us/op
altair processAttestation - setStatus - 1/3 committees join 502.81 us/op
altair processAttestation - setStatus - 1/2 committees join 659.52 us/op
altair processAttestation - setStatus - 2/3 committees join 800.37 us/op
altair processAttestation - setStatus - 4/5 committees join 1.0997 ms/op
altair processAttestation - setStatus - 100% committees join 1.2259 ms/op
altair processBlock - 250000 vs - 7PWei normalcase 13.305 ms/op
altair processBlock - 250000 vs - 7PWei normalcase hashState 46.426 ms/op
altair processBlock - 250000 vs - 7PWei worstcase 60.165 ms/op
altair processBlock - 250000 vs - 7PWei worstcase hashState 117.52 ms/op
phase0 processBlock - 250000 vs - 7PWei normalcase 3.5176 ms/op
phase0 processBlock - 250000 vs - 7PWei worstcase 41.880 ms/op
altair processEth1Data - 250000 vs - 7PWei normalcase 1.0130 ms/op
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 21.498 us/op
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 73.101 us/op
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 37.169 us/op
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 17.229 us/op
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 237.12 us/op
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 2.0958 ms/op
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 2.7383 ms/op
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 2.1853 ms/op
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 5.1099 ms/op
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 3.2757 ms/op
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 8.5149 ms/op
Tree 40 250000 create 709.45 ms/op
Tree 40 250000 get(125000) 259.82 ns/op
Tree 40 250000 set(125000) 1.6168 us/op
Tree 40 250000 toArray() 26.594 ms/op
Tree 40 250000 iterate all - toArray() + loop 26.370 ms/op
Tree 40 250000 iterate all - get(i) 84.776 ms/op
MutableVector 250000 create 20.551 ms/op
MutableVector 250000 get(125000) 8.3110 ns/op
MutableVector 250000 set(125000) 354.49 ns/op
MutableVector 250000 toArray() 4.6505 ms/op
MutableVector 250000 iterate all - toArray() + loop 5.1590 ms/op
MutableVector 250000 iterate all - get(i) 1.8727 ms/op
Array 250000 create 4.6945 ms/op
Array 250000 clone - spread 1.6273 ms/op
Array 250000 get(125000) 1.9810 ns/op
Array 250000 set(125000) 5.8090 ns/op
Array 250000 iterate all - loop 217.52 us/op
effectiveBalanceIncrements clone Uint8Array 300000 61.310 us/op
effectiveBalanceIncrements clone MutableVector 300000 471.00 ns/op
effectiveBalanceIncrements rw all Uint8Array 300000 253.99 us/op
effectiveBalanceIncrements rw all MutableVector 300000 185.19 ms/op
phase0 afterProcessEpoch - 250000 vs - 7PWei 140.14 ms/op
phase0 beforeProcessEpoch - 250000 vs - 7PWei 63.232 ms/op
altair processEpoch - mainnet_e81889 684.80 ms/op
mainnet_e81889 - altair beforeProcessEpoch 101.59 ms/op
mainnet_e81889 - altair processJustificationAndFinalization 21.228 us/op
mainnet_e81889 - altair processInactivityUpdates 8.6749 ms/op
mainnet_e81889 - altair processRewardsAndPenalties 77.832 ms/op
mainnet_e81889 - altair processRegistryUpdates 4.2740 us/op
mainnet_e81889 - altair processSlashings 746.00 ns/op
mainnet_e81889 - altair processEth1DataReset 1.0560 us/op
mainnet_e81889 - altair processEffectiveBalanceUpdates 2.2124 ms/op
mainnet_e81889 - altair processSlashingsReset 8.0560 us/op
mainnet_e81889 - altair processRandaoMixesReset 13.556 us/op
mainnet_e81889 - altair processHistoricalRootsUpdate 2.8010 us/op
mainnet_e81889 - altair processParticipationFlagUpdates 5.5150 us/op
mainnet_e81889 - altair processSyncCommitteeUpdates 1.5390 us/op
mainnet_e81889 - altair afterProcessEpoch 182.80 ms/op
capella processEpoch - mainnet_e217614 3.2024 s/op
mainnet_e217614 - capella beforeProcessEpoch 615.09 ms/op
mainnet_e217614 - capella processJustificationAndFinalization 35.414 us/op
mainnet_e217614 - capella processInactivityUpdates 28.066 ms/op
mainnet_e217614 - capella processRewardsAndPenalties 500.86 ms/op
mainnet_e217614 - capella processRegistryUpdates 46.982 us/op
mainnet_e217614 - capella processSlashings 958.00 ns/op
mainnet_e217614 - capella processEth1DataReset 854.00 ns/op
mainnet_e217614 - capella processEffectiveBalanceUpdates 12.748 ms/op
mainnet_e217614 - capella processSlashingsReset 5.2600 us/op
mainnet_e217614 - capella processRandaoMixesReset 5.5350 us/op
mainnet_e217614 - capella processHistoricalRootsUpdate 625.00 ns/op
mainnet_e217614 - capella processParticipationFlagUpdates 3.1500 us/op
mainnet_e217614 - capella afterProcessEpoch 354.94 ms/op
phase0 processEpoch - mainnet_e58758 544.91 ms/op
mainnet_e58758 - phase0 beforeProcessEpoch 155.87 ms/op
mainnet_e58758 - phase0 processJustificationAndFinalization 17.907 us/op
mainnet_e58758 - phase0 processRewardsAndPenalties 60.941 ms/op
mainnet_e58758 - phase0 processRegistryUpdates 16.004 us/op
mainnet_e58758 - phase0 processSlashings 839.00 ns/op
mainnet_e58758 - phase0 processEth1DataReset 681.00 ns/op
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 1.6864 ms/op
mainnet_e58758 - phase0 processSlashingsReset 4.5880 us/op
mainnet_e58758 - phase0 processRandaoMixesReset 9.4870 us/op
mainnet_e58758 - phase0 processHistoricalRootsUpdate 847.00 ns/op
mainnet_e58758 - phase0 processParticipationRecordUpdates 5.7320 us/op
mainnet_e58758 - phase0 afterProcessEpoch 112.08 ms/op
phase0 processEffectiveBalanceUpdates - 250000 normalcase 1.5564 ms/op
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 2.0608 ms/op
altair processInactivityUpdates - 250000 normalcase 30.699 ms/op
altair processInactivityUpdates - 250000 worstcase 34.618 ms/op
phase0 processRegistryUpdates - 250000 normalcase 13.048 us/op
phase0 processRegistryUpdates - 250000 badcase_full_deposits 475.61 us/op
phase0 processRegistryUpdates - 250000 worstcase 0.5 151.26 ms/op
altair processRewardsAndPenalties - 250000 normalcase 67.433 ms/op
altair processRewardsAndPenalties - 250000 worstcase 58.792 ms/op
phase0 getAttestationDeltas - 250000 normalcase 10.291 ms/op
phase0 getAttestationDeltas - 250000 worstcase 9.9603 ms/op
phase0 processSlashings - 250000 worstcase 98.584 us/op
altair processSyncCommitteeUpdates - 250000 191.53 ms/op
BeaconState.hashTreeRoot - No change 794.00 ns/op
BeaconState.hashTreeRoot - 1 full validator 147.87 us/op
BeaconState.hashTreeRoot - 32 full validator 1.7460 ms/op
BeaconState.hashTreeRoot - 512 full validator 19.961 ms/op
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 192.47 us/op
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 2.5809 ms/op
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 39.148 ms/op
BeaconState.hashTreeRoot - 1 balances 172.24 us/op
BeaconState.hashTreeRoot - 32 balances 1.5547 ms/op
BeaconState.hashTreeRoot - 512 balances 17.873 ms/op
BeaconState.hashTreeRoot - 250000 balances 274.68 ms/op
aggregationBits - 2048 els - zipIndexesInBitList 32.965 us/op
byteArrayEquals 32 87.913 ns/op
Buffer.compare 32 64.585 ns/op
byteArrayEquals 1024 2.3978 us/op
Buffer.compare 1024 81.836 ns/op
byteArrayEquals 16384 38.139 us/op
Buffer.compare 16384 294.63 ns/op
byteArrayEquals 123687377 309.28 ms/op
Buffer.compare 123687377 12.171 ms/op
byteArrayEquals 32 - diff last byte 104.92 ns/op
Buffer.compare 32 - diff last byte 74.398 ns/op
byteArrayEquals 1024 - diff last byte 2.4875 us/op
Buffer.compare 1024 - diff last byte 90.148 ns/op
byteArrayEquals 16384 - diff last byte 40.638 us/op
Buffer.compare 16384 - diff last byte 334.36 ns/op
byteArrayEquals 123687377 - diff last byte 296.92 ms/op
Buffer.compare 123687377 - diff last byte 9.5250 ms/op
byteArrayEquals 32 - random bytes 7.4910 ns/op
Buffer.compare 32 - random bytes 72.072 ns/op
byteArrayEquals 1024 - random bytes 7.0110 ns/op
Buffer.compare 1024 - random bytes 69.703 ns/op
byteArrayEquals 16384 - random bytes 6.5550 ns/op
Buffer.compare 16384 - random bytes 69.804 ns/op
byteArrayEquals 123687377 - random bytes 10.210 ns/op
Buffer.compare 123687377 - random bytes 79.360 ns/op
regular array get 100000 times 52.035 us/op
wrappedArray get 100000 times 53.660 us/op
arrayWithProxy get 100000 times 16.925 ms/op
ssz.Root.equals 63.739 ns/op
byteArrayEquals 62.024 ns/op
Buffer.compare 13.778 ns/op
shuffle list - 16384 els 8.2818 ms/op
shuffle list - 250000 els 117.39 ms/op
processSlot - 1 slots 23.169 us/op
processSlot - 32 slots 5.0100 ms/op
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 64.237 ms/op
getCommitteeAssignments - req 1 vs - 250000 vc 2.7490 ms/op
getCommitteeAssignments - req 100 vs - 250000 vc 4.0708 ms/op
getCommitteeAssignments - req 1000 vs - 250000 vc 4.5305 ms/op
findModifiedValidators - 10000 modified validators 612.63 ms/op
findModifiedValidators - 1000 modified validators 497.36 ms/op
findModifiedValidators - 100 modified validators 478.94 ms/op
findModifiedValidators - 10 modified validators 483.73 ms/op
findModifiedValidators - 1 modified validators 476.01 ms/op
findModifiedValidators - no difference 493.63 ms/op
compare ViewDUs 5.1068 s/op
compare each validator Uint8Array 1.8715 s/op
compare ViewDU to Uint8Array 1.4732 s/op
migrate state 1000000 validators, 24 modified, 0 new 903.54 ms/op
migrate state 1000000 validators, 1700 modified, 1000 new 1.2141 s/op
migrate state 1000000 validators, 3400 modified, 2000 new 1.4963 s/op
migrate state 1500000 validators, 24 modified, 0 new 931.38 ms/op
migrate state 1500000 validators, 1700 modified, 1000 new 1.3134 s/op
migrate state 1500000 validators, 3400 modified, 2000 new 1.5798 s/op
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 5.9500 ns/op
state getBlockRootAtSlot - 250000 vs - 7PWei 912.17 ns/op
computeProposers - vc 250000 11.757 ms/op
computeEpochShuffling - vc 250000 126.89 ms/op
getNextSyncCommittee - vc 250000 200.12 ms/op
computeSigningRoot for AttestationData 36.741 us/op
hash AttestationData serialized data then Buffer.toString(base64) 2.8948 us/op
toHexString serialized data 2.0221 us/op
Buffer.toString(base64) 345.22 ns/op

by benchmarkbot/action

@philknows philknows marked this pull request as ready for review January 29, 2024 14:30
@philknows philknows requested a review from a team as a code owner January 29, 2024 14:30
@philknows philknows merged commit 5d93a62 into stable Jan 29, 2024
25 of 35 checks passed
@philknows philknows deleted the rc/v1.15.0 branch January 29, 2024 14:45
@wemeetagain
Copy link
Member

🎉 This PR is included in v1.15.0 🎉

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants