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: bump @chainsafe/bls-keystore #6956

Merged
merged 2 commits into from
Jul 16, 2024
Merged

chore: bump @chainsafe/bls-keystore #6956

merged 2 commits into from
Jul 16, 2024

Conversation

wemeetagain
Copy link
Member

@wemeetagain wemeetagain commented Jul 15, 2024

Motivation

  • new @chainsafe/bls-keystore uses faster crypto

Description

@wemeetagain wemeetagain requested a review from a team as a code owner July 15, 2024 21:25
nflaig
nflaig previously approved these changes Jul 15, 2024
Copy link

codecov bot commented Jul 15, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 62.53%. Comparing base (f66aae4) to head (063fa72).

Additional details and impacted files
@@            Coverage Diff            @@
##           unstable    #6956   +/-   ##
=========================================
  Coverage     62.53%   62.53%           
=========================================
  Files           575      575           
  Lines         61068    61068           
  Branches       2136     2139    +3     
=========================================
  Hits          38187    38187           
  Misses        22842    22842           
  Partials         39       39           

Copy link
Contributor

github-actions bot commented Jul 15, 2024

Performance Report

✔️ no performance regression detected

🚀🚀 Significant benchmark improvement detected

Benchmark suite Current: 2fe6b6e Previous: 565bb3a Ratio
forkChoice updateHead vc 100000 bc 64 eq 0 523.34 us/op 1.7764 ms/op 0.29
forkChoice updateHead vc 600000 bc 64 eq 300000 20.580 ms/op 143.58 ms/op 0.14
Full benchmark results
Benchmark suite Current: 2fe6b6e Previous: 565bb3a Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 761.74 us/op 633.28 us/op 1.20
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 44.442 us/op 58.740 us/op 0.76
BLS verify - blst-native 1.1850 ms/op 1.2694 ms/op 0.93
BLS verifyMultipleSignatures 3 - blst-native 2.5148 ms/op 2.8667 ms/op 0.88
BLS verifyMultipleSignatures 8 - blst-native 5.5634 ms/op 6.1623 ms/op 0.90
BLS verifyMultipleSignatures 32 - blst-native 20.476 ms/op 22.584 ms/op 0.91
BLS verifyMultipleSignatures 64 - blst-native 40.215 ms/op 46.534 ms/op 0.86
BLS verifyMultipleSignatures 128 - blst-native 79.864 ms/op 85.043 ms/op 0.94
BLS deserializing 10000 signatures 837.98 ms/op 913.32 ms/op 0.92
BLS deserializing 100000 signatures 8.4643 s/op 9.4029 s/op 0.90
BLS verifyMultipleSignatures - same message - 3 - blst-native 1.2911 ms/op 1.2997 ms/op 0.99
BLS verifyMultipleSignatures - same message - 8 - blst-native 1.3809 ms/op 1.5994 ms/op 0.86
BLS verifyMultipleSignatures - same message - 32 - blst-native 2.1653 ms/op 2.3248 ms/op 0.93
BLS verifyMultipleSignatures - same message - 64 - blst-native 3.2202 ms/op 3.4023 ms/op 0.95
BLS verifyMultipleSignatures - same message - 128 - blst-native 5.3063 ms/op 6.7685 ms/op 0.78
BLS aggregatePubkeys 32 - blst-native 24.946 us/op 26.721 us/op 0.93
BLS aggregatePubkeys 128 - blst-native 95.942 us/op 99.246 us/op 0.97
notSeenSlots=1 numMissedVotes=1 numBadVotes=10 52.349 ms/op 87.629 ms/op 0.60
notSeenSlots=1 numMissedVotes=0 numBadVotes=4 49.474 ms/op 58.110 ms/op 0.85
notSeenSlots=2 numMissedVotes=1 numBadVotes=10 31.571 ms/op 45.877 ms/op 0.69
getSlashingsAndExits - default max 93.576 us/op 205.59 us/op 0.46
getSlashingsAndExits - 2k 273.45 us/op 395.36 us/op 0.69
proposeBlockBody type=full, size=empty 5.6200 ms/op 6.7670 ms/op 0.83
isKnown best case - 1 super set check 293.00 ns/op 630.00 ns/op 0.47
isKnown normal case - 2 super set checks 284.00 ns/op 589.00 ns/op 0.48
isKnown worse case - 16 super set checks 306.00 ns/op 892.00 ns/op 0.34
InMemoryCheckpointStateCache - add get delete 5.0770 us/op 9.8700 us/op 0.51
validate api signedAggregateAndProof - struct 2.5769 ms/op 2.9782 ms/op 0.87
validate gossip signedAggregateAndProof - struct 2.5936 ms/op 3.9296 ms/op 0.66
validate gossip attestation - vc 640000 1.2670 ms/op 1.6806 ms/op 0.75
batch validate gossip attestation - vc 640000 - chunk 32 158.56 us/op 231.61 us/op 0.68
batch validate gossip attestation - vc 640000 - chunk 64 138.11 us/op 180.79 us/op 0.76
batch validate gossip attestation - vc 640000 - chunk 128 129.67 us/op 137.85 us/op 0.94
batch validate gossip attestation - vc 640000 - chunk 256 124.68 us/op 132.98 us/op 0.94
pickEth1Vote - no votes 1.1866 ms/op 1.2409 ms/op 0.96
pickEth1Vote - max votes 9.0438 ms/op 10.410 ms/op 0.87
pickEth1Vote - Eth1Data hashTreeRoot value x2048 16.890 ms/op 18.516 ms/op 0.91
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 24.604 ms/op 22.949 ms/op 1.07
pickEth1Vote - Eth1Data fastSerialize value x2048 587.65 us/op 623.79 us/op 0.94
pickEth1Vote - Eth1Data fastSerialize tree x2048 5.0408 ms/op 4.9666 ms/op 1.01
bytes32 toHexString 622.00 ns/op 716.00 ns/op 0.87
bytes32 Buffer.toString(hex) 261.00 ns/op 323.00 ns/op 0.81
bytes32 Buffer.toString(hex) from Uint8Array 466.00 ns/op 493.00 ns/op 0.95
bytes32 Buffer.toString(hex) + 0x 279.00 ns/op 306.00 ns/op 0.91
Object access 1 prop 0.17700 ns/op 0.20600 ns/op 0.86
Map access 1 prop 0.13700 ns/op 0.15100 ns/op 0.91
Object get x1000 6.3130 ns/op 6.4370 ns/op 0.98
Map get x1000 6.4990 ns/op 7.2110 ns/op 0.90
Object set x1000 40.347 ns/op 58.682 ns/op 0.69
Map set x1000 30.534 ns/op 39.737 ns/op 0.77
Return object 10000 times 0.31490 ns/op 0.33010 ns/op 0.95
Throw Error 10000 times 3.5440 us/op 3.6628 us/op 0.97
fastMsgIdFn sha256 / 200 bytes 2.3930 us/op 2.4270 us/op 0.99
fastMsgIdFn h32 xxhash / 200 bytes 292.00 ns/op 327.00 ns/op 0.89
fastMsgIdFn h64 xxhash / 200 bytes 283.00 ns/op 301.00 ns/op 0.94
fastMsgIdFn sha256 / 1000 bytes 7.4730 us/op 7.9250 us/op 0.94
fastMsgIdFn h32 xxhash / 1000 bytes 434.00 ns/op 468.00 ns/op 0.93
fastMsgIdFn h64 xxhash / 1000 bytes 357.00 ns/op 376.00 ns/op 0.95
fastMsgIdFn sha256 / 10000 bytes 65.580 us/op 69.512 us/op 0.94
fastMsgIdFn h32 xxhash / 10000 bytes 1.9870 us/op 2.0420 us/op 0.97
fastMsgIdFn h64 xxhash / 10000 bytes 1.2510 us/op 1.3130 us/op 0.95
send data - 1000 256B messages 14.981 ms/op 15.484 ms/op 0.97
send data - 1000 512B messages 20.581 ms/op 21.130 ms/op 0.97
send data - 1000 1024B messages 29.034 ms/op 30.679 ms/op 0.95
send data - 1000 1200B messages 31.299 ms/op 24.382 ms/op 1.28
send data - 1000 2048B messages 39.639 ms/op 35.785 ms/op 1.11
send data - 1000 4096B messages 34.608 ms/op 37.504 ms/op 0.92
send data - 1000 16384B messages 84.483 ms/op 79.230 ms/op 1.07
send data - 1000 65536B messages 241.76 ms/op 250.89 ms/op 0.96
enrSubnets - fastDeserialize 64 bits 1.6920 us/op 1.6860 us/op 1.00
enrSubnets - ssz BitVector 64 bits 478.00 ns/op 488.00 ns/op 0.98
enrSubnets - fastDeserialize 4 bits 219.00 ns/op 225.00 ns/op 0.97
enrSubnets - ssz BitVector 4 bits 473.00 ns/op 490.00 ns/op 0.97
prioritizePeers score -10:0 att 32-0.1 sync 2-0 237.78 us/op 197.14 us/op 1.21
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 264.75 us/op 216.36 us/op 1.22
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 429.37 us/op 336.29 us/op 1.28
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 426.78 us/op 473.83 us/op 0.90
prioritizePeers score 0:0 att 64-1 sync 4-1 817.67 us/op 919.25 us/op 0.89
array of 16000 items push then shift 1.7158 us/op 1.7483 us/op 0.98
LinkedList of 16000 items push then shift 7.9380 ns/op 9.0000 ns/op 0.88
array of 16000 items push then pop 139.81 ns/op 150.88 ns/op 0.93
LinkedList of 16000 items push then pop 7.6060 ns/op 8.4890 ns/op 0.90
array of 24000 items push then shift 2.5991 us/op 2.6326 us/op 0.99
LinkedList of 24000 items push then shift 8.0650 ns/op 9.1460 ns/op 0.88
array of 24000 items push then pop 188.99 ns/op 196.23 ns/op 0.96
LinkedList of 24000 items push then pop 7.9070 ns/op 8.8250 ns/op 0.90
intersect bitArray bitLen 8 6.8950 ns/op 7.0540 ns/op 0.98
intersect array and set length 8 60.364 ns/op 92.769 ns/op 0.65
intersect bitArray bitLen 128 31.990 ns/op 33.831 ns/op 0.95
intersect array and set length 128 918.09 ns/op 1.0471 us/op 0.88
bitArray.getTrueBitIndexes() bitLen 128 2.1680 us/op 2.5530 us/op 0.85
bitArray.getTrueBitIndexes() bitLen 248 4.3310 us/op 4.1540 us/op 1.04
bitArray.getTrueBitIndexes() bitLen 512 7.8290 us/op 9.6810 us/op 0.81
Buffer.concat 32 items 1.0170 us/op 1.0280 us/op 0.99
Uint8Array.set 32 items 1.6650 us/op 1.7170 us/op 0.97
Buffer.copy 1.9050 us/op 2.1230 us/op 0.90
Uint8Array.set - with subarray 2.9230 us/op 3.5780 us/op 0.82
Uint8Array.set - without subarray 1.5200 us/op 1.8090 us/op 0.84
getUint32 - dataview 311.00 ns/op 341.00 ns/op 0.91
getUint32 - manual 250.00 ns/op 309.00 ns/op 0.81
Set add up to 64 items then delete first 2.7675 us/op 3.1570 us/op 0.88
OrderedSet add up to 64 items then delete first 4.2365 us/op 5.0539 us/op 0.84
Set add up to 64 items then delete last 3.2288 us/op 3.6357 us/op 0.89
OrderedSet add up to 64 items then delete last 4.5118 us/op 5.2202 us/op 0.86
Set add up to 64 items then delete middle 3.2817 us/op 3.5000 us/op 0.94
OrderedSet add up to 64 items then delete middle 7.0330 us/op 7.0538 us/op 1.00
Set add up to 128 items then delete first 7.0720 us/op 7.0306 us/op 1.01
OrderedSet add up to 128 items then delete first 10.080 us/op 11.443 us/op 0.88
Set add up to 128 items then delete last 6.3226 us/op 7.0338 us/op 0.90
OrderedSet add up to 128 items then delete last 10.293 us/op 10.978 us/op 0.94
Set add up to 128 items then delete middle 6.1484 us/op 7.1744 us/op 0.86
OrderedSet add up to 128 items then delete middle 16.954 us/op 18.154 us/op 0.93
Set add up to 256 items then delete first 13.907 us/op 13.793 us/op 1.01
OrderedSet add up to 256 items then delete first 21.769 us/op 23.015 us/op 0.95
Set add up to 256 items then delete last 13.335 us/op 17.018 us/op 0.78
OrderedSet add up to 256 items then delete last 19.398 us/op 26.830 us/op 0.72
Set add up to 256 items then delete middle 13.329 us/op 18.966 us/op 0.70
OrderedSet add up to 256 items then delete middle 49.418 us/op 53.965 us/op 0.92
transfer serialized Status (84 B) 1.4390 us/op 1.6400 us/op 0.88
copy serialized Status (84 B) 1.2880 us/op 1.4000 us/op 0.92
transfer serialized SignedVoluntaryExit (112 B) 1.6790 us/op 1.6060 us/op 1.05
copy serialized SignedVoluntaryExit (112 B) 1.4640 us/op 1.5240 us/op 0.96
transfer serialized ProposerSlashing (416 B) 2.4200 us/op 2.2890 us/op 1.06
copy serialized ProposerSlashing (416 B) 2.8240 us/op 2.2660 us/op 1.25
transfer serialized Attestation (485 B) 2.8860 us/op 2.4330 us/op 1.19
copy serialized Attestation (485 B) 2.3490 us/op 2.5440 us/op 0.92
transfer serialized AttesterSlashing (33232 B) 2.3070 us/op 2.9550 us/op 0.78
copy serialized AttesterSlashing (33232 B) 9.8440 us/op 10.977 us/op 0.90
transfer serialized Small SignedBeaconBlock (128000 B) 4.2530 us/op 4.5570 us/op 0.93
copy serialized Small SignedBeaconBlock (128000 B) 29.249 us/op 40.133 us/op 0.73
transfer serialized Avg SignedBeaconBlock (200000 B) 4.9980 us/op 5.8520 us/op 0.85
copy serialized Avg SignedBeaconBlock (200000 B) 41.037 us/op 59.166 us/op 0.69
transfer serialized BlobsSidecar (524380 B) 5.8840 us/op 8.4870 us/op 0.69
copy serialized BlobsSidecar (524380 B) 130.49 us/op 197.86 us/op 0.66
transfer serialized Big SignedBeaconBlock (1000000 B) 5.3380 us/op 11.606 us/op 0.46
copy serialized Big SignedBeaconBlock (1000000 B) 272.38 us/op 367.21 us/op 0.74
pass gossip attestations to forkchoice per slot 3.6435 ms/op 4.6367 ms/op 0.79
forkChoice updateHead vc 100000 bc 64 eq 0 523.34 us/op 1.7764 ms/op 0.29
forkChoice updateHead vc 600000 bc 64 eq 0 3.3582 ms/op 4.4498 ms/op 0.75
forkChoice updateHead vc 1000000 bc 64 eq 0 6.4543 ms/op 9.5554 ms/op 0.68
forkChoice updateHead vc 600000 bc 320 eq 0 3.3444 ms/op 4.9632 ms/op 0.67
forkChoice updateHead vc 600000 bc 1200 eq 0 3.5581 ms/op 6.3780 ms/op 0.56
forkChoice updateHead vc 600000 bc 7200 eq 0 4.2708 ms/op 7.0790 ms/op 0.60
forkChoice updateHead vc 600000 bc 64 eq 1000 11.267 ms/op 20.761 ms/op 0.54
forkChoice updateHead vc 600000 bc 64 eq 10000 11.630 ms/op 16.367 ms/op 0.71
forkChoice updateHead vc 600000 bc 64 eq 300000 20.580 ms/op 143.58 ms/op 0.14
computeDeltas 500000 validators 300 proto nodes 4.0688 ms/op 7.8175 ms/op 0.52
computeDeltas 500000 validators 1200 proto nodes 4.0819 ms/op 8.8647 ms/op 0.46
computeDeltas 500000 validators 7200 proto nodes 4.1085 ms/op 8.6668 ms/op 0.47
computeDeltas 750000 validators 300 proto nodes 6.0867 ms/op 12.395 ms/op 0.49
computeDeltas 750000 validators 1200 proto nodes 5.6865 ms/op 11.132 ms/op 0.51
computeDeltas 750000 validators 7200 proto nodes 5.7978 ms/op 11.097 ms/op 0.52
computeDeltas 1400000 validators 300 proto nodes 10.408 ms/op 17.149 ms/op 0.61
computeDeltas 1400000 validators 1200 proto nodes 11.191 ms/op 15.304 ms/op 0.73
computeDeltas 1400000 validators 7200 proto nodes 10.278 ms/op 15.582 ms/op 0.66
computeDeltas 2100000 validators 300 proto nodes 15.890 ms/op 24.044 ms/op 0.66
computeDeltas 2100000 validators 1200 proto nodes 17.004 ms/op 24.789 ms/op 0.69
computeDeltas 2100000 validators 7200 proto nodes 17.352 ms/op 22.632 ms/op 0.77
altair processAttestation - 250000 vs - 7PWei normalcase 2.8583 ms/op 3.4206 ms/op 0.84
altair processAttestation - 250000 vs - 7PWei worstcase 4.5237 ms/op 4.9258 ms/op 0.92
altair processAttestation - setStatus - 1/6 committees join 148.60 us/op 123.51 us/op 1.20
altair processAttestation - setStatus - 1/3 committees join 278.21 us/op 248.13 us/op 1.12
altair processAttestation - setStatus - 1/2 committees join 415.20 us/op 336.99 us/op 1.23
altair processAttestation - setStatus - 2/3 committees join 455.36 us/op 380.87 us/op 1.20
altair processAttestation - setStatus - 4/5 committees join 671.17 us/op 560.55 us/op 1.20
altair processAttestation - setStatus - 100% committees join 779.25 us/op 761.27 us/op 1.02
altair processBlock - 250000 vs - 7PWei normalcase 4.7719 ms/op 7.2838 ms/op 0.66
altair processBlock - 250000 vs - 7PWei normalcase hashState 36.038 ms/op 28.151 ms/op 1.28
altair processBlock - 250000 vs - 7PWei worstcase 46.881 ms/op 46.258 ms/op 1.01
altair processBlock - 250000 vs - 7PWei worstcase hashState 91.362 ms/op 105.03 ms/op 0.87
phase0 processBlock - 250000 vs - 7PWei normalcase 2.4941 ms/op 2.7629 ms/op 0.90
phase0 processBlock - 250000 vs - 7PWei worstcase 32.534 ms/op 32.254 ms/op 1.01
altair processEth1Data - 250000 vs - 7PWei normalcase 554.11 us/op 650.92 us/op 0.85
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 10.335 us/op 9.1700 us/op 1.13
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 48.801 us/op 33.860 us/op 1.44
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 16.322 us/op 11.011 us/op 1.48
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 11.565 us/op 9.3000 us/op 1.24
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 138.24 us/op 129.63 us/op 1.07
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 729.15 us/op 704.47 us/op 1.04
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 946.45 us/op 949.91 us/op 1.00
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 955.54 us/op 935.97 us/op 1.02
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 2.7608 ms/op 2.6143 ms/op 1.06
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 1.7369 ms/op 1.7838 ms/op 0.97
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 4.1840 ms/op 4.2015 ms/op 1.00
Tree 40 250000 create 282.98 ms/op 444.56 ms/op 0.64
Tree 40 250000 get(125000) 154.40 ns/op 172.32 ns/op 0.90
Tree 40 250000 set(125000) 776.70 ns/op 958.34 ns/op 0.81
Tree 40 250000 toArray() 21.710 ms/op 23.664 ms/op 0.92
Tree 40 250000 iterate all - toArray() + loop 21.464 ms/op 21.777 ms/op 0.99
Tree 40 250000 iterate all - get(i) 60.821 ms/op 63.402 ms/op 0.96
MutableVector 250000 create 11.413 ms/op 16.663 ms/op 0.68
MutableVector 250000 get(125000) 6.4570 ns/op 10.055 ns/op 0.64
MutableVector 250000 set(125000) 255.30 ns/op 303.97 ns/op 0.84
MutableVector 250000 toArray() 4.5485 ms/op 5.3466 ms/op 0.85
MutableVector 250000 iterate all - toArray() + loop 4.4063 ms/op 5.3443 ms/op 0.82
MutableVector 250000 iterate all - get(i) 1.6993 ms/op 1.8061 ms/op 0.94
Array 250000 create 4.4560 ms/op 5.2724 ms/op 0.85
Array 250000 clone - spread 1.5115 ms/op 2.0061 ms/op 0.75
Array 250000 get(125000) 0.44400 ns/op 0.46400 ns/op 0.96
Array 250000 set(125000) 0.46400 ns/op 0.50400 ns/op 0.92
Array 250000 iterate all - loop 112.19 us/op 86.198 us/op 1.30
effectiveBalanceIncrements clone Uint8Array 300000 38.452 us/op 65.298 us/op 0.59
effectiveBalanceIncrements clone MutableVector 300000 134.00 ns/op 142.00 ns/op 0.94
effectiveBalanceIncrements rw all Uint8Array 300000 204.83 us/op 207.79 us/op 0.99
effectiveBalanceIncrements rw all MutableVector 300000 73.562 ms/op 95.418 ms/op 0.77
phase0 afterProcessEpoch - 250000 vs - 7PWei 89.663 ms/op 93.918 ms/op 0.95
Array.fill - length 1000000 4.3070 ms/op 6.6318 ms/op 0.65
Array push - length 1000000 23.732 ms/op 31.247 ms/op 0.76
Array.get 0.30583 ns/op 0.33203 ns/op 0.92
Uint8Array.get 0.45063 ns/op 0.46746 ns/op 0.96
phase0 beforeProcessEpoch - 250000 vs - 7PWei 24.716 ms/op 25.576 ms/op 0.97
altair processEpoch - mainnet_e81889 364.45 ms/op 514.65 ms/op 0.71
mainnet_e81889 - altair beforeProcessEpoch 36.994 ms/op 43.567 ms/op 0.85
mainnet_e81889 - altair processJustificationAndFinalization 18.471 us/op 19.409 us/op 0.95
mainnet_e81889 - altair processInactivityUpdates 7.8535 ms/op 8.5069 ms/op 0.92
mainnet_e81889 - altair processRewardsAndPenalties 61.684 ms/op 56.652 ms/op 1.09
mainnet_e81889 - altair processRegistryUpdates 3.7070 us/op 4.1090 us/op 0.90
mainnet_e81889 - altair processSlashings 599.00 ns/op 891.00 ns/op 0.67
mainnet_e81889 - altair processEth1DataReset 558.00 ns/op 864.00 ns/op 0.65
mainnet_e81889 - altair processEffectiveBalanceUpdates 1.7220 ms/op 1.4890 ms/op 1.16
mainnet_e81889 - altair processSlashingsReset 6.9250 us/op 5.7870 us/op 1.20
mainnet_e81889 - altair processRandaoMixesReset 6.6760 us/op 10.320 us/op 0.65
mainnet_e81889 - altair processHistoricalRootsUpdate 1.0630 us/op 1.1440 us/op 0.93
mainnet_e81889 - altair processParticipationFlagUpdates 4.4930 us/op 4.3040 us/op 1.04
mainnet_e81889 - altair processSyncCommitteeUpdates 1.0320 us/op 1.2010 us/op 0.86
mainnet_e81889 - altair afterProcessEpoch 97.619 ms/op 101.41 ms/op 0.96
capella processEpoch - mainnet_e217614 1.3620 s/op 1.1182 s/op 1.22
mainnet_e217614 - capella beforeProcessEpoch 144.30 ms/op 104.72 ms/op 1.38
mainnet_e217614 - capella processJustificationAndFinalization 13.629 us/op 20.094 us/op 0.68
mainnet_e217614 - capella processInactivityUpdates 19.061 ms/op 20.525 ms/op 0.93
mainnet_e217614 - capella processRewardsAndPenalties 212.64 ms/op 233.27 ms/op 0.91
mainnet_e217614 - capella processRegistryUpdates 13.733 us/op 13.349 us/op 1.03
mainnet_e217614 - capella processSlashings 465.00 ns/op 441.00 ns/op 1.05
mainnet_e217614 - capella processEth1DataReset 379.00 ns/op 329.00 ns/op 1.15
mainnet_e217614 - capella processEffectiveBalanceUpdates 15.917 ms/op 14.000 ms/op 1.14
mainnet_e217614 - capella processSlashingsReset 7.7700 us/op 3.6700 us/op 2.12
mainnet_e217614 - capella processRandaoMixesReset 5.7840 us/op 8.5080 us/op 0.68
mainnet_e217614 - capella processHistoricalRootsUpdate 929.00 ns/op 753.00 ns/op 1.23
mainnet_e217614 - capella processParticipationFlagUpdates 2.6430 us/op 2.4780 us/op 1.07
mainnet_e217614 - capella afterProcessEpoch 268.54 ms/op 277.31 ms/op 0.97
phase0 processEpoch - mainnet_e58758 313.47 ms/op 431.63 ms/op 0.73
mainnet_e58758 - phase0 beforeProcessEpoch 77.371 ms/op 103.34 ms/op 0.75
mainnet_e58758 - phase0 processJustificationAndFinalization 18.767 us/op 26.796 us/op 0.70
mainnet_e58758 - phase0 processRewardsAndPenalties 30.404 ms/op 44.964 ms/op 0.68
mainnet_e58758 - phase0 processRegistryUpdates 10.036 us/op 19.176 us/op 0.52
mainnet_e58758 - phase0 processSlashings 520.00 ns/op 1.0020 us/op 0.52
mainnet_e58758 - phase0 processEth1DataReset 559.00 ns/op 1.2630 us/op 0.44
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 1.0979 ms/op 1.1879 ms/op 0.92
mainnet_e58758 - phase0 processSlashingsReset 3.3120 us/op 4.7680 us/op 0.69
mainnet_e58758 - phase0 processRandaoMixesReset 6.1830 us/op 4.5510 us/op 1.36
mainnet_e58758 - phase0 processHistoricalRootsUpdate 873.00 ns/op 375.00 ns/op 2.33
mainnet_e58758 - phase0 processParticipationRecordUpdates 4.7610 us/op 3.5930 us/op 1.33
mainnet_e58758 - phase0 afterProcessEpoch 82.527 ms/op 79.992 ms/op 1.03
phase0 processEffectiveBalanceUpdates - 250000 normalcase 1.5985 ms/op 1.3157 ms/op 1.21
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 2.2898 ms/op 2.4086 ms/op 0.95
altair processInactivityUpdates - 250000 normalcase 19.449 ms/op 17.938 ms/op 1.08
altair processInactivityUpdates - 250000 worstcase 18.006 ms/op 16.122 ms/op 1.12
phase0 processRegistryUpdates - 250000 normalcase 10.164 us/op 9.8820 us/op 1.03
phase0 processRegistryUpdates - 250000 badcase_full_deposits 353.18 us/op 316.74 us/op 1.12
phase0 processRegistryUpdates - 250000 worstcase 0.5 143.24 ms/op 142.08 ms/op 1.01
altair processRewardsAndPenalties - 250000 normalcase 41.834 ms/op 50.215 ms/op 0.83
altair processRewardsAndPenalties - 250000 worstcase 42.714 ms/op 41.247 ms/op 1.04
phase0 getAttestationDeltas - 250000 normalcase 9.1915 ms/op 8.1235 ms/op 1.13
phase0 getAttestationDeltas - 250000 worstcase 11.123 ms/op 8.0131 ms/op 1.39
phase0 processSlashings - 250000 worstcase 114.17 us/op 96.809 us/op 1.18
altair processSyncCommitteeUpdates - 250000 142.02 ms/op 133.06 ms/op 1.07
BeaconState.hashTreeRoot - No change 437.00 ns/op 334.00 ns/op 1.31
BeaconState.hashTreeRoot - 1 full validator 127.15 us/op 158.46 us/op 0.80
BeaconState.hashTreeRoot - 32 full validator 1.1902 ms/op 1.5243 ms/op 0.78
BeaconState.hashTreeRoot - 512 full validator 11.762 ms/op 15.466 ms/op 0.76
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 122.38 us/op 178.42 us/op 0.69
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 1.7160 ms/op 1.8179 ms/op 0.94
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 24.205 ms/op 24.869 ms/op 0.97
BeaconState.hashTreeRoot - 1 balances 96.455 us/op 86.640 us/op 1.11
BeaconState.hashTreeRoot - 32 balances 1.0428 ms/op 1.2757 ms/op 0.82
BeaconState.hashTreeRoot - 512 balances 10.976 ms/op 7.1415 ms/op 1.54
BeaconState.hashTreeRoot - 250000 balances 200.27 ms/op 177.43 ms/op 1.13
aggregationBits - 2048 els - zipIndexesInBitList 30.749 us/op 23.783 us/op 1.29
byteArrayEquals 32 56.534 ns/op 53.833 ns/op 1.05
Buffer.compare 32 18.524 ns/op 17.737 ns/op 1.04
byteArrayEquals 1024 1.6502 us/op 1.6036 us/op 1.03
Buffer.compare 1024 28.660 ns/op 26.102 ns/op 1.10
byteArrayEquals 16384 26.438 us/op 25.362 us/op 1.04
Buffer.compare 16384 209.62 ns/op 187.04 ns/op 1.12
byteArrayEquals 123687377 207.55 ms/op 192.33 ms/op 1.08
Buffer.compare 123687377 9.6882 ms/op 8.6562 ms/op 1.12
byteArrayEquals 32 - diff last byte 55.933 ns/op 53.517 ns/op 1.05
Buffer.compare 32 - diff last byte 18.901 ns/op 17.030 ns/op 1.11
byteArrayEquals 1024 - diff last byte 1.6744 us/op 1.6128 us/op 1.04
Buffer.compare 1024 - diff last byte 27.476 ns/op 28.443 ns/op 0.97
byteArrayEquals 16384 - diff last byte 26.783 us/op 26.612 us/op 1.01
Buffer.compare 16384 - diff last byte 216.17 ns/op 206.48 ns/op 1.05
byteArrayEquals 123687377 - diff last byte 196.80 ms/op 193.01 ms/op 1.02
Buffer.compare 123687377 - diff last byte 7.4282 ms/op 7.7267 ms/op 0.96
byteArrayEquals 32 - random bytes 5.3560 ns/op 5.3130 ns/op 1.01
Buffer.compare 32 - random bytes 17.524 ns/op 17.693 ns/op 0.99
byteArrayEquals 1024 - random bytes 5.3620 ns/op 5.2400 ns/op 1.02
Buffer.compare 1024 - random bytes 17.718 ns/op 17.712 ns/op 1.00
byteArrayEquals 16384 - random bytes 5.5260 ns/op 5.2050 ns/op 1.06
Buffer.compare 16384 - random bytes 17.709 ns/op 17.571 ns/op 1.01
byteArrayEquals 123687377 - random bytes 6.7800 ns/op 6.6100 ns/op 1.03
Buffer.compare 123687377 - random bytes 19.910 ns/op 19.710 ns/op 1.01
regular array get 100000 times 35.460 us/op 41.115 us/op 0.86
wrappedArray get 100000 times 33.257 us/op 33.379 us/op 1.00
arrayWithProxy get 100000 times 12.698 ms/op 13.163 ms/op 0.96
ssz.Root.equals 46.144 ns/op 46.136 ns/op 1.00
byteArrayEquals 45.741 ns/op 45.234 ns/op 1.01
Buffer.compare 10.529 ns/op 10.679 ns/op 0.99
shuffle list - 16384 els 6.4554 ms/op 6.4464 ms/op 1.00
shuffle list - 250000 els 94.915 ms/op 96.394 ms/op 0.98
processSlot - 1 slots 12.936 us/op 15.013 us/op 0.86
processSlot - 32 slots 2.2499 ms/op 2.8078 ms/op 0.80
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 36.194 ms/op 38.016 ms/op 0.95
getCommitteeAssignments - req 1 vs - 250000 vc 2.1860 ms/op 2.1869 ms/op 1.00
getCommitteeAssignments - req 100 vs - 250000 vc 4.2198 ms/op 4.3434 ms/op 0.97
getCommitteeAssignments - req 1000 vs - 250000 vc 4.5674 ms/op 4.5466 ms/op 1.00
findModifiedValidators - 10000 modified validators 272.83 ms/op 337.84 ms/op 0.81
findModifiedValidators - 1000 modified validators 196.34 ms/op 236.11 ms/op 0.83
findModifiedValidators - 100 modified validators 181.04 ms/op 218.41 ms/op 0.83
findModifiedValidators - 10 modified validators 195.84 ms/op 244.01 ms/op 0.80
findModifiedValidators - 1 modified validators 169.67 ms/op 261.29 ms/op 0.65
findModifiedValidators - no difference 162.19 ms/op 247.94 ms/op 0.65
compare ViewDUs 3.2013 s/op 4.4383 s/op 0.72
compare each validator Uint8Array 1.2608 s/op 1.6716 s/op 0.75
compare ViewDU to Uint8Array 1.1906 s/op 1.3475 s/op 0.88
migrate state 1000000 validators, 24 modified, 0 new 571.04 ms/op 689.91 ms/op 0.83
migrate state 1000000 validators, 1700 modified, 1000 new 843.42 ms/op 823.24 ms/op 1.02
migrate state 1000000 validators, 3400 modified, 2000 new 1.0144 s/op 1.0456 s/op 0.97
migrate state 1500000 validators, 24 modified, 0 new 633.70 ms/op 621.25 ms/op 1.02
migrate state 1500000 validators, 1700 modified, 1000 new 854.70 ms/op 951.58 ms/op 0.90
migrate state 1500000 validators, 3400 modified, 2000 new 979.33 ms/op 1.1062 s/op 0.89
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 4.6800 ns/op 5.0900 ns/op 0.92
state getBlockRootAtSlot - 250000 vs - 7PWei 480.09 ns/op 1.0223 us/op 0.47
computeProposers - vc 250000 6.8614 ms/op 8.2952 ms/op 0.83
computeEpochShuffling - vc 250000 95.739 ms/op 104.52 ms/op 0.92
getNextSyncCommittee - vc 250000 122.88 ms/op 134.49 ms/op 0.91
computeSigningRoot for AttestationData 19.809 us/op 21.995 us/op 0.90
hash AttestationData serialized data then Buffer.toString(base64) 1.5663 us/op 1.6609 us/op 0.94
toHexString serialized data 982.12 ns/op 992.39 ns/op 0.99
Buffer.toString(base64) 188.07 ns/op 208.49 ns/op 0.90

by benchmarkbot/action

@nflaig nflaig enabled auto-merge (squash) July 16, 2024 11:21
@nflaig nflaig merged commit c6369ee into unstable Jul 16, 2024
26 checks passed
@nflaig nflaig deleted the cayman/bump-keystore branch July 16, 2024 12:20
@wemeetagain
Copy link
Member Author

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

Improve key decryption times for validator client keystores
2 participants