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: release master #395

Merged
merged 1 commit into from
Aug 19, 2024
Merged

Conversation

wemeetagain
Copy link
Member

🤖 I have created a release beep boop

ssz: 0.17.1

0.17.1 (2024-08-19)

Bug Fixes


This PR was generated with Release Please. See documentation.

@wemeetagain wemeetagain requested a review from a team as a code owner August 19, 2024 14:42
@github-actions github-actions bot added the ssz label Aug 19, 2024
@wemeetagain wemeetagain merged commit 9ddd92e into master Aug 19, 2024
8 checks passed
@wemeetagain wemeetagain deleted the release-please--branches--master branch August 19, 2024 14:59
@wemeetagain
Copy link
Member Author

🤖 Release is at https://github.com/ChainSafe/ssz/releases/tag/ssz-v0.17.1 🌻

Copy link

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: 5bfa409 Previous: 216241d Ratio
digestTwoHashObjects 50023 times 48.314 ms/op 48.055 ms/op 1.01
digest64 50023 times 54.501 ms/op 53.724 ms/op 1.01
digest 50023 times 56.681 ms/op 58.633 ms/op 0.97
input length 32 1.2280 us/op 1.2110 us/op 1.01
input length 64 1.3770 us/op 1.3420 us/op 1.03
input length 128 2.3460 us/op 2.3170 us/op 1.01
input length 256 3.4420 us/op 3.4450 us/op 1.00
input length 512 5.7300 us/op 5.5850 us/op 1.03
input length 1024 11.147 us/op 10.692 us/op 1.04
digest 1000000 times 906.26 ms/op 900.56 ms/op 1.01
hashObjectToByteArray 50023 times 1.4370 ms/op 1.4304 ms/op 1.00
byteArrayToHashObject 50023 times 2.5293 ms/op 2.5155 ms/op 1.01
digest64 200092 times 228.13 ms/op 219.90 ms/op 1.04
hash 200092 times using batchHash4UintArray64s 247.92 ms/op 239.78 ms/op 1.03
digest64HashObjects 200092 times 200.13 ms/op 198.18 ms/op 1.01
hash 200092 times using batchHash4HashObjectInputs 209.91 ms/op 213.39 ms/op 0.98
getGindicesAtDepth 4.3550 us/op 4.6200 us/op 0.94
iterateAtDepth 7.7770 us/op 8.5660 us/op 0.91
getGindexBits 478.00 ns/op 475.00 ns/op 1.01
gindexIterator 1.0990 us/op 1.0240 us/op 1.07
HashComputationLevel.push then loop 28.702 ms/op 29.096 ms/op 0.99
HashComputation[] push then loop 49.934 ms/op 50.939 ms/op 0.98
hash 2 Uint8Array 500000 times - as-sha256 551.48 ms/op 549.53 ms/op 1.00
hashTwoObjects 500000 times - as-sha256 503.16 ms/op 504.81 ms/op 1.00
executeHashComputations - as-sha256 50.046 ms/op 47.412 ms/op 1.06
hash 2 Uint8Array 500000 times - noble 1.1667 s/op 1.1710 s/op 1.00
hashTwoObjects 500000 times - noble 1.6855 s/op 1.7832 s/op 0.95
executeHashComputations - noble 41.575 ms/op 42.541 ms/op 0.98
hash 2 Uint8Array 500000 times - hashtree 232.49 ms/op 233.35 ms/op 1.00
hashTwoObjects 500000 times - hashtree 218.36 ms/op 217.59 ms/op 1.00
executeHashComputations - hashtree 10.885 ms/op 11.607 ms/op 0.94
getNodeH() x7812.5 avg hindex 11.963 us/op 12.125 us/op 0.99
getNodeH() x7812.5 index 0 6.3110 us/op 6.2470 us/op 1.01
getNodeH() x7812.5 index 7 6.2710 us/op 6.3750 us/op 0.98
getNodeH() x7812.5 index 7 with key array 6.2460 us/op 6.2800 us/op 0.99
new LeafNode() x7812.5 14.683 us/op 14.685 us/op 1.00
getHashComputations 250000 nodes 20.361 ms/op 19.141 ms/op 1.06
batchHash 250000 nodes 329.59 ms/op 332.68 ms/op 0.99
get root 250000 nodes 917.13 ms/op 961.99 ms/op 0.95
getHashComputations 500000 nodes 31.874 ms/op 30.261 ms/op 1.05
batchHash 500000 nodes 590.79 ms/op 591.00 ms/op 1.00
get root 500000 nodes 1.7691 s/op 1.8744 s/op 0.94
getHashComputations 1000000 nodes 62.035 ms/op 63.327 ms/op 0.98
batchHash 1000000 nodes 1.1576 s/op 1.1619 s/op 1.00
get root 1000000 nodes 3.6199 s/op 3.6316 s/op 1.00
multiproof - depth 15, 1 requested leaves 9.0450 us/op 9.4540 us/op 0.96
tree offset multiproof - depth 15, 1 requested leaves 20.297 us/op 21.383 us/op 0.95
compact multiproof - depth 15, 1 requested leaves 3.6580 us/op 4.3340 us/op 0.84
multiproof - depth 15, 2 requested leaves 12.939 us/op 13.991 us/op 0.92
tree offset multiproof - depth 15, 2 requested leaves 24.220 us/op 25.802 us/op 0.94
compact multiproof - depth 15, 2 requested leaves 3.8790 us/op 4.4970 us/op 0.86
multiproof - depth 15, 3 requested leaves 18.187 us/op 19.772 us/op 0.92
tree offset multiproof - depth 15, 3 requested leaves 29.817 us/op 33.134 us/op 0.90
compact multiproof - depth 15, 3 requested leaves 4.7210 us/op 6.3300 us/op 0.75
multiproof - depth 15, 4 requested leaves 24.380 us/op 25.810 us/op 0.94
tree offset multiproof - depth 15, 4 requested leaves 37.957 us/op 40.417 us/op 0.94
compact multiproof - depth 15, 4 requested leaves 5.5890 us/op 7.2620 us/op 0.77
packedRootsBytesToLeafNodes bytes 4000 offset 0 2.0010 us/op 2.3100 us/op 0.87
packedRootsBytesToLeafNodes bytes 4000 offset 1 1.9750 us/op 2.1400 us/op 0.92
packedRootsBytesToLeafNodes bytes 4000 offset 2 1.9800 us/op 2.3570 us/op 0.84
packedRootsBytesToLeafNodes bytes 4000 offset 3 2.0140 us/op 2.3310 us/op 0.86
subtreeFillToContents depth 40 count 250000 43.169 ms/op 44.019 ms/op 0.98
setRoot - gindexBitstring 10.380 ms/op 11.148 ms/op 0.93
setRoot - gindex 10.960 ms/op 13.361 ms/op 0.82
getRoot - gindexBitstring 2.9526 ms/op 2.9702 ms/op 0.99
getRoot - gindex 3.7273 ms/op 3.9876 ms/op 0.93
getHashObject then setHashObject 11.961 ms/op 13.524 ms/op 0.88
setNodeWithFn 9.5784 ms/op 9.7302 ms/op 0.98
getNodeAtDepth depth 0 x100000 1.1127 ms/op 1.1270 ms/op 0.99
setNodeAtDepth depth 0 x100000 2.8602 ms/op 3.5206 ms/op 0.81
getNodesAtDepth depth 0 x100000 1.0548 ms/op 1.0628 ms/op 0.99
setNodesAtDepth depth 0 x100000 1.5176 ms/op 1.5182 ms/op 1.00
getNodeAtDepth depth 1 x100000 1.1817 ms/op 1.2073 ms/op 0.98
setNodeAtDepth depth 1 x100000 6.3760 ms/op 6.3717 ms/op 1.00
getNodesAtDepth depth 1 x100000 1.1764 ms/op 1.1782 ms/op 1.00
setNodesAtDepth depth 1 x100000 5.7432 ms/op 5.9947 ms/op 0.96
getNodeAtDepth depth 2 x100000 1.4544 ms/op 1.4856 ms/op 0.98
setNodeAtDepth depth 2 x100000 11.186 ms/op 10.906 ms/op 1.03
getNodesAtDepth depth 2 x100000 20.668 ms/op 21.241 ms/op 0.97
setNodesAtDepth depth 2 x100000 14.832 ms/op 17.009 ms/op 0.87
tree.getNodesAtDepth - gindexes 9.7375 ms/op 10.296 ms/op 0.95
tree.getNodesAtDepth - push all nodes 2.3703 ms/op 2.6176 ms/op 0.91
tree.getNodesAtDepth - navigation 235.50 us/op 234.50 us/op 1.00
tree.setNodesAtDepth - indexes 519.38 us/op 536.75 us/op 0.97
set at depth 8 603.00 ns/op 673.00 ns/op 0.90
set at depth 16 725.00 ns/op 844.00 ns/op 0.86
set at depth 32 1.1320 us/op 1.2330 us/op 0.92
iterateNodesAtDepth 8 256 15.539 us/op 17.299 us/op 0.90
getNodesAtDepth 8 256 3.9850 us/op 3.9720 us/op 1.00
iterateNodesAtDepth 16 65536 4.8965 ms/op 4.8324 ms/op 1.01
getNodesAtDepth 16 65536 1.4704 ms/op 2.0803 ms/op 0.71
iterateNodesAtDepth 32 250000 16.065 ms/op 17.947 ms/op 0.90
getNodesAtDepth 32 250000 4.2764 ms/op 4.3070 ms/op 0.99
iterateNodesAtDepth 40 250000 15.957 ms/op 15.973 ms/op 1.00
getNodesAtDepth 40 250000 4.3673 ms/op 4.2999 ms/op 1.02
250000 validators root getter 861.93 ms/op 885.53 ms/op 0.97
250000 validators batchHash() 321.09 ms/op 305.79 ms/op 1.05
250000 validators hashComputations 16.278 ms/op 18.731 ms/op 0.87
bitlist bytes to struct (120,90) 722.00 ns/op 663.00 ns/op 1.09
bitlist bytes to tree (120,90) 2.8980 us/op 2.7980 us/op 1.04
bitlist bytes to struct (2048,2048) 1.1190 us/op 1.1890 us/op 0.94
bitlist bytes to tree (2048,2048) 4.3200 us/op 4.1550 us/op 1.04
ByteListType - deserialize 8.8827 ms/op 9.1722 ms/op 0.97
BasicListType - deserialize 17.857 ms/op 16.469 ms/op 1.08
ByteListType - serialize 8.4909 ms/op 8.4978 ms/op 1.00
BasicListType - serialize 11.154 ms/op 12.023 ms/op 0.93
BasicListType - tree_convertToStruct 29.503 ms/op 31.202 ms/op 0.95
List[uint8, 68719476736] len 300000 ViewDU.getAll() + iterate 5.1326 ms/op 4.8480 ms/op 1.06
List[uint8, 68719476736] len 300000 ViewDU.get(i) 3.9909 ms/op 4.1277 ms/op 0.97
Array.push len 300000 empty Array - number 7.4648 ms/op 7.2753 ms/op 1.03
Array.set len 300000 from new Array - number 2.1886 ms/op 2.3804 ms/op 0.92
Array.set len 300000 - number 6.9853 ms/op 6.7391 ms/op 1.04
Uint8Array.set len 300000 409.86 us/op 387.42 us/op 1.06
Uint32Array.set len 300000 537.64 us/op 474.06 us/op 1.13
Container({a: uint8, b: uint8}) getViewDU x300000 64.969 ms/op 56.882 ms/op 1.14
ContainerNodeStruct({a: uint8, b: uint8}) getViewDU x300000 12.423 ms/op 11.998 ms/op 1.04
List(Container) len 300000 ViewDU.getAllReadonly() + iterate 215.43 ms/op 227.64 ms/op 0.95
List(Container) len 300000 ViewDU.getAllReadonlyValues() + iterate 281.60 ms/op 306.36 ms/op 0.92
List(Container) len 300000 ViewDU.get(i) 6.9166 ms/op 7.5512 ms/op 0.92
List(Container) len 300000 ViewDU.getReadonly(i) 6.6751 ms/op 6.9315 ms/op 0.96
List(ContainerNodeStruct) len 300000 ViewDU.getAllReadonly() + iterate 38.987 ms/op 35.248 ms/op 1.11
List(ContainerNodeStruct) len 300000 ViewDU.getAllReadonlyValues() + iterate 5.5785 ms/op 7.2180 ms/op 0.77
List(ContainerNodeStruct) len 300000 ViewDU.get(i) 6.5956 ms/op 7.1979 ms/op 0.92
List(ContainerNodeStruct) len 300000 ViewDU.getReadonly(i) 6.3806 ms/op 6.7843 ms/op 0.94
Array.push len 300000 empty Array - object 6.9533 ms/op 8.0574 ms/op 0.86
Array.set len 300000 from new Array - object 2.3641 ms/op 2.0202 ms/op 1.17
Array.set len 300000 - object 6.4387 ms/op 6.6838 ms/op 0.96
cachePermanentRootStruct no cache 5.8390 us/op 6.0230 us/op 0.97
cachePermanentRootStruct with cache 249.00 ns/op 260.00 ns/op 0.96
epochParticipation len 250000 rws 7813 2.3506 ms/op 2.2748 ms/op 1.03
deserialize Attestation - tree 4.3660 us/op 4.4850 us/op 0.97
deserialize Attestation - struct 1.9680 us/op 1.9450 us/op 1.01
deserialize SignedAggregateAndProof - tree 4.0140 us/op 4.0610 us/op 0.99
deserialize SignedAggregateAndProof - struct 3.2990 us/op 3.3980 us/op 0.97
deserialize SyncCommitteeMessage - tree 1.1180 us/op 1.1340 us/op 0.99
deserialize SyncCommitteeMessage - struct 1.2150 us/op 1.1980 us/op 1.01
deserialize SignedContributionAndProof - tree 2.1520 us/op 2.4410 us/op 0.88
deserialize SignedContributionAndProof - struct 2.5870 us/op 2.5650 us/op 1.01
deserialize SignedBeaconBlock - tree 234.08 us/op 238.94 us/op 0.98
deserialize SignedBeaconBlock - struct 125.75 us/op 138.32 us/op 0.91
BeaconState vc 300000 - deserialize tree 580.00 ms/op 600.99 ms/op 0.97
BeaconState vc 300000 - serialize tree 116.65 ms/op 125.34 ms/op 0.93
BeaconState.historicalRoots vc 300000 - deserialize tree 766.00 ns/op 857.00 ns/op 0.89
BeaconState.historicalRoots vc 300000 - serialize tree 639.00 ns/op 731.00 ns/op 0.87
BeaconState.validators vc 300000 - deserialize tree 543.93 ms/op 557.81 ms/op 0.98
BeaconState.validators vc 300000 - serialize tree 100.02 ms/op 113.52 ms/op 0.88
BeaconState.balances vc 300000 - deserialize tree 21.404 ms/op 21.551 ms/op 0.99
BeaconState.balances vc 300000 - serialize tree 4.5422 ms/op 5.8568 ms/op 0.78
BeaconState.previousEpochParticipation vc 300000 - deserialize tree 605.41 us/op 731.89 us/op 0.83
BeaconState.previousEpochParticipation vc 300000 - serialize tree 297.28 us/op 302.41 us/op 0.98
BeaconState.currentEpochParticipation vc 300000 - deserialize tree 632.12 us/op 709.51 us/op 0.89
BeaconState.currentEpochParticipation vc 300000 - serialize tree 298.33 us/op 301.29 us/op 0.99
BeaconState.inactivityScores vc 300000 - deserialize tree 21.732 ms/op 23.684 ms/op 0.92
BeaconState.inactivityScores vc 300000 - serialize tree 3.3112 ms/op 4.7526 ms/op 0.70
hashTreeRoot Attestation - struct 17.860 us/op 22.667 us/op 0.79
hashTreeRoot Attestation - tree 8.7310 us/op 11.269 us/op 0.77
hashTreeRoot SignedAggregateAndProof - struct 23.108 us/op 31.265 us/op 0.74
hashTreeRoot SignedAggregateAndProof - tree 13.198 us/op 13.073 us/op 1.01
hashTreeRoot SyncCommitteeMessage - struct 5.9100 us/op 7.6010 us/op 0.78
hashTreeRoot SyncCommitteeMessage - tree 3.1750 us/op 3.2940 us/op 0.96
hashTreeRoot SignedContributionAndProof - struct 15.874 us/op 19.896 us/op 0.80
hashTreeRoot SignedContributionAndProof - tree 10.187 us/op 8.9280 us/op 1.14
hashTreeRoot SignedBeaconBlock - struct 1.3253 ms/op 1.6815 ms/op 0.79
hashTreeRoot SignedBeaconBlock - tree 783.39 us/op 825.60 us/op 0.95
hashTreeRoot Validator - struct 7.9430 us/op 10.065 us/op 0.79
hashTreeRoot Validator - tree 6.6080 us/op 7.8340 us/op 0.84
BeaconState vc 300000 - hashTreeRoot tree 2.1799 s/op 2.2027 s/op 0.99
BeaconState.historicalRoots vc 300000 - hashTreeRoot tree 1.1200 us/op 1.1040 us/op 1.01
BeaconState.validators vc 300000 - hashTreeRoot tree 2.0526 s/op 2.1293 s/op 0.96
BeaconState.balances vc 300000 - hashTreeRoot tree 37.312 ms/op 35.131 ms/op 1.06
BeaconState.previousEpochParticipation vc 300000 - hashTreeRoot tree 4.1473 ms/op 4.1544 ms/op 1.00
BeaconState.currentEpochParticipation vc 300000 - hashTreeRoot tree 4.1459 ms/op 4.1562 ms/op 1.00
BeaconState.inactivityScores vc 300000 - hashTreeRoot tree 33.284 ms/op 33.709 ms/op 0.99
hash64 x18 10.085 us/op 9.4430 us/op 1.07
hashTwoObjects x18 8.9070 us/op 8.9860 us/op 0.99
hash64 x1740 906.88 us/op 874.86 us/op 1.04
hashTwoObjects x1740 802.84 us/op 820.95 us/op 0.98
hash64 x2700000 1.4271 s/op 1.3658 s/op 1.04
hashTwoObjects x2700000 1.2631 s/op 1.2626 s/op 1.00
get_exitEpoch - ContainerType 236.00 ns/op 282.00 ns/op 0.84
get_exitEpoch - ContainerNodeStructType 242.00 ns/op 272.00 ns/op 0.89
set_exitEpoch - ContainerType 265.00 ns/op 288.00 ns/op 0.92
set_exitEpoch - ContainerNodeStructType 232.00 ns/op 287.00 ns/op 0.81
get_pubkey - ContainerType 1.0940 us/op 969.00 ns/op 1.13
get_pubkey - ContainerNodeStructType 253.00 ns/op 279.00 ns/op 0.91
hashTreeRoot - ContainerType 440.00 ns/op 461.00 ns/op 0.95
hashTreeRoot - ContainerNodeStructType 453.00 ns/op 528.00 ns/op 0.86
createProof - ContainerType 4.2320 us/op 4.8720 us/op 0.87
createProof - ContainerNodeStructType 21.869 us/op 24.055 us/op 0.91
serialize - ContainerType 1.9330 us/op 1.9190 us/op 1.01
serialize - ContainerNodeStructType 1.4580 us/op 1.6450 us/op 0.89
set_exitEpoch_and_hashTreeRoot - ContainerType 2.8570 us/op 2.8440 us/op 1.00
set_exitEpoch_and_hashTreeRoot - ContainerNodeStructType 7.2900 us/op 7.4870 us/op 0.97
Array - for of 5.5760 us/op 11.639 us/op 0.48
Array - for(;;) 5.5670 us/op 12.120 us/op 0.46
basicListValue.readonlyValuesArray() 4.6067 ms/op 6.0195 ms/op 0.77
basicListValue.readonlyValuesArray() + loop all 4.6526 ms/op 6.2804 ms/op 0.74
compositeListValue.readonlyValuesArray() 31.004 ms/op 30.297 ms/op 1.02
compositeListValue.readonlyValuesArray() + loop all 26.378 ms/op 29.299 ms/op 0.90
Number64UintType - get balances list 4.6969 ms/op 4.6224 ms/op 1.02
Number64UintType - set balances list 8.4922 ms/op 9.7283 ms/op 0.87
Number64UintType - get and increase 10 then set 39.022 ms/op 39.467 ms/op 0.99
Number64UintType - increase 10 using applyDelta 15.430 ms/op 16.447 ms/op 0.94
Number64UintType - increase 10 using applyDeltaInBatch 15.593 ms/op 16.648 ms/op 0.94
tree_newTreeFromUint64Deltas 19.648 ms/op 17.723 ms/op 1.11
unsafeUint8ArrayToTree 38.441 ms/op 32.976 ms/op 1.17
bitLength(50) 242.00 ns/op 261.00 ns/op 0.93
bitLengthStr(50) 227.00 ns/op 237.00 ns/op 0.96
bitLength(8000) 225.00 ns/op 259.00 ns/op 0.87
bitLengthStr(8000) 268.00 ns/op 272.00 ns/op 0.99
bitLength(250000) 223.00 ns/op 257.00 ns/op 0.87
bitLengthStr(250000) 301.00 ns/op 309.00 ns/op 0.97
floor - Math.floor (53) 1.2454 ns/op 1.2376 ns/op 1.01
floor - << 0 (53) 1.2472 ns/op 1.2368 ns/op 1.01
floor - Math.floor (512) 1.2466 ns/op 1.2383 ns/op 1.01
floor - << 0 (512) 1.2366 ns/op 1.2610 ns/op 0.98
fnIf(0) 1.5500 ns/op 1.5468 ns/op 1.00
fnSwitch(0) 2.1669 ns/op 2.1963 ns/op 0.99
fnObj(0) 1.5476 ns/op 1.5557 ns/op 0.99
fnArr(0) 1.5448 ns/op 1.5472 ns/op 1.00
fnIf(4) 2.1672 ns/op 2.1705 ns/op 1.00
fnSwitch(4) 2.1641 ns/op 2.1661 ns/op 1.00
fnObj(4) 1.5516 ns/op 1.5473 ns/op 1.00
fnArr(4) 1.5460 ns/op 1.5588 ns/op 0.99
fnIf(9) 3.0927 ns/op 3.1078 ns/op 1.00
fnSwitch(9) 2.1657 ns/op 2.1663 ns/op 1.00
fnObj(9) 1.5506 ns/op 1.5644 ns/op 0.99
fnArr(9) 1.5660 ns/op 1.5462 ns/op 1.01
Container {a,b,vec} - as struct x100000 124.22 us/op 123.94 us/op 1.00
Container {a,b,vec} - as tree x100000 341.25 us/op 341.56 us/op 1.00
Container {a,vec,b} - as struct x100000 156.69 us/op 157.63 us/op 0.99
Container {a,vec,b} - as tree x100000 371.75 us/op 371.38 us/op 1.00
get 2 props x1000000 - rawObject 309.45 us/op 309.85 us/op 1.00
get 2 props x1000000 - proxy 72.716 ms/op 72.961 ms/op 1.00
get 2 props x1000000 - customObj 309.64 us/op 309.70 us/op 1.00
Simple object binary -> struct 809.00 ns/op 812.00 ns/op 1.00
Simple object binary -> tree_backed 1.6300 us/op 1.4020 us/op 1.16
Simple object struct -> tree_backed 2.2910 us/op 1.8690 us/op 1.23
Simple object tree_backed -> struct 2.1930 us/op 1.8870 us/op 1.16
Simple object struct -> binary 964.00 ns/op 930.00 ns/op 1.04
Simple object tree_backed -> binary 1.5730 us/op 1.6380 us/op 0.96
aggregationBits binary -> struct 597.00 ns/op 595.00 ns/op 1.00
aggregationBits binary -> tree_backed 2.3600 us/op 2.4260 us/op 0.97
aggregationBits struct -> tree_backed 2.7520 us/op 2.6490 us/op 1.04
aggregationBits tree_backed -> struct 1.1970 us/op 1.2170 us/op 0.98
aggregationBits struct -> binary 772.00 ns/op 659.00 ns/op 1.17
aggregationBits tree_backed -> binary 1.0550 us/op 1.0750 us/op 0.98
List(uint8) 100000 binary -> struct 1.4768 ms/op 1.5169 ms/op 0.97
List(uint8) 100000 binary -> tree_backed 90.673 us/op 97.088 us/op 0.93
List(uint8) 100000 struct -> tree_backed 1.1648 ms/op 1.1683 ms/op 1.00
List(uint8) 100000 tree_backed -> struct 1.1694 ms/op 1.0608 ms/op 1.10
List(uint8) 100000 struct -> binary 1.0029 ms/op 1.0081 ms/op 0.99
List(uint8) 100000 tree_backed -> binary 92.928 us/op 88.948 us/op 1.04
List(uint64Number) 100000 binary -> struct 1.2931 ms/op 1.2350 ms/op 1.05
List(uint64Number) 100000 binary -> tree_backed 3.3540 ms/op 3.2713 ms/op 1.03
List(uint64Number) 100000 struct -> tree_backed 4.7953 ms/op 4.8184 ms/op 1.00
List(uint64Number) 100000 tree_backed -> struct 2.1599 ms/op 2.3193 ms/op 0.93
List(uint64Number) 100000 struct -> binary 1.5076 ms/op 1.5024 ms/op 1.00
List(uint64Number) 100000 tree_backed -> binary 864.24 us/op 905.50 us/op 0.95
List(Uint64Bigint) 100000 binary -> struct 3.8386 ms/op 3.8837 ms/op 0.99
List(Uint64Bigint) 100000 binary -> tree_backed 3.6145 ms/op 3.3741 ms/op 1.07
List(Uint64Bigint) 100000 struct -> tree_backed 5.8776 ms/op 5.3670 ms/op 1.10
List(Uint64Bigint) 100000 tree_backed -> struct 4.6691 ms/op 4.4599 ms/op 1.05
List(Uint64Bigint) 100000 struct -> binary 2.0922 ms/op 2.0397 ms/op 1.03
List(Uint64Bigint) 100000 tree_backed -> binary 979.33 us/op 912.04 us/op 1.07
Vector(Root) 100000 binary -> struct 31.281 ms/op 26.728 ms/op 1.17
Vector(Root) 100000 binary -> tree_backed 32.847 ms/op 29.252 ms/op 1.12
Vector(Root) 100000 struct -> tree_backed 37.135 ms/op 37.011 ms/op 1.00
Vector(Root) 100000 tree_backed -> struct 43.627 ms/op 44.536 ms/op 0.98
Vector(Root) 100000 struct -> binary 2.6161 ms/op 2.4746 ms/op 1.06
Vector(Root) 100000 tree_backed -> binary 10.140 ms/op 8.8946 ms/op 1.14
List(Validator) 100000 binary -> struct 104.73 ms/op 105.27 ms/op 0.99
List(Validator) 100000 binary -> tree_backed 287.11 ms/op 297.23 ms/op 0.97
List(Validator) 100000 struct -> tree_backed 295.03 ms/op 304.11 ms/op 0.97
List(Validator) 100000 tree_backed -> struct 202.57 ms/op 203.66 ms/op 0.99
List(Validator) 100000 struct -> binary 27.286 ms/op 26.599 ms/op 1.03
List(Validator) 100000 tree_backed -> binary 109.27 ms/op 106.62 ms/op 1.02
List(Validator-NS) 100000 binary -> struct 105.06 ms/op 96.287 ms/op 1.09
List(Validator-NS) 100000 binary -> tree_backed 143.66 ms/op 145.03 ms/op 0.99
List(Validator-NS) 100000 struct -> tree_backed 174.57 ms/op 175.07 ms/op 1.00
List(Validator-NS) 100000 tree_backed -> struct 148.43 ms/op 149.94 ms/op 0.99
List(Validator-NS) 100000 struct -> binary 27.650 ms/op 26.786 ms/op 1.03
List(Validator-NS) 100000 tree_backed -> binary 33.295 ms/op 33.675 ms/op 0.99
get epochStatuses - MutableVector 102.18 us/op 97.885 us/op 1.04
get epochStatuses - ViewDU 211.21 us/op 200.14 us/op 1.06
set epochStatuses - ListTreeView 1.6629 ms/op 1.6461 ms/op 1.01
set epochStatuses - ListTreeView - set() 442.36 us/op 431.83 us/op 1.02
set epochStatuses - ListTreeView - commit() 527.95 us/op 529.25 us/op 1.00
bitstring 647.03 ns/op 638.44 ns/op 1.01
bit mask 13.810 ns/op 13.818 ns/op 1.00
struct - increase slot to 1000000 935.33 us/op 944.65 us/op 0.99
UintNumberType - increase slot to 1000000 20.178 ms/op 21.680 ms/op 0.93
UintBigintType - increase slot to 1000000 189.26 ms/op 193.60 ms/op 0.98
UintBigint8 x 100000 tree_deserialize 4.6677 ms/op 4.8329 ms/op 0.97
UintBigint8 x 100000 tree_serialize 1.1139 ms/op 1.0930 ms/op 1.02
UintBigint16 x 100000 tree_deserialize 4.9627 ms/op 4.8685 ms/op 1.02
UintBigint16 x 100000 tree_serialize 1.2505 ms/op 1.2655 ms/op 0.99
UintBigint32 x 100000 tree_deserialize 5.0788 ms/op 4.9914 ms/op 1.02
UintBigint32 x 100000 tree_serialize 1.2538 ms/op 1.3011 ms/op 0.96
UintBigint64 x 100000 tree_deserialize 5.3555 ms/op 5.3148 ms/op 1.01
UintBigint64 x 100000 tree_serialize 1.6457 ms/op 1.7339 ms/op 0.95
UintBigint8 x 100000 value_deserialize 436.22 us/op 433.07 us/op 1.01
UintBigint8 x 100000 value_serialize 673.20 us/op 645.88 us/op 1.04
UintBigint16 x 100000 value_deserialize 468.51 us/op 464.40 us/op 1.01
UintBigint16 x 100000 value_serialize 731.50 us/op 725.62 us/op 1.01
UintBigint32 x 100000 value_deserialize 437.49 us/op 433.84 us/op 1.01
UintBigint32 x 100000 value_serialize 702.92 us/op 687.77 us/op 1.02
UintBigint64 x 100000 value_deserialize 500.54 us/op 497.01 us/op 1.01
UintBigint64 x 100000 value_serialize 895.87 us/op 899.15 us/op 1.00
UintBigint8 x 100000 deserialize 3.0174 ms/op 3.3365 ms/op 0.90
UintBigint8 x 100000 serialize 1.5281 ms/op 1.7853 ms/op 0.86
UintBigint16 x 100000 deserialize 3.0904 ms/op 3.0754 ms/op 1.00
UintBigint16 x 100000 serialize 1.5952 ms/op 1.4434 ms/op 1.11
UintBigint32 x 100000 deserialize 3.0587 ms/op 3.1977 ms/op 0.96
UintBigint32 x 100000 serialize 2.8251 ms/op 2.7317 ms/op 1.03
UintBigint64 x 100000 deserialize 3.8006 ms/op 3.8145 ms/op 1.00
UintBigint64 x 100000 serialize 1.5090 ms/op 1.5096 ms/op 1.00
UintBigint128 x 100000 deserialize 5.5446 ms/op 5.4077 ms/op 1.03
UintBigint128 x 100000 serialize 14.655 ms/op 15.386 ms/op 0.95
UintBigint256 x 100000 deserialize 8.3066 ms/op 8.4454 ms/op 0.98
UintBigint256 x 100000 serialize 44.278 ms/op 44.021 ms/op 1.01
Slice from Uint8Array x25000 1.1972 ms/op 1.1610 ms/op 1.03
Slice from ArrayBuffer x25000 15.946 ms/op 16.908 ms/op 0.94
Slice from ArrayBuffer x25000 + new Uint8Array 17.864 ms/op 18.692 ms/op 0.96
Copy Uint8Array 100000 iterate 1.6816 ms/op 1.6639 ms/op 1.01
Copy Uint8Array 100000 slice 122.59 us/op 102.91 us/op 1.19
Copy Uint8Array 100000 Uint8Array.prototype.slice.call 117.74 us/op 105.49 us/op 1.12
Copy Buffer 100000 Uint8Array.prototype.slice.call 113.96 us/op 113.00 us/op 1.01
Copy Uint8Array 100000 slice + set 217.20 us/op 198.94 us/op 1.09
Copy Uint8Array 100000 subarray + set 113.72 us/op 122.20 us/op 0.93
Copy Uint8Array 100000 slice arrayBuffer 113.78 us/op 122.14 us/op 0.93
Uint64 deserialize 100000 - iterate Uint8Array 1.9076 ms/op 1.8912 ms/op 1.01
Uint64 deserialize 100000 - by Uint32A 1.9106 ms/op 1.8859 ms/op 1.01
Uint64 deserialize 100000 - by DataView.getUint32 x2 1.8678 ms/op 1.9074 ms/op 0.98
Uint64 deserialize 100000 - by DataView.getBigUint64 5.1041 ms/op 5.0279 ms/op 1.02
Uint64 deserialize 100000 - by byte 40.297 ms/op 40.127 ms/op 1.00

by benchmarkbot/action

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant