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

Preserve backslash character in panda banner #4306

Merged
merged 1 commit into from Jul 16, 2022

Conversation

dapplion
Copy link
Contributor

Motivation

Current banner prints broken as \ character is not displayed messing the alignments

Description

String.raw preserve backslash character

@dapplion dapplion requested a review from a team as a code owner July 16, 2022 17:06
@github-actions
Copy link
Contributor

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: 2d51e5d Previous: 8b75112 Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 1.6753 ms/op 2.2819 ms/op 0.73
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 64.653 us/op 75.113 us/op 0.86
BLS verify - blst-native 2.1635 ms/op 1.8574 ms/op 1.16
BLS verifyMultipleSignatures 3 - blst-native 4.4698 ms/op 3.8014 ms/op 1.18
BLS verifyMultipleSignatures 8 - blst-native 9.6665 ms/op 8.1835 ms/op 1.18
BLS verifyMultipleSignatures 32 - blst-native 35.123 ms/op 29.816 ms/op 1.18
BLS aggregatePubkeys 32 - blst-native 46.619 us/op 39.085 us/op 1.19
BLS aggregatePubkeys 128 - blst-native 182.24 us/op 152.74 us/op 1.19
getAttestationsForBlock 41.471 ms/op 46.369 ms/op 0.89
isKnown best case - 1 super set check 478.00 ns/op 458.00 ns/op 1.04
isKnown normal case - 2 super set checks 470.00 ns/op 448.00 ns/op 1.05
isKnown worse case - 16 super set checks 470.00 ns/op 448.00 ns/op 1.05
CheckpointStateCache - add get delete 10.935 us/op 11.017 us/op 0.99
validate gossip signedAggregateAndProof - struct 5.0146 ms/op 4.2587 ms/op 1.18
validate gossip attestation - struct 2.3648 ms/op 2.0306 ms/op 1.16
altair verifyImport mainnet_s3766816:31 12.877 s/op 12.467 s/op 1.03
pickEth1Vote - no votes 2.0752 ms/op 2.1219 ms/op 0.98
pickEth1Vote - max votes 22.048 ms/op 26.474 ms/op 0.83
pickEth1Vote - Eth1Data hashTreeRoot value x2048 12.929 ms/op 11.852 ms/op 1.09
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 20.846 ms/op 22.758 ms/op 0.92
pickEth1Vote - Eth1Data fastSerialize value x2048 1.4993 ms/op 1.6232 ms/op 0.92
pickEth1Vote - Eth1Data fastSerialize tree x2048 15.999 ms/op 18.870 ms/op 0.85
bytes32 toHexString 964.00 ns/op 1.1090 us/op 0.87
bytes32 Buffer.toString(hex) 809.00 ns/op 740.00 ns/op 1.09
bytes32 Buffer.toString(hex) from Uint8Array 1.0700 us/op 984.00 ns/op 1.09
bytes32 Buffer.toString(hex) + 0x 816.00 ns/op 749.00 ns/op 1.09
Object access 1 prop 0.42000 ns/op 0.41300 ns/op 1.02
Map access 1 prop 0.30800 ns/op 0.29700 ns/op 1.04
Object get x1000 10.893 ns/op 18.193 ns/op 0.60
Map get x1000 1.0860 ns/op 1.0290 ns/op 1.06
Object set x1000 72.870 ns/op 130.52 ns/op 0.56
Map set x1000 48.406 ns/op 77.970 ns/op 0.62
Return object 10000 times 0.44150 ns/op 0.37330 ns/op 1.18
Throw Error 10000 times 6.0663 us/op 6.1184 us/op 0.99
enrSubnets - fastDeserialize 64 bits 2.8210 us/op 2.9990 us/op 0.94
enrSubnets - ssz BitVector 64 bits 849.00 ns/op 808.00 ns/op 1.05
enrSubnets - fastDeserialize 4 bits 458.00 ns/op 477.00 ns/op 0.96
enrSubnets - ssz BitVector 4 bits 849.00 ns/op 812.00 ns/op 1.05
prioritizePeers score -10:0 att 32-0.1 sync 2-0 84.969 us/op 97.874 us/op 0.87
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 126.10 us/op 123.09 us/op 1.02
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 234.47 us/op 226.79 us/op 1.03
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 334.07 us/op 491.89 us/op 0.68
prioritizePeers score 0:0 att 64-1 sync 4-1 409.55 us/op 457.44 us/op 0.90
RateTracker 1000000 limit, 1 obj count per request 188.92 ns/op 209.31 ns/op 0.90
RateTracker 1000000 limit, 2 obj count per request 139.33 ns/op 153.45 ns/op 0.91
RateTracker 1000000 limit, 4 obj count per request 112.84 ns/op 127.09 ns/op 0.89
RateTracker 1000000 limit, 8 obj count per request 99.840 ns/op 111.95 ns/op 0.89
RateTracker with prune 4.2450 us/op 4.6780 us/op 0.91
array of 16000 items push then shift 51.575 us/op 3.1936 us/op 16.15
LinkedList of 16000 items push then shift 15.599 ns/op 24.695 ns/op 0.63
array of 16000 items push then pop 220.04 ns/op 261.90 ns/op 0.84
LinkedList of 16000 items push then pop 14.382 ns/op 20.964 ns/op 0.69
array of 24000 items push then shift 77.338 us/op 4.5649 us/op 16.94
LinkedList of 24000 items push then shift 18.151 ns/op 25.733 ns/op 0.71
array of 24000 items push then pop 191.71 ns/op 195.83 ns/op 0.98
LinkedList of 24000 items push then pop 15.640 ns/op 21.022 ns/op 0.74
intersect bitArray bitLen 8 10.805 ns/op 11.821 ns/op 0.91
intersect array and set length 8 160.45 ns/op 168.21 ns/op 0.95
intersect bitArray bitLen 128 55.598 ns/op 61.978 ns/op 0.90
intersect array and set length 128 2.1780 us/op 2.4435 us/op 0.89
pass gossip attestations to forkchoice per slot 3.1438 ms/op 3.5089 ms/op 0.90
computeDeltas 3.1766 ms/op 3.4823 ms/op 0.91
computeProposerBoostScoreFromBalances 805.79 us/op 907.98 us/op 0.89
altair processAttestation - 250000 vs - 7PWei normalcase 3.5961 ms/op 4.0383 ms/op 0.89
altair processAttestation - 250000 vs - 7PWei worstcase 5.3187 ms/op 6.2407 ms/op 0.85
altair processAttestation - setStatus - 1/6 committees join 177.33 us/op 212.60 us/op 0.83
altair processAttestation - setStatus - 1/3 committees join 346.81 us/op 399.69 us/op 0.87
altair processAttestation - setStatus - 1/2 committees join 501.59 us/op 564.01 us/op 0.89
altair processAttestation - setStatus - 2/3 committees join 656.40 us/op 722.59 us/op 0.91
altair processAttestation - setStatus - 4/5 committees join 911.26 us/op 996.36 us/op 0.91
altair processAttestation - setStatus - 100% committees join 1.1108 ms/op 1.1864 ms/op 0.94
altair processBlock - 250000 vs - 7PWei normalcase 24.138 ms/op 26.971 ms/op 0.89
altair processBlock - 250000 vs - 7PWei normalcase hashState 34.710 ms/op 37.254 ms/op 0.93
altair processBlock - 250000 vs - 7PWei worstcase 84.962 ms/op 81.558 ms/op 1.04
altair processBlock - 250000 vs - 7PWei worstcase hashState 104.06 ms/op 106.76 ms/op 0.97
phase0 processBlock - 250000 vs - 7PWei normalcase 4.4538 ms/op 4.3884 ms/op 1.01
phase0 processBlock - 250000 vs - 7PWei worstcase 52.481 ms/op 47.621 ms/op 1.10
altair processEth1Data - 250000 vs - 7PWei normalcase 724.96 us/op 809.57 us/op 0.90
Tree 40 250000 create 696.73 ms/op 810.62 ms/op 0.86
Tree 40 250000 get(125000) 238.91 ns/op 287.54 ns/op 0.83
Tree 40 250000 set(125000) 2.0631 us/op 2.4087 us/op 0.86
Tree 40 250000 toArray() 26.537 ms/op 32.046 ms/op 0.83
Tree 40 250000 iterate all - toArray() + loop 27.762 ms/op 32.114 ms/op 0.86
Tree 40 250000 iterate all - get(i) 111.64 ms/op 110.78 ms/op 1.01
MutableVector 250000 create 13.027 ms/op 15.863 ms/op 0.82
MutableVector 250000 get(125000) 10.777 ns/op 13.033 ns/op 0.83
MutableVector 250000 set(125000) 515.52 ns/op 622.58 ns/op 0.83
MutableVector 250000 toArray() 5.6049 ms/op 7.0814 ms/op 0.79
MutableVector 250000 iterate all - toArray() + loop 5.8809 ms/op 7.3716 ms/op 0.80
MutableVector 250000 iterate all - get(i) 2.6697 ms/op 3.4385 ms/op 0.78
Array 250000 create 5.7278 ms/op 5.6073 ms/op 1.02
Array 250000 clone - spread 3.2508 ms/op 2.4805 ms/op 1.31
Array 250000 get(125000) 1.4900 ns/op 1.1270 ns/op 1.32
Array 250000 set(125000) 1.4980 ns/op 1.1280 ns/op 1.33
Array 250000 iterate all - loop 154.57 us/op 167.85 us/op 0.92
effectiveBalanceIncrements clone Uint8Array 300000 49.972 us/op 91.175 us/op 0.55
effectiveBalanceIncrements clone MutableVector 300000 618.00 ns/op 630.00 ns/op 0.98
effectiveBalanceIncrements rw all Uint8Array 300000 247.32 us/op 252.43 us/op 0.98
effectiveBalanceIncrements rw all MutableVector 300000 129.25 ms/op 157.41 ms/op 0.82
phase0 afterProcessEpoch - 250000 vs - 7PWei 197.49 ms/op 193.08 ms/op 1.02
phase0 beforeProcessEpoch - 250000 vs - 7PWei 56.862 ms/op 69.343 ms/op 0.82
altair processEpoch - mainnet_e81889 540.82 ms/op 570.35 ms/op 0.95
mainnet_e81889 - altair beforeProcessEpoch 134.72 ms/op 144.94 ms/op 0.93
mainnet_e81889 - altair processJustificationAndFinalization 23.263 us/op 26.230 us/op 0.89
mainnet_e81889 - altair processInactivityUpdates 8.6571 ms/op 11.504 ms/op 0.75
mainnet_e81889 - altair processRewardsAndPenalties 80.216 ms/op 91.914 ms/op 0.87
mainnet_e81889 - altair processRegistryUpdates 3.6080 us/op 3.3610 us/op 1.07
mainnet_e81889 - altair processSlashings 974.00 ns/op 832.00 ns/op 1.17
mainnet_e81889 - altair processEth1DataReset 1.0510 us/op 1.1600 us/op 0.91
mainnet_e81889 - altair processEffectiveBalanceUpdates 2.2226 ms/op 2.3485 ms/op 0.95
mainnet_e81889 - altair processSlashingsReset 4.4170 us/op 8.6470 us/op 0.51
mainnet_e81889 - altair processRandaoMixesReset 4.1050 us/op 8.4230 us/op 0.49
mainnet_e81889 - altair processHistoricalRootsUpdate 650.00 ns/op 1.1770 us/op 0.55
mainnet_e81889 - altair processParticipationFlagUpdates 2.9020 us/op 3.6170 us/op 0.80
mainnet_e81889 - altair processSyncCommitteeUpdates 789.00 ns/op 844.00 ns/op 0.93
mainnet_e81889 - altair afterProcessEpoch 198.44 ms/op 190.53 ms/op 1.04
phase0 processEpoch - mainnet_e58758 482.47 ms/op 514.50 ms/op 0.94
mainnet_e58758 - phase0 beforeProcessEpoch 173.45 ms/op 221.97 ms/op 0.78
mainnet_e58758 - phase0 processJustificationAndFinalization 24.066 us/op 22.169 us/op 1.09
mainnet_e58758 - phase0 processRewardsAndPenalties 68.689 ms/op 77.317 ms/op 0.89
mainnet_e58758 - phase0 processRegistryUpdates 11.849 us/op 14.662 us/op 0.81
mainnet_e58758 - phase0 processSlashings 1.0520 us/op 1.1000 us/op 0.96
mainnet_e58758 - phase0 processEth1DataReset 923.00 ns/op 1.1660 us/op 0.79
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 1.9547 ms/op 2.1145 ms/op 0.92
mainnet_e58758 - phase0 processSlashingsReset 5.3490 us/op 6.2720 us/op 0.85
mainnet_e58758 - phase0 processRandaoMixesReset 5.8950 us/op 8.6940 us/op 0.68
mainnet_e58758 - phase0 processHistoricalRootsUpdate 926.00 ns/op 998.00 ns/op 0.93
mainnet_e58758 - phase0 processParticipationRecordUpdates 4.7960 us/op 6.2970 us/op 0.76
mainnet_e58758 - phase0 afterProcessEpoch 164.04 ms/op 158.02 ms/op 1.04
phase0 processEffectiveBalanceUpdates - 250000 normalcase 2.0413 ms/op 2.6601 ms/op 0.77
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 2.4050 ms/op 3.1091 ms/op 0.77
altair processInactivityUpdates - 250000 normalcase 33.994 ms/op 52.529 ms/op 0.65
altair processInactivityUpdates - 250000 worstcase 41.190 ms/op 41.604 ms/op 0.99
phase0 processRegistryUpdates - 250000 normalcase 8.5990 us/op 11.511 us/op 0.75
phase0 processRegistryUpdates - 250000 badcase_full_deposits 455.05 us/op 552.28 us/op 0.82
phase0 processRegistryUpdates - 250000 worstcase 0.5 177.46 ms/op 216.08 ms/op 0.82
altair processRewardsAndPenalties - 250000 normalcase 107.72 ms/op 81.568 ms/op 1.32
altair processRewardsAndPenalties - 250000 worstcase 73.130 ms/op 129.12 ms/op 0.57
phase0 getAttestationDeltas - 250000 normalcase 11.789 ms/op 11.889 ms/op 0.99
phase0 getAttestationDeltas - 250000 worstcase 11.864 ms/op 11.901 ms/op 1.00
phase0 processSlashings - 250000 worstcase 5.0715 ms/op 5.4155 ms/op 0.94
altair processSyncCommitteeUpdates - 250000 295.51 ms/op 272.33 ms/op 1.09
BeaconState.hashTreeRoot - No change 635.00 ns/op 468.00 ns/op 1.36
BeaconState.hashTreeRoot - 1 full validator 67.315 us/op 57.790 us/op 1.16
BeaconState.hashTreeRoot - 32 full validator 667.79 us/op 565.78 us/op 1.18
BeaconState.hashTreeRoot - 512 full validator 7.0297 ms/op 6.1082 ms/op 1.15
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 83.352 us/op 71.860 us/op 1.16
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 1.2342 ms/op 1.0550 ms/op 1.17
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 14.522 ms/op 12.895 ms/op 1.13
BeaconState.hashTreeRoot - 1 balances 62.974 us/op 54.445 us/op 1.16
BeaconState.hashTreeRoot - 32 balances 563.26 us/op 469.15 us/op 1.20
BeaconState.hashTreeRoot - 512 balances 5.2511 ms/op 4.5854 ms/op 1.15
BeaconState.hashTreeRoot - 250000 balances 99.825 ms/op 85.406 ms/op 1.17
aggregationBits - 2048 els - zipIndexesInBitList 25.981 us/op 32.259 us/op 0.81
regular array get 100000 times 60.531 us/op 67.445 us/op 0.90
wrappedArray get 100000 times 60.555 us/op 67.446 us/op 0.90
arrayWithProxy get 100000 times 31.591 ms/op 28.658 ms/op 1.10
ssz.Root.equals 439.00 ns/op 527.00 ns/op 0.83
byteArrayEquals 489.00 ns/op 535.00 ns/op 0.91
shuffle list - 16384 els 11.427 ms/op 11.025 ms/op 1.04
shuffle list - 250000 els 166.92 ms/op 162.51 ms/op 1.03
processSlot - 1 slots 12.405 us/op 12.119 us/op 1.02
processSlot - 32 slots 1.8970 ms/op 1.7837 ms/op 1.06
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 373.70 us/op 350.96 us/op 1.06
getCommitteeAssignments - req 1 vs - 250000 vc 5.4681 ms/op 5.2699 ms/op 1.04
getCommitteeAssignments - req 100 vs - 250000 vc 7.9822 ms/op 7.2886 ms/op 1.10
getCommitteeAssignments - req 1000 vs - 250000 vc 8.5868 ms/op 7.7686 ms/op 1.11
computeProposers - vc 250000 19.091 ms/op 16.306 ms/op 1.17
computeEpochShuffling - vc 250000 170.21 ms/op 164.04 ms/op 1.04
getNextSyncCommittee - vc 250000 290.29 ms/op 271.57 ms/op 1.07

by benchmarkbot/action

@wemeetagain
Copy link
Member

Good find

@wemeetagain wemeetagain merged commit 2f0641a into unstable Jul 16, 2022
@wemeetagain wemeetagain deleted the dapplion/fix-panda-backslash branch July 16, 2022 18:41
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.

None yet

2 participants