Skip to content

chore: upgrade pnpm to v11#9299

Open
nazarhussain wants to merge 3 commits intounstablefrom
nh/pnpm-11
Open

chore: upgrade pnpm to v11#9299
nazarhussain wants to merge 3 commits intounstablefrom
nh/pnpm-11

Conversation

@nazarhussain
Copy link
Copy Markdown
Contributor

The repo was pinned to pnpm v10 (via packageManager in package.json) and pnpm/action-setup@v4 in CI. Bringing both to the current major (v11 / action-setup v5) keeps us
on a supported line and aligns with Node 24, which is already required by engines.

Description

  • Bump packageManager in package.json to pnpm@11.0.0 with the matching Corepack hash (hex SHA-512 of the npm tarball integrity).
  • Fix malformed overrides: keys in pnpm-workspace.yaml (stray closing quotes that pnpm 11 surfaced as ERR_PNPM_INVALID_SELECTOR).
  • Regenerate pnpm-lock.yaml against the corrected overrides.
  • Bump all pnpm/action-setup references from v4 to v5 (commit fc06bc1257f339d1d5d8b3a19a8cae5388b55320) across 7 workflow / composite-action files. The orphan SHA
    previously used in setup-and-build/action.yml is replaced with the canonical v5 SHA.

No runtime behavior changes — tooling-only upgrade.

AI Assistance Disclosure

  • AI-assisted: Claude Code helped diagnose the install failure (malformed YAML in pnpm-workspace.yaml), compute the Corepack hash from the npm registry integrity, and
    locate/update the seven pnpm/action-setup pins. All changes were reviewed before commit.

@nazarhussain nazarhussain requested a review from a team as a code owner April 28, 2026 19:32
Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request updates the project to pnpm v11, including the GitHub Action version, the packageManager field in package.json, and the migration of onlyBuiltDependencies to allowBuilds in pnpm-workspace.yaml. A critical issue was identified where pnpm-lock.yaml was not fully regenerated, resulting in a version mismatch (v9 instead of v10) and unsorted entries that will cause CI failures.

Comment thread pnpm-lock.yaml
overrides:
dns-over-http-resolver: ^2.1.1
loupe: ^2.3.6
nan: ^2.19.0
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

high

The lockfile version (at line 1) is still 9.0, which corresponds to pnpm v10. pnpm v11 introduces lockfile version 10.0. Additionally, the overrides section in this file is not sorted alphabetically (e.g., elliptic is at the end), whereas it is sorted in pnpm-workspace.yaml. This indicates the lockfile was not fully regenerated using pnpm v11. This discrepancy will cause CI failures because pnpm install --frozen-lockfile (as configured in .github/actions/setup-and-build/action.yml) will fail when it detects that the lockfile needs to be upgraded to v10. Please regenerate the lockfile by running pnpm install with pnpm v11.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Tried to re-generate the new lock file and it also have the version 9.0

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Apr 28, 2026

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: 39756f1 Previous: a6d8600 Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 893.27 us/op 876.17 us/op 1.02
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 41.476 us/op 39.710 us/op 1.04
BLS verify - blst 701.57 us/op 747.91 us/op 0.94
BLS verifyMultipleSignatures 3 - blst 1.3730 ms/op 1.3578 ms/op 1.01
BLS verifyMultipleSignatures 8 - blst 2.1832 ms/op 2.1590 ms/op 1.01
BLS verifyMultipleSignatures 32 - blst 6.9093 ms/op 6.8405 ms/op 1.01
BLS verifyMultipleSignatures 64 - blst 13.335 ms/op 13.065 ms/op 1.02
BLS verifyMultipleSignatures 128 - blst 25.965 ms/op 25.910 ms/op 1.00
BLS deserializing 10000 signatures 611.57 ms/op 648.47 ms/op 0.94
BLS deserializing 100000 signatures 6.0405 s/op 6.7235 s/op 0.90
BLS verifyMultipleSignatures - same message - 3 - blst 693.68 us/op 730.25 us/op 0.95
BLS verifyMultipleSignatures - same message - 8 - blst 821.84 us/op 860.54 us/op 0.96
BLS verifyMultipleSignatures - same message - 32 - blst 1.4749 ms/op 1.4918 ms/op 0.99
BLS verifyMultipleSignatures - same message - 64 - blst 2.2996 ms/op 2.3746 ms/op 0.97
BLS verifyMultipleSignatures - same message - 128 - blst 3.8931 ms/op 3.9692 ms/op 0.98
BLS aggregatePubkeys 32 - blst 16.830 us/op 17.310 us/op 0.97
BLS aggregatePubkeys 128 - blst 59.561 us/op 62.062 us/op 0.96
getSlashingsAndExits - default max 45.417 us/op 43.875 us/op 1.04
getSlashingsAndExits - 2k 321.08 us/op 344.73 us/op 0.93
proposeBlockBody type=full, size=empty 854.85 us/op 725.28 us/op 1.18
isKnown best case - 1 super set check 164.00 ns/op 155.00 ns/op 1.06
isKnown normal case - 2 super set checks 164.00 ns/op 153.00 ns/op 1.07
isKnown worse case - 16 super set checks 167.00 ns/op 152.00 ns/op 1.10
validate api signedAggregateAndProof - struct 1.5530 ms/op 1.4779 ms/op 1.05
validate gossip signedAggregateAndProof - struct 1.5380 ms/op 1.4635 ms/op 1.05
batch validate gossip attestation - vc 640000 - chunk 32 111.34 us/op 106.00 us/op 1.05
batch validate gossip attestation - vc 640000 - chunk 64 94.582 us/op 95.023 us/op 1.00
batch validate gossip attestation - vc 640000 - chunk 128 90.887 us/op 87.023 us/op 1.04
batch validate gossip attestation - vc 640000 - chunk 256 84.057 us/op 85.048 us/op 0.99
bytes32 toHexString 300.00 ns/op 271.00 ns/op 1.11
bytes32 Buffer.toString(hex) 176.00 ns/op 167.00 ns/op 1.05
bytes32 Buffer.toString(hex) from Uint8Array 252.00 ns/op 234.00 ns/op 1.08
bytes32 Buffer.toString(hex) + 0x 173.00 ns/op 169.00 ns/op 1.02
Return object 10000 times 0.21740 ns/op 0.21050 ns/op 1.03
Throw Error 10000 times 3.1711 us/op 3.2303 us/op 0.98
toHex 89.723 ns/op 89.532 ns/op 1.00
Buffer.from 93.789 ns/op 83.331 ns/op 1.13
shared Buffer 65.374 ns/op 54.772 ns/op 1.19
fastMsgIdFn sha256 / 200 bytes 1.4990 us/op 1.4310 us/op 1.05
fastMsgIdFn h32 xxhash / 200 bytes 161.00 ns/op 152.00 ns/op 1.06
fastMsgIdFn h64 xxhash / 200 bytes 203.00 ns/op 205.00 ns/op 0.99
fastMsgIdFn sha256 / 1000 bytes 4.8360 us/op 4.6160 us/op 1.05
fastMsgIdFn h32 xxhash / 1000 bytes 251.00 ns/op 243.00 ns/op 1.03
fastMsgIdFn h64 xxhash / 1000 bytes 255.00 ns/op 258.00 ns/op 0.99
fastMsgIdFn sha256 / 10000 bytes 42.711 us/op 40.550 us/op 1.05
fastMsgIdFn h32 xxhash / 10000 bytes 1.2820 us/op 1.2290 us/op 1.04
fastMsgIdFn h64 xxhash / 10000 bytes 817.00 ns/op 791.00 ns/op 1.03
send data - 1000 256B messages 4.0495 ms/op 4.5472 ms/op 0.89
send data - 1000 512B messages 4.3388 ms/op 4.5070 ms/op 0.96
send data - 1000 1024B messages 4.4159 ms/op 4.6287 ms/op 0.95
send data - 1000 1200B messages 5.1324 ms/op 5.0166 ms/op 1.02
send data - 1000 2048B messages 5.2713 ms/op 4.8939 ms/op 1.08
send data - 1000 4096B messages 5.8236 ms/op 5.5802 ms/op 1.04
send data - 1000 16384B messages 22.109 ms/op 20.313 ms/op 1.09
send data - 1000 65536B messages 185.84 ms/op 140.51 ms/op 1.32
enrSubnets - fastDeserialize 64 bits 733.00 ns/op 689.00 ns/op 1.06
enrSubnets - ssz BitVector 64 bits 257.00 ns/op 260.00 ns/op 0.99
enrSubnets - fastDeserialize 4 bits 100.00 ns/op 96.000 ns/op 1.04
enrSubnets - ssz BitVector 4 bits 261.00 ns/op 265.00 ns/op 0.98
prioritizePeers score -10:0 att 32-0.1 sync 2-0 217.76 us/op 198.87 us/op 1.09
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 242.41 us/op 226.76 us/op 1.07
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 362.89 us/op 326.78 us/op 1.11
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 634.82 us/op 580.09 us/op 1.09
prioritizePeers score 0:0 att 64-1 sync 4-1 752.40 us/op 687.51 us/op 1.09
array of 16000 items push then shift 1.2571 us/op 1.2120 us/op 1.04
LinkedList of 16000 items push then shift 7.5090 ns/op 7.1750 ns/op 1.05
array of 16000 items push then pop 72.917 ns/op 65.144 ns/op 1.12
LinkedList of 16000 items push then pop 6.2150 ns/op 5.8200 ns/op 1.07
array of 24000 items push then shift 1.9492 us/op 1.8078 us/op 1.08
LinkedList of 24000 items push then shift 6.6860 ns/op 6.8580 ns/op 0.97
array of 24000 items push then pop 103.64 ns/op 91.411 ns/op 1.13
LinkedList of 24000 items push then pop 6.3480 ns/op 5.8430 ns/op 1.09
intersect bitArray bitLen 8 4.8340 ns/op 4.6120 ns/op 1.05
intersect array and set length 8 30.423 ns/op 28.250 ns/op 1.08
intersect bitArray bitLen 128 24.892 ns/op 23.248 ns/op 1.07
intersect array and set length 128 509.00 ns/op 476.25 ns/op 1.07
bitArray.getTrueBitIndexes() bitLen 128 1.0620 us/op 1.0030 us/op 1.06
bitArray.getTrueBitIndexes() bitLen 248 1.7640 us/op 1.7320 us/op 1.02
bitArray.getTrueBitIndexes() bitLen 512 3.6440 us/op 3.4650 us/op 1.05
Full columns - reconstruct all 6 blobs 109.49 us/op 243.62 us/op 0.45
Full columns - reconstruct half of the blobs out of 6 66.255 us/op 97.468 us/op 0.68
Full columns - reconstruct single blob out of 6 29.678 us/op 43.664 us/op 0.68
Half columns - reconstruct all 6 blobs 391.65 ms/op 371.51 ms/op 1.05
Half columns - reconstruct half of the blobs out of 6 194.76 ms/op 189.06 ms/op 1.03
Half columns - reconstruct single blob out of 6 70.830 ms/op 67.628 ms/op 1.05
Full columns - reconstruct all 10 blobs 167.64 us/op 394.73 us/op 0.42
Full columns - reconstruct half of the blobs out of 10 89.710 us/op 100.98 us/op 0.89
Full columns - reconstruct single blob out of 10 32.367 us/op 44.345 us/op 0.73
Half columns - reconstruct all 10 blobs 639.26 ms/op 623.68 ms/op 1.02
Half columns - reconstruct half of the blobs out of 10 322.96 ms/op 312.55 ms/op 1.03
Half columns - reconstruct single blob out of 10 70.809 ms/op 65.556 ms/op 1.08
Full columns - reconstruct all 20 blobs 1.5906 ms/op 541.07 us/op 2.94
Full columns - reconstruct half of the blobs out of 20 168.17 us/op 383.02 us/op 0.44
Full columns - reconstruct single blob out of 20 32.031 us/op 27.862 us/op 1.15
Half columns - reconstruct all 20 blobs 1.2770 s/op 1.2338 s/op 1.04
Half columns - reconstruct half of the blobs out of 20 648.37 ms/op 621.50 ms/op 1.04
Half columns - reconstruct single blob out of 20 70.832 ms/op 67.758 ms/op 1.05
Set add up to 64 items then delete first 2.6188 us/op 2.4303 us/op 1.08
OrderedSet add up to 64 items then delete first 3.4417 us/op 3.1958 us/op 1.08
Set add up to 64 items then delete last 2.4305 us/op 2.2388 us/op 1.09
OrderedSet add up to 64 items then delete last 3.2840 us/op 3.2596 us/op 1.01
Set add up to 64 items then delete middle 2.1966 us/op 2.0885 us/op 1.05
OrderedSet add up to 64 items then delete middle 4.8225 us/op 4.7083 us/op 1.02
Set add up to 128 items then delete first 4.3665 us/op 4.0169 us/op 1.09
OrderedSet add up to 128 items then delete first 6.9689 us/op 6.0528 us/op 1.15
Set add up to 128 items then delete last 3.8053 us/op 3.8081 us/op 1.00
OrderedSet add up to 128 items then delete last 5.6664 us/op 5.9086 us/op 0.96
Set add up to 128 items then delete middle 3.6871 us/op 3.7514 us/op 0.98
OrderedSet add up to 128 items then delete middle 11.661 us/op 11.739 us/op 0.99
Set add up to 256 items then delete first 7.3602 us/op 7.3951 us/op 1.00
OrderedSet add up to 256 items then delete first 12.292 us/op 11.213 us/op 1.10
Set add up to 256 items then delete last 7.1354 us/op 7.4617 us/op 0.96
OrderedSet add up to 256 items then delete last 10.659 us/op 11.537 us/op 0.92
Set add up to 256 items then delete middle 6.9445 us/op 7.4360 us/op 0.93
OrderedSet add up to 256 items then delete middle 33.301 us/op 34.894 us/op 0.95
pass gossip attestations to forkchoice per slot 2.3847 ms/op 2.5172 ms/op 0.95
forkChoice updateHead vc 100000 bc 64 eq 0 370.18 us/op 383.06 us/op 0.97
forkChoice updateHead vc 600000 bc 64 eq 0 2.1907 ms/op 2.3049 ms/op 0.95
forkChoice updateHead vc 1000000 bc 64 eq 0 3.6032 ms/op 3.7874 ms/op 0.95
forkChoice updateHead vc 600000 bc 320 eq 0 2.2099 ms/op 2.2914 ms/op 0.96
forkChoice updateHead vc 600000 bc 1200 eq 0 2.2052 ms/op 2.3361 ms/op 0.94
forkChoice updateHead vc 600000 bc 7200 eq 0 2.7146 ms/op 2.6976 ms/op 1.01
forkChoice updateHead vc 600000 bc 64 eq 1000 2.7343 ms/op 2.8598 ms/op 0.96
forkChoice updateHead vc 600000 bc 64 eq 10000 2.8258 ms/op 2.9869 ms/op 0.95
forkChoice updateHead vc 600000 bc 64 eq 300000 6.5219 ms/op 6.5572 ms/op 0.99
computeDeltas 1400000 validators 0% inactive 11.860 ms/op 12.277 ms/op 0.97
computeDeltas 1400000 validators 10% inactive 11.184 ms/op 11.359 ms/op 0.98
computeDeltas 1400000 validators 20% inactive 10.056 ms/op 10.320 ms/op 0.97
computeDeltas 1400000 validators 50% inactive 7.8338 ms/op 8.0768 ms/op 0.97
computeDeltas 2100000 validators 0% inactive 17.673 ms/op 18.794 ms/op 0.94
computeDeltas 2100000 validators 10% inactive 16.813 ms/op 17.368 ms/op 0.97
computeDeltas 2100000 validators 20% inactive 15.114 ms/op 15.690 ms/op 0.96
computeDeltas 2100000 validators 50% inactive 8.9184 ms/op 9.1394 ms/op 0.98
altair processAttestation - 250000 vs - 7PWei normalcase 2.6064 ms/op 1.9429 ms/op 1.34
altair processAttestation - 250000 vs - 7PWei worstcase 2.4802 ms/op 2.9264 ms/op 0.85
altair processAttestation - setStatus - 1/6 committees join 99.716 us/op 96.475 us/op 1.03
altair processAttestation - setStatus - 1/3 committees join 195.91 us/op 198.83 us/op 0.99
altair processAttestation - setStatus - 1/2 committees join 302.18 us/op 271.28 us/op 1.11
altair processAttestation - setStatus - 2/3 committees join 388.82 us/op 361.25 us/op 1.08
altair processAttestation - setStatus - 4/5 committees join 535.79 us/op 505.85 us/op 1.06
altair processAttestation - setStatus - 100% committees join 639.45 us/op 579.13 us/op 1.10
altair processBlock - 250000 vs - 7PWei normalcase 4.2987 ms/op 3.9321 ms/op 1.09
altair processBlock - 250000 vs - 7PWei normalcase hashState 20.640 ms/op 16.518 ms/op 1.25
altair processBlock - 250000 vs - 7PWei worstcase 19.969 ms/op 20.943 ms/op 0.95
altair processBlock - 250000 vs - 7PWei worstcase hashState 42.000 ms/op 42.119 ms/op 1.00
phase0 processBlock - 250000 vs - 7PWei normalcase 1.5314 ms/op 1.4019 ms/op 1.09
phase0 processBlock - 250000 vs - 7PWei worstcase 17.426 ms/op 17.031 ms/op 1.02
altair processEth1Data - 250000 vs - 7PWei normalcase 320.73 us/op 297.09 us/op 1.08
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:16 4.8450 us/op 8.6270 us/op 0.56
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:220 20.008 us/op 18.948 us/op 1.06
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:43 6.2550 us/op 5.8490 us/op 1.07
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:19 3.9610 us/op 3.3780 us/op 1.17
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1021 102.08 us/op 82.205 us/op 1.24
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11778 1.3886 ms/op 1.3006 ms/op 1.07
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 1.8271 ms/op 1.7129 ms/op 1.07
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 1.8176 ms/op 1.6885 ms/op 1.08
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 3.9024 ms/op 3.5737 ms/op 1.09
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 2.0729 ms/op 1.9706 ms/op 1.05
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 4.2010 ms/op 4.0097 ms/op 1.05
Tree 40 250000 create 353.58 ms/op 300.07 ms/op 1.18
Tree 40 250000 get(125000) 86.304 ns/op 89.337 ns/op 0.97
Tree 40 250000 set(125000) 943.22 ns/op 976.19 ns/op 0.97
Tree 40 250000 toArray() 16.202 ms/op 11.300 ms/op 1.43
Tree 40 250000 iterate all - toArray() + loop 16.981 ms/op 11.483 ms/op 1.48
Tree 40 250000 iterate all - get(i) 39.487 ms/op 34.661 ms/op 1.14
Array 250000 create 2.1964 ms/op 2.0878 ms/op 1.05
Array 250000 clone - spread 669.73 us/op 646.20 us/op 1.04
Array 250000 get(125000) 0.28300 ns/op 0.28700 ns/op 0.99
Array 250000 set(125000) 0.29100 ns/op 0.29300 ns/op 0.99
Array 250000 iterate all - loop 55.992 us/op 55.886 us/op 1.00
phase0 afterProcessEpoch - 250000 vs - 7PWei 38.410 ms/op 39.073 ms/op 0.98
Array.fill - length 1000000 4.8646 ms/op 2.2286 ms/op 2.18
Array push - length 1000000 11.552 ms/op 8.9337 ms/op 1.29
Array.get 0.20532 ns/op 0.19891 ns/op 1.03
Uint8Array.get 0.23970 ns/op 0.22836 ns/op 1.05
phase0 beforeProcessEpoch - 250000 vs - 7PWei 13.978 ms/op 24.198 ms/op 0.58
altair processEpoch - mainnet_e81889 307.66 ms/op 268.27 ms/op 1.15
mainnet_e81889 - altair beforeProcessEpoch 22.082 ms/op 15.811 ms/op 1.40
mainnet_e81889 - altair processJustificationAndFinalization 6.0760 us/op 5.6790 us/op 1.07
mainnet_e81889 - altair processInactivityUpdates 4.4109 ms/op 3.9416 ms/op 1.12
mainnet_e81889 - altair processRewardsAndPenalties 19.714 ms/op 19.856 ms/op 0.99
mainnet_e81889 - altair processRegistryUpdates 549.00 ns/op 525.00 ns/op 1.05
mainnet_e81889 - altair processSlashings 142.00 ns/op 131.00 ns/op 1.08
mainnet_e81889 - altair processEth1DataReset 134.00 ns/op 123.00 ns/op 1.09
mainnet_e81889 - altair processEffectiveBalanceUpdates 1.7155 ms/op 2.3601 ms/op 0.73
mainnet_e81889 - altair processSlashingsReset 686.00 ns/op 672.00 ns/op 1.02
mainnet_e81889 - altair processRandaoMixesReset 1.4570 us/op 1.1550 us/op 1.26
mainnet_e81889 - altair processHistoricalRootsUpdate 145.00 ns/op 128.00 ns/op 1.13
mainnet_e81889 - altair processParticipationFlagUpdates 444.00 ns/op 410.00 ns/op 1.08
mainnet_e81889 - altair processSyncCommitteeUpdates 111.00 ns/op 102.00 ns/op 1.09
mainnet_e81889 - altair afterProcessEpoch 41.295 ms/op 40.480 ms/op 1.02
capella processEpoch - mainnet_e217614 994.82 ms/op 807.04 ms/op 1.23
mainnet_e217614 - capella beforeProcessEpoch 57.376 ms/op 59.898 ms/op 0.96
mainnet_e217614 - capella processJustificationAndFinalization 7.6650 us/op 6.0800 us/op 1.26
mainnet_e217614 - capella processInactivityUpdates 17.632 ms/op 16.575 ms/op 1.06
mainnet_e217614 - capella processRewardsAndPenalties 99.886 ms/op 88.548 ms/op 1.13
mainnet_e217614 - capella processRegistryUpdates 4.4520 us/op 4.5840 us/op 0.97
mainnet_e217614 - capella processSlashings 146.00 ns/op 126.00 ns/op 1.16
mainnet_e217614 - capella processEth1DataReset 137.00 ns/op 128.00 ns/op 1.07
mainnet_e217614 - capella processEffectiveBalanceUpdates 17.881 ms/op 12.174 ms/op 1.47
mainnet_e217614 - capella processSlashingsReset 689.00 ns/op 682.00 ns/op 1.01
mainnet_e217614 - capella processRandaoMixesReset 1.5070 us/op 1.1510 us/op 1.31
mainnet_e217614 - capella processHistoricalRootsUpdate 136.00 ns/op 125.00 ns/op 1.09
mainnet_e217614 - capella processParticipationFlagUpdates 426.00 ns/op 421.00 ns/op 1.01
mainnet_e217614 - capella afterProcessEpoch 109.03 ms/op 109.33 ms/op 1.00
phase0 processEpoch - mainnet_e58758 367.32 ms/op 312.64 ms/op 1.17
mainnet_e58758 - phase0 beforeProcessEpoch 69.163 ms/op 69.749 ms/op 0.99
mainnet_e58758 - phase0 processJustificationAndFinalization 7.2440 us/op 6.1490 us/op 1.18
mainnet_e58758 - phase0 processRewardsAndPenalties 17.785 ms/op 16.860 ms/op 1.05
mainnet_e58758 - phase0 processRegistryUpdates 2.2640 us/op 2.9240 us/op 0.77
mainnet_e58758 - phase0 processSlashings 138.00 ns/op 132.00 ns/op 1.05
mainnet_e58758 - phase0 processEth1DataReset 135.00 ns/op 125.00 ns/op 1.08
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 866.36 us/op 809.49 us/op 1.07
mainnet_e58758 - phase0 processSlashingsReset 900.00 ns/op 844.00 ns/op 1.07
mainnet_e58758 - phase0 processRandaoMixesReset 1.4360 us/op 1.1910 us/op 1.21
mainnet_e58758 - phase0 processHistoricalRootsUpdate 273.00 ns/op 132.00 ns/op 2.07
mainnet_e58758 - phase0 processParticipationRecordUpdates 1.2670 us/op 998.00 ns/op 1.27
mainnet_e58758 - phase0 afterProcessEpoch 32.819 ms/op 34.221 ms/op 0.96
phase0 processEffectiveBalanceUpdates - 250000 normalcase 992.60 us/op 989.35 us/op 1.00
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 3.1365 ms/op 1.5446 ms/op 2.03
altair processInactivityUpdates - 250000 normalcase 12.166 ms/op 11.326 ms/op 1.07
altair processInactivityUpdates - 250000 worstcase 11.902 ms/op 11.267 ms/op 1.06
phase0 processRegistryUpdates - 250000 normalcase 2.1870 us/op 2.2080 us/op 0.99
phase0 processRegistryUpdates - 250000 badcase_full_deposits 154.14 us/op 150.68 us/op 1.02
phase0 processRegistryUpdates - 250000 worstcase 0.5 67.513 ms/op 63.884 ms/op 1.06
altair processRewardsAndPenalties - 250000 normalcase 16.744 ms/op 16.041 ms/op 1.04
altair processRewardsAndPenalties - 250000 worstcase 15.717 ms/op 15.049 ms/op 1.04
phase0 getAttestationDeltas - 250000 normalcase 5.4177 ms/op 5.1969 ms/op 1.04
phase0 getAttestationDeltas - 250000 worstcase 5.4380 ms/op 8.3628 ms/op 0.65
phase0 processSlashings - 250000 worstcase 60.778 us/op 58.899 us/op 1.03
altair processSyncCommitteeUpdates - 250000 10.183 ms/op 10.019 ms/op 1.02
BeaconState.hashTreeRoot - No change 195.00 ns/op 190.00 ns/op 1.03
BeaconState.hashTreeRoot - 1 full validator 81.125 us/op 85.868 us/op 0.94
BeaconState.hashTreeRoot - 32 full validator 1.1134 ms/op 941.32 us/op 1.18
BeaconState.hashTreeRoot - 512 full validator 7.3195 ms/op 8.6083 ms/op 0.85
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 117.47 us/op 101.33 us/op 1.16
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 2.6388 ms/op 1.5122 ms/op 1.74
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 16.747 ms/op 18.377 ms/op 0.91
BeaconState.hashTreeRoot - 1 balances 76.114 us/op 79.524 us/op 0.96
BeaconState.hashTreeRoot - 32 balances 996.33 us/op 753.71 us/op 1.32
BeaconState.hashTreeRoot - 512 balances 5.6347 ms/op 6.4254 ms/op 0.88
BeaconState.hashTreeRoot - 250000 balances 180.98 ms/op 136.29 ms/op 1.33
aggregationBits - 2048 els - zipIndexesInBitList 20.265 us/op 18.871 us/op 1.07
regular array get 100000 times 23.477 us/op 22.544 us/op 1.04
wrappedArray get 100000 times 23.450 us/op 22.519 us/op 1.04
arrayWithProxy get 100000 times 10.087 ms/op 12.390 ms/op 0.81
ssz.Root.equals 21.919 ns/op 21.274 ns/op 1.03
byteArrayEquals 21.719 ns/op 20.822 ns/op 1.04
Buffer.compare 9.0230 ns/op 8.6590 ns/op 1.04
processSlot - 1 slots 9.5960 us/op 9.1660 us/op 1.05
processSlot - 32 slots 2.3999 ms/op 2.0329 ms/op 1.18
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 4.3318 ms/op 5.6825 ms/op 0.76
getCommitteeAssignments - req 1 vs - 250000 vc 1.6164 ms/op 1.7376 ms/op 0.93
getCommitteeAssignments - req 100 vs - 250000 vc 3.2642 ms/op 3.5793 ms/op 0.91
getCommitteeAssignments - req 1000 vs - 250000 vc 3.5644 ms/op 3.7524 ms/op 0.95
findModifiedValidators - 10000 modified validators 812.95 ms/op 802.38 ms/op 1.01
findModifiedValidators - 1000 modified validators 460.01 ms/op 450.78 ms/op 1.02
findModifiedValidators - 100 modified validators 242.10 ms/op 253.98 ms/op 0.95
findModifiedValidators - 10 modified validators 160.15 ms/op 144.13 ms/op 1.11
findModifiedValidators - 1 modified validators 179.12 ms/op 141.50 ms/op 1.27
findModifiedValidators - no difference 151.79 ms/op 142.65 ms/op 1.06
migrate state 1500000 validators, 3400 modified, 2000 new 3.8023 s/op 2.8750 s/op 1.32
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 3.5900 ns/op 3.7000 ns/op 0.97
state getBlockRootAtSlot - 250000 vs - 7PWei 437.34 ns/op 350.50 ns/op 1.25
computeProposerIndex 100000 validators 1.2997 ms/op 1.3523 ms/op 0.96
getNextSyncCommitteeIndices 1000 validators 2.7787 ms/op 2.9214 ms/op 0.95
getNextSyncCommitteeIndices 10000 validators 24.306 ms/op 25.289 ms/op 0.96
getNextSyncCommitteeIndices 100000 validators 84.993 ms/op 88.532 ms/op 0.96
computeProposers - vc 250000 549.34 us/op 556.26 us/op 0.99
computeEpochShuffling - vc 250000 39.509 ms/op 39.037 ms/op 1.01
getNextSyncCommittee - vc 250000 9.1327 ms/op 9.4280 ms/op 0.97
nodejs block root to RootHex using toHex 89.075 ns/op 92.339 ns/op 0.96
nodejs block root to RootHex using toRootHex 67.689 ns/op 55.893 ns/op 1.21
nodejs fromHex(blob) 799.49 us/op 728.54 us/op 1.10
nodejs fromHexInto(blob) 593.74 us/op 629.42 us/op 0.94
nodejs block root to RootHex using the deprecated toHexString 440.70 ns/op 460.02 ns/op 0.96
nodejs byteArrayEquals 32 bytes (block root) 24.495 ns/op 25.825 ns/op 0.95
nodejs byteArrayEquals 48 bytes (pubkey) 35.645 ns/op 37.058 ns/op 0.96
nodejs byteArrayEquals 96 bytes (signature) 32.214 ns/op 34.043 ns/op 0.95
nodejs byteArrayEquals 1024 bytes 38.186 ns/op 40.389 ns/op 0.95
nodejs byteArrayEquals 131072 bytes (blob) 1.6631 us/op 1.7634 us/op 0.94
browser block root to RootHex using toHex 137.19 ns/op 145.58 ns/op 0.94
browser block root to RootHex using toRootHex 124.69 ns/op 132.44 ns/op 0.94
browser fromHex(blob) 1.6487 ms/op 1.5239 ms/op 1.08
browser fromHexInto(blob) 619.35 us/op 622.12 us/op 1.00
browser block root to RootHex using the deprecated toHexString 462.40 ns/op 322.66 ns/op 1.43
browser byteArrayEquals 32 bytes (block root) 27.821 ns/op 28.003 ns/op 0.99
browser byteArrayEquals 48 bytes (pubkey) 39.302 ns/op 39.460 ns/op 1.00
browser byteArrayEquals 96 bytes (signature) 73.103 ns/op 73.992 ns/op 0.99
browser byteArrayEquals 1024 bytes 736.75 ns/op 754.02 ns/op 0.98
browser byteArrayEquals 131072 bytes (blob) 93.285 us/op 95.280 us/op 0.98

by benchmarkbot/action

@nazarhussain
Copy link
Copy Markdown
Contributor Author

For any reviewer, I would like you to pull and try setup this branch locally once, so we are sure there is no issue on any dev environment as well.

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.

1 participant