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

Add dockerized metrics local setup #5173

Merged
merged 2 commits into from
Feb 20, 2023
Merged

Conversation

dapplion
Copy link
Contributor

Motivation

Recent modifications to the docker setup prevent it from "just working" for local development

Description

Add alternative docker/docker-compose.local_dev.sh script that "just works" bringing up latest dashboard from local fs

@dapplion dapplion requested a review from a team as a code owner February 20, 2023 06:42
Copy link
Member

@nflaig nflaig left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I guess this is a good solution for now until we figure out something else where we need to duplicate less code.

Should also update this in CONTRIBUTING.md

docker/docker-compose.local_dev.sh Outdated Show resolved Hide resolved
@github-actions
Copy link
Contributor

github-actions bot commented Feb 20, 2023

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: 40a19d4 Previous: f4057cf Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 481.52 us/op 497.22 us/op 0.97
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 44.131 us/op 45.903 us/op 0.96
BLS verify - blst-native 1.2154 ms/op 1.2484 ms/op 0.97
BLS verifyMultipleSignatures 3 - blst-native 2.4680 ms/op 2.5452 ms/op 0.97
BLS verifyMultipleSignatures 8 - blst-native 5.3166 ms/op 5.4653 ms/op 0.97
BLS verifyMultipleSignatures 32 - blst-native 19.035 ms/op 19.650 ms/op 0.97
BLS aggregatePubkeys 32 - blst-native 25.112 us/op 26.175 us/op 0.96
BLS aggregatePubkeys 128 - blst-native 97.659 us/op 102.90 us/op 0.95
getAttestationsForBlock 53.460 ms/op 54.426 ms/op 0.98
isKnown best case - 1 super set check 267.00 ns/op 265.00 ns/op 1.01
isKnown normal case - 2 super set checks 257.00 ns/op 271.00 ns/op 0.95
isKnown worse case - 16 super set checks 250.00 ns/op 261.00 ns/op 0.96
CheckpointStateCache - add get delete 5.1060 us/op 5.1410 us/op 0.99
validate gossip signedAggregateAndProof - struct 2.8337 ms/op 2.7738 ms/op 1.02
validate gossip attestation - struct 1.3093 ms/op 1.3094 ms/op 1.00
pickEth1Vote - no votes 1.3114 ms/op 1.2594 ms/op 1.04
pickEth1Vote - max votes 7.9902 ms/op 9.1344 ms/op 0.87
pickEth1Vote - Eth1Data hashTreeRoot value x2048 8.4723 ms/op 9.2591 ms/op 0.92
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 15.191 ms/op 13.808 ms/op 1.10
pickEth1Vote - Eth1Data fastSerialize value x2048 710.95 us/op 682.99 us/op 1.04
pickEth1Vote - Eth1Data fastSerialize tree x2048 4.3060 ms/op 4.8701 ms/op 0.88
bytes32 toHexString 491.00 ns/op 493.00 ns/op 1.00
bytes32 Buffer.toString(hex) 352.00 ns/op 337.00 ns/op 1.04
bytes32 Buffer.toString(hex) from Uint8Array 557.00 ns/op 536.00 ns/op 1.04
bytes32 Buffer.toString(hex) + 0x 350.00 ns/op 342.00 ns/op 1.02
Object access 1 prop 0.16300 ns/op 0.16800 ns/op 0.97
Map access 1 prop 0.15900 ns/op 0.15800 ns/op 1.01
Object get x1000 6.4230 ns/op 6.6710 ns/op 0.96
Map get x1000 0.72800 ns/op 0.59900 ns/op 1.22
Object set x1000 49.768 ns/op 55.416 ns/op 0.90
Map set x1000 42.072 ns/op 44.563 ns/op 0.94
Return object 10000 times 0.22770 ns/op 0.23670 ns/op 0.96
Throw Error 10000 times 3.9611 us/op 4.1557 us/op 0.95
fastMsgIdFn sha256 / 200 bytes 3.3090 us/op 3.3870 us/op 0.98
fastMsgIdFn h32 xxhash / 200 bytes 262.00 ns/op 274.00 ns/op 0.96
fastMsgIdFn h64 xxhash / 200 bytes 361.00 ns/op 377.00 ns/op 0.96
fastMsgIdFn sha256 / 1000 bytes 11.141 us/op 11.479 us/op 0.97
fastMsgIdFn h32 xxhash / 1000 bytes 384.00 ns/op 394.00 ns/op 0.97
fastMsgIdFn h64 xxhash / 1000 bytes 431.00 ns/op 449.00 ns/op 0.96
fastMsgIdFn sha256 / 10000 bytes 100.12 us/op 103.36 us/op 0.97
fastMsgIdFn h32 xxhash / 10000 bytes 1.8440 us/op 1.9290 us/op 0.96
fastMsgIdFn h64 xxhash / 10000 bytes 1.3110 us/op 1.3810 us/op 0.95
enrSubnets - fastDeserialize 64 bits 1.2160 us/op 1.2880 us/op 0.94
enrSubnets - ssz BitVector 64 bits 463.00 ns/op 500.00 ns/op 0.93
enrSubnets - fastDeserialize 4 bits 162.00 ns/op 185.00 ns/op 0.88
enrSubnets - ssz BitVector 4 bits 456.00 ns/op 504.00 ns/op 0.90
prioritizePeers score -10:0 att 32-0.1 sync 2-0 92.840 us/op 98.391 us/op 0.94
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 119.57 us/op 139.43 us/op 0.86
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 163.37 us/op 160.74 us/op 1.02
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 288.74 us/op 304.70 us/op 0.95
prioritizePeers score 0:0 att 64-1 sync 4-1 344.28 us/op 359.59 us/op 0.96
array of 16000 items push then shift 1.6050 us/op 1.6342 us/op 0.98
LinkedList of 16000 items push then shift 8.7410 ns/op 8.8760 ns/op 0.98
array of 16000 items push then pop 81.461 ns/op 85.437 ns/op 0.95
LinkedList of 16000 items push then pop 8.4800 ns/op 8.3890 ns/op 1.01
array of 24000 items push then shift 2.3157 us/op 2.2839 us/op 1.01
LinkedList of 24000 items push then shift 8.6150 ns/op 8.7570 ns/op 0.98
array of 24000 items push then pop 74.016 ns/op 77.341 ns/op 0.96
LinkedList of 24000 items push then pop 8.2370 ns/op 8.4260 ns/op 0.98
intersect bitArray bitLen 8 13.664 ns/op 13.159 ns/op 1.04
intersect array and set length 8 75.023 ns/op 74.279 ns/op 1.01
intersect bitArray bitLen 128 43.358 ns/op 43.581 ns/op 0.99
intersect array and set length 128 1.0190 us/op 1.0238 us/op 1.00
Buffer.concat 32 items 2.9590 us/op 2.6520 us/op 1.12
Uint8Array.set 32 items 2.1620 us/op 2.8890 us/op 0.75
pass gossip attestations to forkchoice per slot 2.2231 ms/op 3.4126 ms/op 0.65
computeDeltas 3.4028 ms/op 2.8730 ms/op 1.18
computeProposerBoostScoreFromBalances 1.8955 ms/op 1.7764 ms/op 1.07
altair processAttestation - 250000 vs - 7PWei normalcase 2.3689 ms/op 2.1198 ms/op 1.12
altair processAttestation - 250000 vs - 7PWei worstcase 3.5488 ms/op 3.2004 ms/op 1.11
altair processAttestation - setStatus - 1/6 committees join 140.75 us/op 136.12 us/op 1.03
altair processAttestation - setStatus - 1/3 committees join 279.10 us/op 278.28 us/op 1.00
altair processAttestation - setStatus - 1/2 committees join 371.42 us/op 368.76 us/op 1.01
altair processAttestation - setStatus - 2/3 committees join 480.50 us/op 478.94 us/op 1.00
altair processAttestation - setStatus - 4/5 committees join 717.40 us/op 666.86 us/op 1.08
altair processAttestation - setStatus - 100% committees join 792.13 us/op 758.03 us/op 1.04
altair processBlock - 250000 vs - 7PWei normalcase 16.395 ms/op 18.033 ms/op 0.91
altair processBlock - 250000 vs - 7PWei normalcase hashState 28.070 ms/op 27.453 ms/op 1.02
altair processBlock - 250000 vs - 7PWei worstcase 51.087 ms/op 52.493 ms/op 0.97
altair processBlock - 250000 vs - 7PWei worstcase hashState 80.675 ms/op 71.401 ms/op 1.13
phase0 processBlock - 250000 vs - 7PWei normalcase 2.2688 ms/op 2.0148 ms/op 1.13
phase0 processBlock - 250000 vs - 7PWei worstcase 31.865 ms/op 27.467 ms/op 1.16
altair processEth1Data - 250000 vs - 7PWei normalcase 614.56 us/op 464.95 us/op 1.32
vc - 250000 eb 1 eth1 1 we 0 wn 0 - smpl 15 13.615 us/op 8.8870 us/op 1.53
vc - 250000 eb 0.95 eth1 0.1 we 0.05 wn 0 - smpl 219 37.258 us/op 29.326 us/op 1.27
vc - 250000 eb 0.95 eth1 0.3 we 0.05 wn 0 - smpl 42 16.426 us/op 11.579 us/op 1.42
vc - 250000 eb 0.95 eth1 0.7 we 0.05 wn 0 - smpl 18 12.341 us/op 8.3320 us/op 1.48
vc - 250000 eb 0.1 eth1 0.1 we 0 wn 0 - smpl 1020 129.97 us/op 111.71 us/op 1.16
vc - 250000 eb 0.03 eth1 0.03 we 0 wn 0 - smpl 11777 650.51 us/op 656.40 us/op 0.99
vc - 250000 eb 0.01 eth1 0.01 we 0 wn 0 - smpl 16384 943.56 us/op 923.82 us/op 1.02
vc - 250000 eb 0 eth1 0 we 0 wn 0 - smpl 16384 921.20 us/op 897.63 us/op 1.03
vc - 250000 eb 0 eth1 0 we 0 wn 0 nocache - smpl 16384 2.3746 ms/op 2.4060 ms/op 0.99
vc - 250000 eb 0 eth1 1 we 0 wn 0 - smpl 16384 1.6161 ms/op 1.4974 ms/op 1.08
vc - 250000 eb 0 eth1 1 we 0 wn 0 nocache - smpl 16384 3.9463 ms/op 3.9051 ms/op 1.01
Tree 40 250000 create 392.35 ms/op 332.14 ms/op 1.18
Tree 40 250000 get(125000) 199.92 ns/op 190.93 ns/op 1.05
Tree 40 250000 set(125000) 1.0078 us/op 1.0429 us/op 0.97
Tree 40 250000 toArray() 18.675 ms/op 21.603 ms/op 0.86
Tree 40 250000 iterate all - toArray() + loop 19.145 ms/op 22.219 ms/op 0.86
Tree 40 250000 iterate all - get(i) 73.654 ms/op 75.410 ms/op 0.98
MutableVector 250000 create 10.932 ms/op 9.6500 ms/op 1.13
MutableVector 250000 get(125000) 6.6650 ns/op 6.6550 ns/op 1.00
MutableVector 250000 set(125000) 289.19 ns/op 256.35 ns/op 1.13
MutableVector 250000 toArray() 3.3136 ms/op 2.7877 ms/op 1.19
MutableVector 250000 iterate all - toArray() + loop 3.1495 ms/op 2.8295 ms/op 1.11
MutableVector 250000 iterate all - get(i) 1.5301 ms/op 1.5264 ms/op 1.00
Array 250000 create 3.5558 ms/op 2.5284 ms/op 1.41
Array 250000 clone - spread 1.2937 ms/op 1.1035 ms/op 1.17
Array 250000 get(125000) 0.62300 ns/op 0.54000 ns/op 1.15
Array 250000 set(125000) 0.71500 ns/op 0.63700 ns/op 1.12
Array 250000 iterate all - loop 95.903 us/op 112.39 us/op 0.85
effectiveBalanceIncrements clone Uint8Array 300000 31.078 us/op 36.628 us/op 0.85
effectiveBalanceIncrements clone MutableVector 300000 400.00 ns/op 343.00 ns/op 1.17
effectiveBalanceIncrements rw all Uint8Array 300000 172.09 us/op 168.88 us/op 1.02
effectiveBalanceIncrements rw all MutableVector 300000 86.750 ms/op 85.078 ms/op 1.02
phase0 afterProcessEpoch - 250000 vs - 7PWei 121.92 ms/op 116.24 ms/op 1.05
phase0 beforeProcessEpoch - 250000 vs - 7PWei 34.489 ms/op 43.499 ms/op 0.79
altair processEpoch - mainnet_e81889 323.21 ms/op 332.50 ms/op 0.97
mainnet_e81889 - altair beforeProcessEpoch 65.919 ms/op 50.309 ms/op 1.31
mainnet_e81889 - altair processJustificationAndFinalization 17.032 us/op 16.618 us/op 1.02
mainnet_e81889 - altair processInactivityUpdates 5.1726 ms/op 6.0636 ms/op 0.85
mainnet_e81889 - altair processRewardsAndPenalties 50.364 ms/op 54.636 ms/op 0.92
mainnet_e81889 - altair processRegistryUpdates 2.7940 us/op 2.8630 us/op 0.98
mainnet_e81889 - altair processSlashings 457.00 ns/op 439.00 ns/op 1.04
mainnet_e81889 - altair processEth1DataReset 575.00 ns/op 503.00 ns/op 1.14
mainnet_e81889 - altair processEffectiveBalanceUpdates 1.2229 ms/op 1.2740 ms/op 0.96
mainnet_e81889 - altair processSlashingsReset 3.9980 us/op 4.1390 us/op 0.97
mainnet_e81889 - altair processRandaoMixesReset 4.9430 us/op 4.3670 us/op 1.13
mainnet_e81889 - altair processHistoricalRootsUpdate 605.00 ns/op 585.00 ns/op 1.03
mainnet_e81889 - altair processParticipationFlagUpdates 2.8120 us/op 2.5040 us/op 1.12
mainnet_e81889 - altair processSyncCommitteeUpdates 521.00 ns/op 579.00 ns/op 0.90
mainnet_e81889 - altair afterProcessEpoch 125.05 ms/op 121.09 ms/op 1.03
phase0 processEpoch - mainnet_e58758 361.93 ms/op 328.93 ms/op 1.10
mainnet_e58758 - phase0 beforeProcessEpoch 136.38 ms/op 127.91 ms/op 1.07
mainnet_e58758 - phase0 processJustificationAndFinalization 18.601 us/op 16.922 us/op 1.10
mainnet_e58758 - phase0 processRewardsAndPenalties 67.061 ms/op 56.696 ms/op 1.18
mainnet_e58758 - phase0 processRegistryUpdates 7.8950 us/op 8.1310 us/op 0.97
mainnet_e58758 - phase0 processSlashings 508.00 ns/op 486.00 ns/op 1.05
mainnet_e58758 - phase0 processEth1DataReset 491.00 ns/op 480.00 ns/op 1.02
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 1.2189 ms/op 1.0088 ms/op 1.21
mainnet_e58758 - phase0 processSlashingsReset 4.6990 us/op 2.8400 us/op 1.65
mainnet_e58758 - phase0 processRandaoMixesReset 5.5030 us/op 4.3020 us/op 1.28
mainnet_e58758 - phase0 processHistoricalRootsUpdate 672.00 ns/op 543.00 ns/op 1.24
mainnet_e58758 - phase0 processParticipationRecordUpdates 4.1400 us/op 3.6860 us/op 1.12
mainnet_e58758 - phase0 afterProcessEpoch 98.848 ms/op 100.01 ms/op 0.99
phase0 processEffectiveBalanceUpdates - 250000 normalcase 1.2470 ms/op 1.2632 ms/op 0.99
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 1.5567 ms/op 1.4388 ms/op 1.08
altair processInactivityUpdates - 250000 normalcase 20.177 ms/op 23.078 ms/op 0.87
altair processInactivityUpdates - 250000 worstcase 24.816 ms/op 25.717 ms/op 0.96
phase0 processRegistryUpdates - 250000 normalcase 9.3290 us/op 6.4550 us/op 1.45
phase0 processRegistryUpdates - 250000 badcase_full_deposits 268.03 us/op 271.36 us/op 0.99
phase0 processRegistryUpdates - 250000 worstcase 0.5 133.00 ms/op 119.75 ms/op 1.11
altair processRewardsAndPenalties - 250000 normalcase 67.865 ms/op 58.211 ms/op 1.17
altair processRewardsAndPenalties - 250000 worstcase 68.211 ms/op 53.159 ms/op 1.28
phase0 getAttestationDeltas - 250000 normalcase 6.7836 ms/op 6.9626 ms/op 0.97
phase0 getAttestationDeltas - 250000 worstcase 7.2001 ms/op 7.0787 ms/op 1.02
phase0 processSlashings - 250000 worstcase 3.6231 ms/op 3.4934 ms/op 1.04
altair processSyncCommitteeUpdates - 250000 184.54 ms/op 191.81 ms/op 0.96
BeaconState.hashTreeRoot - No change 278.00 ns/op 260.00 ns/op 1.07
BeaconState.hashTreeRoot - 1 full validator 52.855 us/op 52.325 us/op 1.01
BeaconState.hashTreeRoot - 32 full validator 506.10 us/op 543.57 us/op 0.93
BeaconState.hashTreeRoot - 512 full validator 5.2581 ms/op 6.0611 ms/op 0.87
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 62.928 us/op 63.338 us/op 0.99
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 940.85 us/op 877.59 us/op 1.07
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 11.467 ms/op 11.924 ms/op 0.96
BeaconState.hashTreeRoot - 1 balances 51.462 us/op 49.133 us/op 1.05
BeaconState.hashTreeRoot - 32 balances 469.38 us/op 472.53 us/op 0.99
BeaconState.hashTreeRoot - 512 balances 4.2520 ms/op 4.5311 ms/op 0.94
BeaconState.hashTreeRoot - 250000 balances 71.542 ms/op 72.907 ms/op 0.98
aggregationBits - 2048 els - zipIndexesInBitList 15.893 us/op 18.560 us/op 0.86
regular array get 100000 times 32.645 us/op 33.198 us/op 0.98
wrappedArray get 100000 times 32.049 us/op 33.089 us/op 0.97
arrayWithProxy get 100000 times 16.204 ms/op 16.205 ms/op 1.00
ssz.Root.equals 613.00 ns/op 581.00 ns/op 1.06
byteArrayEquals 602.00 ns/op 565.00 ns/op 1.07
shuffle list - 16384 els 6.7980 ms/op 7.0423 ms/op 0.97
shuffle list - 250000 els 99.496 ms/op 102.84 ms/op 0.97
processSlot - 1 slots 8.3190 us/op 9.0720 us/op 0.92
processSlot - 32 slots 1.2936 ms/op 1.4258 ms/op 0.91
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 184.27 us/op 213.91 us/op 0.86
getCommitteeAssignments - req 1 vs - 250000 vc 2.9531 ms/op 2.9941 ms/op 0.99
getCommitteeAssignments - req 100 vs - 250000 vc 4.0977 ms/op 4.2663 ms/op 0.96
getCommitteeAssignments - req 1000 vs - 250000 vc 4.3845 ms/op 4.6977 ms/op 0.93
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 4.5800 ns/op 4.8400 ns/op 0.95
state getBlockRootAtSlot - 250000 vs - 7PWei 804.93 ns/op 613.86 ns/op 1.31
computeProposers - vc 250000 10.392 ms/op 11.021 ms/op 0.94
computeEpochShuffling - vc 250000 100.31 ms/op 106.71 ms/op 0.94
getNextSyncCommittee - vc 250000 168.63 ms/op 178.72 ms/op 0.94

by benchmarkbot/action

@wemeetagain wemeetagain merged commit d1cddb7 into unstable Feb 20, 2023
@wemeetagain wemeetagain deleted the dapplion/docker-dev-setup branch February 20, 2023 16:08
@wemeetagain
Copy link
Member

🎉 This PR is included in v1.6.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.

3 participants