Skip to content

Commit

Permalink
ci: fix incorrect build caching (#6731)
Browse files Browse the repository at this point in the history
fix: incorrect build caching
  • Loading branch information
jeluard committed May 3, 2024
1 parent 6b26136 commit 8c55820
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions .github/actions/setup-and-build/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ runs:
lib/
packages/*/lib
packages/*/.git-data.json
key: ${{ runner.os }}-node-${{ inputs.node }}-${{ github.sha }}
key: ${{ runner.os }}-${{ runner.arch }}-node-${{ inputs.node }}-${{ github.sha }}

- name: Install & build
if: steps.cache-build-restore.outputs.cache-hit != 'true'
Expand All @@ -55,4 +55,4 @@ runs:
lib/
packages/*/lib
packages/*/.git-data.json
key: ${{ runner.os }}-node-${{ inputs.node }}-${{ github.sha }}
key: ${{ runner.os }}-${{ runner.arch }}-node-${{ inputs.node }}-${{ github.sha }}

1 comment on commit 8c55820

@github-actions
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Performance Alert ⚠️

Possible performance regression was detected for some benchmarks.
Benchmark result of this commit is worse than the previous benchmark result exceeding threshold.

Benchmark suite Current: 8c55820 Previous: 6b26136 Ratio
BLS verify - blst-native 4.6220 ms/op 1.3262 ms/op 3.49
BLS verifyMultipleSignatures - same message - 32 - blst-native 7.5494 ms/op 2.3328 ms/op 3.24
BLS verifyMultipleSignatures - same message - 64 - blst-native 10.497 ms/op 3.3811 ms/op 3.10
getSlashingsAndExits - 2k 2.2596 ms/op 389.79 us/op 5.80
altair processAttestation - 250000 vs - 7PWei worstcase 10.646 ms/op 2.9223 ms/op 3.64
altair processAttestation - setStatus - 1/6 committees join 470.01 us/op 135.40 us/op 3.47
altair processAttestation - setStatus - 1/3 committees join 814.17 us/op 267.83 us/op 3.04
altair processAttestation - setStatus - 1/2 committees join 1.2769 ms/op 348.11 us/op 3.67
altair processAttestation - setStatus - 2/3 committees join 1.7340 ms/op 435.24 us/op 3.98
altair processAttestation - setStatus - 4/5 committees join 2.9447 ms/op 633.17 us/op 4.65
altair processAttestation - setStatus - 100% committees join 3.0049 ms/op 714.85 us/op 4.20
altair processBlock - 250000 vs - 7PWei worstcase 120.51 ms/op 33.820 ms/op 3.56
altair processBlock - 250000 vs - 7PWei worstcase hashState 329.24 ms/op 87.994 ms/op 3.74
phase0 processBlock - 250000 vs - 7PWei normalcase 8.8081 ms/op 2.2620 ms/op 3.89
phase0 processBlock - 250000 vs - 7PWei worstcase 92.794 ms/op 30.920 ms/op 3.00
altair processEth1Data - 250000 vs - 7PWei normalcase 1.9698 ms/op 447.86 us/op 4.40
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 41.794 us/op 7.0820 us/op 5.90
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 64.244 us/op 19.889 us/op 3.23
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 45.205 us/op 14.004 us/op 3.23
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 3.6116 ms/op 1.1609 ms/op 3.11
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 7.7213 ms/op 2.4326 ms/op 3.17
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 16.270 ms/op 4.9442 ms/op 3.29
phase0 afterProcessEpoch - 250000 vs - 7PWei 478.32 ms/op 120.91 ms/op 3.96
getCommitteeAssignments - req 1000 vs - 250000 vc 14.745 ms/op 4.3075 ms/op 3.42
findModifiedValidators - 10000 modified validators 1.1368 s/op 354.67 ms/op 3.21
findModifiedValidators - 1000 modified validators 876.43 ms/op 205.90 ms/op 4.26
findModifiedValidators - 100 modified validators 785.94 ms/op 206.21 ms/op 3.81
findModifiedValidators - 10 modified validators 722.83 ms/op 197.81 ms/op 3.65
findModifiedValidators - 1 modified validators 773.27 ms/op 210.29 ms/op 3.68
findModifiedValidators - no difference 702.18 ms/op 191.42 ms/op 3.67
migrate state 1000000 validators, 1700 modified, 1000 new 4.6549 s/op 1.5047 s/op 3.09
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 19.810 ns/op 5.1900 ns/op 3.82
computeEpochShuffling - vc 250000 500.90 ms/op 147.59 ms/op 3.39
getNextSyncCommittee - vc 250000 561.19 ms/op 167.65 ms/op 3.35
computeSigningRoot for AttestationData 92.298 us/op 28.251 us/op 3.27
hash AttestationData serialized data then Buffer.toString(base64) 7.5467 us/op 2.4102 us/op 3.13
toHexString serialized data 4.3130 us/op 1.1085 us/op 3.89
Buffer.toString(base64) 810.64 ns/op 228.94 ns/op 3.54
Full benchmark results
Benchmark suite Current: 8c55820 Previous: 6b26136 Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 2.3029 ms/op 1.1095 ms/op 2.08
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 242.33 us/op 96.692 us/op 2.51
BLS verify - blst-native 4.6220 ms/op 1.3262 ms/op 3.49
BLS verifyMultipleSignatures 3 - blst-native 7.2131 ms/op 2.5426 ms/op 2.84
BLS verifyMultipleSignatures 8 - blst-native 14.164 ms/op 5.4502 ms/op 2.60
BLS verifyMultipleSignatures 32 - blst-native 41.266 ms/op 19.745 ms/op 2.09
BLS verifyMultipleSignatures 64 - blst-native 113.27 ms/op 38.689 ms/op 2.93
BLS verifyMultipleSignatures 128 - blst-native 177.83 ms/op 76.726 ms/op 2.32
BLS deserializing 10000 signatures 2.5177 s/op 909.71 ms/op 2.77
BLS deserializing 100000 signatures 24.749 s/op 8.9251 s/op 2.77
BLS verifyMultipleSignatures - same message - 3 - blst-native 3.6470 ms/op 1.3383 ms/op 2.73
BLS verifyMultipleSignatures - same message - 8 - blst-native 4.2004 ms/op 1.4954 ms/op 2.81
BLS verifyMultipleSignatures - same message - 32 - blst-native 7.5494 ms/op 2.3328 ms/op 3.24
BLS verifyMultipleSignatures - same message - 64 - blst-native 10.497 ms/op 3.3811 ms/op 3.10
BLS verifyMultipleSignatures - same message - 128 - blst-native 16.639 ms/op 5.6021 ms/op 2.97
BLS aggregatePubkeys 32 - blst-native 71.598 us/op 29.499 us/op 2.43
BLS aggregatePubkeys 128 - blst-native 295.81 us/op 111.65 us/op 2.65
notSeenSlots=1 numMissedVotes=1 numBadVotes=10 132.90 ms/op 53.967 ms/op 2.46
notSeenSlots=1 numMissedVotes=0 numBadVotes=4 127.17 ms/op 57.080 ms/op 2.23
notSeenSlots=2 numMissedVotes=1 numBadVotes=10 98.591 ms/op 35.617 ms/op 2.77
getSlashingsAndExits - default max 521.95 us/op 219.99 us/op 2.37
getSlashingsAndExits - 2k 2.2596 ms/op 389.79 us/op 5.80
proposeBlockBody type=full, size=empty 12.699 ms/op 5.5255 ms/op 2.30
isKnown best case - 1 super set check 882.00 ns/op 404.00 ns/op 2.18
isKnown normal case - 2 super set checks 760.00 ns/op 324.00 ns/op 2.35
isKnown worse case - 16 super set checks 610.00 ns/op 434.00 ns/op 1.41
InMemoryCheckpointStateCache - add get delete 14.577 us/op 7.0450 us/op 2.07
validate api signedAggregateAndProof - struct 3.3289 ms/op 2.3824 ms/op 1.40
validate gossip signedAggregateAndProof - struct 3.1935 ms/op 2.3742 ms/op 1.35
validate gossip attestation - vc 640000 1.7124 ms/op 1.3570 ms/op 1.26
batch validate gossip attestation - vc 640000 - chunk 32 198.34 us/op 169.50 us/op 1.17
batch validate gossip attestation - vc 640000 - chunk 64 192.42 us/op 153.98 us/op 1.25
batch validate gossip attestation - vc 640000 - chunk 128 178.30 us/op 143.56 us/op 1.24
batch validate gossip attestation - vc 640000 - chunk 256 171.99 us/op 149.35 us/op 1.15
pickEth1Vote - no votes 1.5660 ms/op 1.3946 ms/op 1.12
pickEth1Vote - max votes 10.131 ms/op 10.599 ms/op 0.96
pickEth1Vote - Eth1Data hashTreeRoot value x2048 21.705 ms/op 21.517 ms/op 1.01
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 29.042 ms/op 27.420 ms/op 1.06
pickEth1Vote - Eth1Data fastSerialize value x2048 888.39 us/op 681.20 us/op 1.30
pickEth1Vote - Eth1Data fastSerialize tree x2048 7.6711 ms/op 6.0645 ms/op 1.26
bytes32 toHexString 708.00 ns/op 813.00 ns/op 0.87
bytes32 Buffer.toString(hex) 369.00 ns/op 321.00 ns/op 1.15
bytes32 Buffer.toString(hex) from Uint8Array 538.00 ns/op 519.00 ns/op 1.04
bytes32 Buffer.toString(hex) + 0x 388.00 ns/op 332.00 ns/op 1.17
Object access 1 prop 0.24000 ns/op 0.18900 ns/op 1.27
Map access 1 prop 0.25000 ns/op 0.15900 ns/op 1.57
Object get x1000 8.8980 ns/op 7.9260 ns/op 1.12
Map get x1000 0.92900 ns/op 0.85500 ns/op 1.09
Object set x1000 76.016 ns/op 65.070 ns/op 1.17
Map set x1000 53.552 ns/op 49.264 ns/op 1.09
Return object 10000 times 0.27560 ns/op 0.25780 ns/op 1.07
Throw Error 10000 times 5.3164 us/op 4.0704 us/op 1.31
fastMsgIdFn sha256 / 200 bytes 4.0820 us/op 3.5270 us/op 1.16
fastMsgIdFn h32 xxhash / 200 bytes 421.00 ns/op 351.00 ns/op 1.20
fastMsgIdFn h64 xxhash / 200 bytes 429.00 ns/op 377.00 ns/op 1.14
fastMsgIdFn sha256 / 1000 bytes 14.245 us/op 11.878 us/op 1.20
fastMsgIdFn h32 xxhash / 1000 bytes 726.00 ns/op 480.00 ns/op 1.51
fastMsgIdFn h64 xxhash / 1000 bytes 737.00 ns/op 448.00 ns/op 1.65
fastMsgIdFn sha256 / 10000 bytes 187.20 us/op 106.06 us/op 1.77
fastMsgIdFn h32 xxhash / 10000 bytes 2.8300 us/op 2.0240 us/op 1.40
fastMsgIdFn h64 xxhash / 10000 bytes 2.4660 us/op 1.3910 us/op 1.77
send data - 1000 256B messages 32.836 ms/op 19.258 ms/op 1.71
send data - 1000 512B messages 40.521 ms/op 26.108 ms/op 1.55
send data - 1000 1024B messages 84.961 ms/op 50.892 ms/op 1.67
send data - 1000 1200B messages 60.476 ms/op 36.718 ms/op 1.65
send data - 1000 2048B messages 64.310 ms/op 39.394 ms/op 1.63
send data - 1000 4096B messages 78.691 ms/op 40.009 ms/op 1.97
send data - 1000 16384B messages 146.65 ms/op 89.186 ms/op 1.64
send data - 1000 65536B messages 611.10 ms/op 348.62 ms/op 1.75
enrSubnets - fastDeserialize 64 bits 2.1060 us/op 1.2680 us/op 1.66
enrSubnets - ssz BitVector 64 bits 695.00 ns/op 429.00 ns/op 1.62
enrSubnets - fastDeserialize 4 bits 247.00 ns/op 186.00 ns/op 1.33
enrSubnets - ssz BitVector 4 bits 666.00 ns/op 434.00 ns/op 1.53
prioritizePeers score -10:0 att 32-0.1 sync 2-0 431.17 us/op 239.48 us/op 1.80
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 607.33 us/op 314.87 us/op 1.93
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 643.22 us/op 385.06 us/op 1.67
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 865.74 us/op 638.50 us/op 1.36
prioritizePeers score 0:0 att 64-1 sync 4-1 1.5802 ms/op 785.78 us/op 2.01
array of 16000 items push then shift 2.0285 us/op 1.7194 us/op 1.18
LinkedList of 16000 items push then shift 11.112 ns/op 9.6310 ns/op 1.15
array of 16000 items push then pop 186.22 ns/op 109.21 ns/op 1.71
LinkedList of 16000 items push then pop 17.679 ns/op 9.7770 ns/op 1.81
array of 24000 items push then shift 3.6848 us/op 2.8836 us/op 1.28
LinkedList of 24000 items push then shift 12.309 ns/op 10.739 ns/op 1.15
array of 24000 items push then pop 167.87 ns/op 165.16 ns/op 1.02
LinkedList of 24000 items push then pop 11.313 ns/op 10.266 ns/op 1.10
intersect bitArray bitLen 8 7.5290 ns/op 7.6430 ns/op 0.99
intersect array and set length 8 83.034 ns/op 77.015 ns/op 1.08
intersect bitArray bitLen 128 43.841 ns/op 52.780 ns/op 0.83
intersect array and set length 128 1.0799 us/op 1.3762 us/op 0.78
bitArray.getTrueBitIndexes() bitLen 128 2.0070 us/op 1.9790 us/op 1.01
bitArray.getTrueBitIndexes() bitLen 248 3.6230 us/op 3.2730 us/op 1.11
bitArray.getTrueBitIndexes() bitLen 512 8.8410 us/op 9.2930 us/op 0.95
Buffer.concat 32 items 1.4520 us/op 1.2860 us/op 1.13
Uint8Array.set 32 items 2.4790 us/op 2.2290 us/op 1.11
Set add up to 64 items then delete first 7.0549 us/op 5.2043 us/op 1.36
OrderedSet add up to 64 items then delete first 8.5126 us/op 7.5905 us/op 1.12
Set add up to 64 items then delete last 6.1580 us/op 6.1994 us/op 0.99
OrderedSet add up to 64 items then delete last 9.8331 us/op 7.9291 us/op 1.24
Set add up to 64 items then delete middle 6.1083 us/op 5.4982 us/op 1.11
OrderedSet add up to 64 items then delete middle 9.6719 us/op 8.9191 us/op 1.08
Set add up to 128 items then delete first 12.588 us/op 11.189 us/op 1.13
OrderedSet add up to 128 items then delete first 16.187 us/op 15.398 us/op 1.05
Set add up to 128 items then delete last 12.185 us/op 12.046 us/op 1.01
OrderedSet add up to 128 items then delete last 15.338 us/op 15.796 us/op 0.97
Set add up to 128 items then delete middle 12.271 us/op 13.035 us/op 0.94
OrderedSet add up to 128 items then delete middle 22.606 us/op 21.191 us/op 1.07
Set add up to 256 items then delete first 25.144 us/op 23.208 us/op 1.08
OrderedSet add up to 256 items then delete first 34.591 us/op 31.250 us/op 1.11
Set add up to 256 items then delete last 24.789 us/op 22.532 us/op 1.10
OrderedSet add up to 256 items then delete last 32.742 us/op 28.927 us/op 1.13
Set add up to 256 items then delete middle 25.820 us/op 25.439 us/op 1.01
OrderedSet add up to 256 items then delete middle 61.515 us/op 68.350 us/op 0.90
transfer serialized Status (84 B) 2.4020 us/op 2.4320 us/op 0.99
copy serialized Status (84 B) 1.7540 us/op 1.7550 us/op 1.00
transfer serialized SignedVoluntaryExit (112 B) 2.4020 us/op 2.4560 us/op 0.98
copy serialized SignedVoluntaryExit (112 B) 1.7840 us/op 1.7790 us/op 1.00
transfer serialized ProposerSlashing (416 B) 2.6750 us/op 3.3820 us/op 0.79
copy serialized ProposerSlashing (416 B) 2.3400 us/op 2.8350 us/op 0.83
transfer serialized Attestation (485 B) 2.7310 us/op 2.8700 us/op 0.95
copy serialized Attestation (485 B) 2.4700 us/op 2.4250 us/op 1.02
transfer serialized AttesterSlashing (33232 B) 2.3550 us/op 2.3800 us/op 0.99
copy serialized AttesterSlashing (33232 B) 7.5150 us/op 9.6360 us/op 0.78
transfer serialized Small SignedBeaconBlock (128000 B) 2.9510 us/op 3.2920 us/op 0.90
copy serialized Small SignedBeaconBlock (128000 B) 25.524 us/op 31.085 us/op 0.82
transfer serialized Avg SignedBeaconBlock (200000 B) 4.9100 us/op 4.2660 us/op 1.15
copy serialized Avg SignedBeaconBlock (200000 B) 38.146 us/op 32.786 us/op 1.16
transfer serialized BlobsSidecar (524380 B) 5.0500 us/op 4.2860 us/op 1.18
copy serialized BlobsSidecar (524380 B) 111.45 us/op 183.13 us/op 0.61
transfer serialized Big SignedBeaconBlock (1000000 B) 5.1350 us/op 3.7500 us/op 1.37
copy serialized Big SignedBeaconBlock (1000000 B) 202.15 us/op 188.25 us/op 1.07
pass gossip attestations to forkchoice per slot 6.7785 ms/op 5.7283 ms/op 1.18
forkChoice updateHead vc 100000 bc 64 eq 0 1.2608 ms/op 960.65 us/op 1.31
forkChoice updateHead vc 600000 bc 64 eq 0 5.7986 ms/op 8.6014 ms/op 0.67
forkChoice updateHead vc 1000000 bc 64 eq 0 11.661 ms/op 9.0007 ms/op 1.30
forkChoice updateHead vc 600000 bc 320 eq 0 8.4573 ms/op 6.7818 ms/op 1.25
forkChoice updateHead vc 600000 bc 1200 eq 0 10.871 ms/op 5.4317 ms/op 2.00
forkChoice updateHead vc 600000 bc 7200 eq 0 12.849 ms/op 6.3368 ms/op 2.03
forkChoice updateHead vc 600000 bc 64 eq 1000 24.805 ms/op 11.763 ms/op 2.11
forkChoice updateHead vc 600000 bc 64 eq 10000 15.513 ms/op 12.782 ms/op 1.21
forkChoice updateHead vc 600000 bc 64 eq 300000 48.872 ms/op 24.994 ms/op 1.96
computeDeltas 500000 validators 300 proto nodes 14.398 ms/op 7.1437 ms/op 2.02
computeDeltas 500000 validators 1200 proto nodes 13.345 ms/op 6.9522 ms/op 1.92
computeDeltas 500000 validators 7200 proto nodes 10.291 ms/op 6.4314 ms/op 1.60
computeDeltas 750000 validators 300 proto nodes 14.484 ms/op 9.6869 ms/op 1.50
computeDeltas 750000 validators 1200 proto nodes 13.783 ms/op 9.6489 ms/op 1.43
computeDeltas 750000 validators 7200 proto nodes 13.164 ms/op 9.4272 ms/op 1.40
computeDeltas 1400000 validators 300 proto nodes 25.279 ms/op 17.554 ms/op 1.44
computeDeltas 1400000 validators 1200 proto nodes 25.346 ms/op 18.118 ms/op 1.40
computeDeltas 1400000 validators 7200 proto nodes 19.808 ms/op 18.305 ms/op 1.08
computeDeltas 2100000 validators 300 proto nodes 37.939 ms/op 27.164 ms/op 1.40
computeDeltas 2100000 validators 1200 proto nodes 59.623 ms/op 26.382 ms/op 2.26
computeDeltas 2100000 validators 7200 proto nodes 55.428 ms/op 27.286 ms/op 2.03
altair processAttestation - 250000 vs - 7PWei normalcase 5.2133 ms/op 1.9234 ms/op 2.71
altair processAttestation - 250000 vs - 7PWei worstcase 10.646 ms/op 2.9223 ms/op 3.64
altair processAttestation - setStatus - 1/6 committees join 470.01 us/op 135.40 us/op 3.47
altair processAttestation - setStatus - 1/3 committees join 814.17 us/op 267.83 us/op 3.04
altair processAttestation - setStatus - 1/2 committees join 1.2769 ms/op 348.11 us/op 3.67
altair processAttestation - setStatus - 2/3 committees join 1.7340 ms/op 435.24 us/op 3.98
altair processAttestation - setStatus - 4/5 committees join 2.9447 ms/op 633.17 us/op 4.65
altair processAttestation - setStatus - 100% committees join 3.0049 ms/op 714.85 us/op 4.20
altair processBlock - 250000 vs - 7PWei normalcase 24.380 ms/op 8.3111 ms/op 2.93
altair processBlock - 250000 vs - 7PWei normalcase hashState 94.917 ms/op 31.958 ms/op 2.97
altair processBlock - 250000 vs - 7PWei worstcase 120.51 ms/op 33.820 ms/op 3.56
altair processBlock - 250000 vs - 7PWei worstcase hashState 329.24 ms/op 87.994 ms/op 3.74
phase0 processBlock - 250000 vs - 7PWei normalcase 8.8081 ms/op 2.2620 ms/op 3.89
phase0 processBlock - 250000 vs - 7PWei worstcase 92.794 ms/op 30.920 ms/op 3.00
altair processEth1Data - 250000 vs - 7PWei normalcase 1.9698 ms/op 447.86 us/op 4.40
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 41.794 us/op 7.0820 us/op 5.90
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 117.08 us/op 58.336 us/op 2.01
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 64.244 us/op 19.889 us/op 3.23
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 45.205 us/op 14.004 us/op 3.23
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 314.82 us/op 182.59 us/op 1.72
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 3.6116 ms/op 1.1609 ms/op 3.11
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 4.4367 ms/op 1.5652 ms/op 2.83
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 4.3347 ms/op 1.6324 ms/op 2.66
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 8.7883 ms/op 3.9424 ms/op 2.23
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 7.7213 ms/op 2.4326 ms/op 3.17
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 16.270 ms/op 4.9442 ms/op 3.29
Tree 40 250000 create 1.0421 s/op 281.41 ms/op 3.70
Tree 40 250000 get(125000) 621.35 ns/op 200.03 ns/op 3.11
Tree 40 250000 set(125000) 3.0284 us/op 746.03 ns/op 4.06
Tree 40 250000 toArray() 44.971 ms/op 18.594 ms/op 2.42
Tree 40 250000 iterate all - toArray() + loop 44.999 ms/op 19.273 ms/op 2.33
Tree 40 250000 iterate all - get(i) 260.23 ms/op 70.699 ms/op 3.68
MutableVector 250000 create 46.855 ms/op 12.987 ms/op 3.61
MutableVector 250000 get(125000) 19.321 ns/op 6.6400 ns/op 2.91
MutableVector 250000 set(125000) 1.3137 us/op 312.09 ns/op 4.21
MutableVector 250000 toArray() 9.1841 ms/op 3.4627 ms/op 2.65
MutableVector 250000 iterate all - toArray() + loop 12.201 ms/op 3.5497 ms/op 3.44
MutableVector 250000 iterate all - get(i) 5.8402 ms/op 1.5781 ms/op 3.70
Array 250000 create 7.9029 ms/op 3.2274 ms/op 2.45
Array 250000 clone - spread 3.9764 ms/op 1.4730 ms/op 2.70
Array 250000 get(125000) 5.0550 ns/op 1.1550 ns/op 4.38
Array 250000 set(125000) 15.946 ns/op 4.3110 ns/op 3.70
Array 250000 iterate all - loop 627.57 us/op 171.74 us/op 3.65
effectiveBalanceIncrements clone Uint8Array 300000 91.245 us/op 44.683 us/op 2.04
effectiveBalanceIncrements clone MutableVector 300000 1.4380 us/op 443.00 ns/op 3.25
effectiveBalanceIncrements rw all Uint8Array 300000 681.29 us/op 226.41 us/op 3.01
effectiveBalanceIncrements rw all MutableVector 300000 434.77 ms/op 98.161 ms/op 4.43
phase0 afterProcessEpoch - 250000 vs - 7PWei 478.32 ms/op 120.91 ms/op 3.96
phase0 beforeProcessEpoch - 250000 vs - 7PWei 123.49 ms/op 47.977 ms/op 2.57
altair processEpoch - mainnet_e81889 959.39 ms/op 466.24 ms/op 2.06
mainnet_e81889 - altair beforeProcessEpoch 160.22 ms/op 77.225 ms/op 2.07
mainnet_e81889 - altair processJustificationAndFinalization 53.413 us/op 19.414 us/op 2.75
mainnet_e81889 - altair processInactivityUpdates 9.1277 ms/op 7.0188 ms/op 1.30
mainnet_e81889 - altair processRewardsAndPenalties 120.70 ms/op 49.685 ms/op 2.43
mainnet_e81889 - altair processRegistryUpdates 5.4250 us/op 2.9910 us/op 1.81
mainnet_e81889 - altair processSlashings 853.00 ns/op 488.00 ns/op 1.75
mainnet_e81889 - altair processEth1DataReset 1.2180 us/op 956.00 ns/op 1.27
mainnet_e81889 - altair processEffectiveBalanceUpdates 6.2420 ms/op 1.5673 ms/op 3.98
mainnet_e81889 - altair processSlashingsReset 9.1910 us/op 4.0660 us/op 2.26
mainnet_e81889 - altair processRandaoMixesReset 5.3550 us/op 4.5150 us/op 1.19
mainnet_e81889 - altair processHistoricalRootsUpdate 896.00 ns/op 1.2640 us/op 0.71
mainnet_e81889 - altair processParticipationFlagUpdates 7.5430 us/op 2.0480 us/op 3.68
mainnet_e81889 - altair processSyncCommitteeUpdates 2.7760 us/op 884.00 ns/op 3.14
mainnet_e81889 - altair afterProcessEpoch 195.28 ms/op 126.71 ms/op 1.54
capella processEpoch - mainnet_e217614 2.3104 s/op 1.6964 s/op 1.36
mainnet_e217614 - capella beforeProcessEpoch 348.89 ms/op 321.83 ms/op 1.08
mainnet_e217614 - capella processJustificationAndFinalization 19.271 us/op 22.670 us/op 0.85
mainnet_e217614 - capella processInactivityUpdates 20.650 ms/op 22.669 ms/op 0.91
mainnet_e217614 - capella processRewardsAndPenalties 323.68 ms/op 297.52 ms/op 1.09
mainnet_e217614 - capella processRegistryUpdates 25.347 us/op 20.326 us/op 1.25
mainnet_e217614 - capella processSlashings 489.00 ns/op 604.00 ns/op 0.81
mainnet_e217614 - capella processEth1DataReset 445.00 ns/op 621.00 ns/op 0.72
mainnet_e217614 - capella processEffectiveBalanceUpdates 5.0352 ms/op 15.908 ms/op 0.32
mainnet_e217614 - capella processSlashingsReset 3.0600 us/op 4.1960 us/op 0.73
mainnet_e217614 - capella processRandaoMixesReset 4.4080 us/op 6.6800 us/op 0.66
mainnet_e217614 - capella processHistoricalRootsUpdate 604.00 ns/op 634.00 ns/op 0.95
mainnet_e217614 - capella processParticipationFlagUpdates 1.3410 us/op 1.6700 us/op 0.80
mainnet_e217614 - capella afterProcessEpoch 397.69 ms/op 343.67 ms/op 1.16
phase0 processEpoch - mainnet_e58758 553.38 ms/op 518.32 ms/op 1.07
mainnet_e58758 - phase0 beforeProcessEpoch 206.70 ms/op 136.59 ms/op 1.51
mainnet_e58758 - phase0 processJustificationAndFinalization 21.247 us/op 17.667 us/op 1.20
mainnet_e58758 - phase0 processRewardsAndPenalties 44.161 ms/op 30.101 ms/op 1.47
mainnet_e58758 - phase0 processRegistryUpdates 11.768 us/op 13.495 us/op 0.87
mainnet_e58758 - phase0 processSlashings 475.00 ns/op 481.00 ns/op 0.99
mainnet_e58758 - phase0 processEth1DataReset 504.00 ns/op 401.00 ns/op 1.26
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 1.9309 ms/op 1.1351 ms/op 1.70
mainnet_e58758 - phase0 processSlashingsReset 4.8400 us/op 2.4520 us/op 1.97
mainnet_e58758 - phase0 processRandaoMixesReset 7.2610 us/op 5.1780 us/op 1.40
mainnet_e58758 - phase0 processHistoricalRootsUpdate 720.00 ns/op 508.00 ns/op 1.42
mainnet_e58758 - phase0 processParticipationRecordUpdates 6.0190 us/op 4.7120 us/op 1.28
mainnet_e58758 - phase0 afterProcessEpoch 214.48 ms/op 110.30 ms/op 1.94
phase0 processEffectiveBalanceUpdates - 250000 normalcase 1.8546 ms/op 1.5998 ms/op 1.16
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 1.7389 ms/op 2.1869 ms/op 0.80
altair processInactivityUpdates - 250000 normalcase 25.693 ms/op 21.745 ms/op 1.18
altair processInactivityUpdates - 250000 worstcase 39.047 ms/op 19.355 ms/op 2.02
phase0 processRegistryUpdates - 250000 normalcase 14.436 us/op 13.797 us/op 1.05
phase0 processRegistryUpdates - 250000 badcase_full_deposits 847.30 us/op 385.25 us/op 2.20
phase0 processRegistryUpdates - 250000 worstcase 0.5 219.19 ms/op 153.92 ms/op 1.42
altair processRewardsAndPenalties - 250000 normalcase 70.435 ms/op 57.218 ms/op 1.23
altair processRewardsAndPenalties - 250000 worstcase 61.309 ms/op 55.147 ms/op 1.11
phase0 getAttestationDeltas - 250000 normalcase 14.521 ms/op 8.9688 ms/op 1.62
phase0 getAttestationDeltas - 250000 worstcase 12.249 ms/op 8.5930 ms/op 1.43
phase0 processSlashings - 250000 worstcase 92.518 us/op 103.33 us/op 0.90
altair processSyncCommitteeUpdates - 250000 213.08 ms/op 157.07 ms/op 1.36
BeaconState.hashTreeRoot - No change 960.00 ns/op 413.00 ns/op 2.32
BeaconState.hashTreeRoot - 1 full validator 194.16 us/op 162.41 us/op 1.20
BeaconState.hashTreeRoot - 32 full validator 1.9199 ms/op 1.7096 ms/op 1.12
BeaconState.hashTreeRoot - 512 full validator 27.923 ms/op 17.265 ms/op 1.62
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 283.44 us/op 197.44 us/op 1.44
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 3.0884 ms/op 2.3575 ms/op 1.31
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 30.902 ms/op 32.821 ms/op 0.94
BeaconState.hashTreeRoot - 1 balances 191.49 us/op 163.20 us/op 1.17
BeaconState.hashTreeRoot - 32 balances 1.5638 ms/op 1.5710 ms/op 1.00
BeaconState.hashTreeRoot - 512 balances 20.024 ms/op 14.321 ms/op 1.40
BeaconState.hashTreeRoot - 250000 balances 281.13 ms/op 235.90 ms/op 1.19
aggregationBits - 2048 els - zipIndexesInBitList 37.695 us/op 33.971 us/op 1.11
byteArrayEquals 32 164.66 ns/op 77.240 ns/op 2.13
Buffer.compare 32 128.39 ns/op 59.522 ns/op 2.16
byteArrayEquals 1024 6.0662 us/op 2.0859 us/op 2.91
Buffer.compare 1024 208.96 ns/op 76.054 ns/op 2.75
byteArrayEquals 16384 52.783 us/op 33.767 us/op 1.56
Buffer.compare 16384 336.36 ns/op 268.03 ns/op 1.25
byteArrayEquals 123687377 422.08 ms/op 253.39 ms/op 1.67
Buffer.compare 123687377 8.8872 ms/op 9.2844 ms/op 0.96
byteArrayEquals 32 - diff last byte 102.57 ns/op 76.034 ns/op 1.35
Buffer.compare 32 - diff last byte 88.388 ns/op 58.028 ns/op 1.52
byteArrayEquals 1024 - diff last byte 4.2711 us/op 2.1826 us/op 1.96
Buffer.compare 1024 - diff last byte 126.94 ns/op 79.035 ns/op 1.61
byteArrayEquals 16384 - diff last byte 49.907 us/op 34.314 us/op 1.45
Buffer.compare 16384 - diff last byte 343.93 ns/op 282.01 ns/op 1.22
byteArrayEquals 123687377 - diff last byte 482.80 ms/op 261.12 ms/op 1.85
Buffer.compare 123687377 - diff last byte 9.1040 ms/op 12.137 ms/op 0.75
byteArrayEquals 32 - random bytes 12.403 ns/op 6.8140 ns/op 1.82
Buffer.compare 32 - random bytes 127.04 ns/op 65.115 ns/op 1.95
byteArrayEquals 1024 - random bytes 14.640 ns/op 6.7120 ns/op 2.18
Buffer.compare 1024 - random bytes 135.09 ns/op 64.139 ns/op 2.11
byteArrayEquals 16384 - random bytes 16.974 ns/op 6.6970 ns/op 2.53
Buffer.compare 16384 - random bytes 174.58 ns/op 64.296 ns/op 2.72
byteArrayEquals 123687377 - random bytes 25.280 ns/op 11.090 ns/op 2.28
Buffer.compare 123687377 - random bytes 190.83 ns/op 79.560 ns/op 2.40
regular array get 100000 times 110.71 us/op 48.404 us/op 2.29
wrappedArray get 100000 times 100.81 us/op 48.141 us/op 2.09
arrayWithProxy get 100000 times 37.669 ms/op 15.481 ms/op 2.43
ssz.Root.equals 168.49 ns/op 59.632 ns/op 2.83
byteArrayEquals 161.81 ns/op 59.282 ns/op 2.73
Buffer.compare 32.746 ns/op 13.203 ns/op 2.48
shuffle list - 16384 els 26.524 ms/op 9.0021 ms/op 2.95
shuffle list - 250000 els 380.60 ms/op 133.75 ms/op 2.85
processSlot - 1 slots 44.354 us/op 21.629 us/op 2.05
processSlot - 32 slots 8.1109 ms/op 3.8688 ms/op 2.10
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 167.01 ms/op 59.205 ms/op 2.82
getCommitteeAssignments - req 1 vs - 250000 vc 8.7768 ms/op 2.7180 ms/op 3.23
getCommitteeAssignments - req 100 vs - 250000 vc 11.986 ms/op 3.9488 ms/op 3.04
getCommitteeAssignments - req 1000 vs - 250000 vc 14.745 ms/op 4.3075 ms/op 3.42
findModifiedValidators - 10000 modified validators 1.1368 s/op 354.67 ms/op 3.21
findModifiedValidators - 1000 modified validators 876.43 ms/op 205.90 ms/op 4.26
findModifiedValidators - 100 modified validators 785.94 ms/op 206.21 ms/op 3.81
findModifiedValidators - 10 modified validators 722.83 ms/op 197.81 ms/op 3.65
findModifiedValidators - 1 modified validators 773.27 ms/op 210.29 ms/op 3.68
findModifiedValidators - no difference 702.18 ms/op 191.42 ms/op 3.67
compare ViewDUs 9.7908 s/op 3.7765 s/op 2.59
compare each validator Uint8Array 3.6924 s/op 1.8064 s/op 2.04
compare ViewDU to Uint8Array 3.9297 s/op 1.4314 s/op 2.75
migrate state 1000000 validators, 24 modified, 0 new 2.5827 s/op 914.79 ms/op 2.82
migrate state 1000000 validators, 1700 modified, 1000 new 4.6549 s/op 1.5047 s/op 3.09
migrate state 1000000 validators, 3400 modified, 2000 new 4.8929 s/op 1.8800 s/op 2.60
migrate state 1500000 validators, 24 modified, 0 new 2.4157 s/op 960.58 ms/op 2.51
migrate state 1500000 validators, 1700 modified, 1000 new 3.9785 s/op 1.4843 s/op 2.68
migrate state 1500000 validators, 3400 modified, 2000 new 5.1021 s/op 1.8637 s/op 2.74
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 19.810 ns/op 5.1900 ns/op 3.82
state getBlockRootAtSlot - 250000 vs - 7PWei 1.8982 us/op 680.65 ns/op 2.79
computeProposers - vc 250000 31.089 ms/op 13.038 ms/op 2.38
computeEpochShuffling - vc 250000 500.90 ms/op 147.59 ms/op 3.39
getNextSyncCommittee - vc 250000 561.19 ms/op 167.65 ms/op 3.35
computeSigningRoot for AttestationData 92.298 us/op 28.251 us/op 3.27
hash AttestationData serialized data then Buffer.toString(base64) 7.5467 us/op 2.4102 us/op 3.13
toHexString serialized data 4.3130 us/op 1.1085 us/op 3.89
Buffer.toString(base64) 810.64 ns/op 228.94 ns/op 3.54

Please sign in to comment.