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 #399

Merged
merged 1 commit into from
Oct 15, 2024
Merged

Conversation

wemeetagain
Copy link
Member

@wemeetagain wemeetagain commented Sep 4, 2024

🤖 I have created a release beep boop

as-sha256: 0.5.0

0.5.0 (2024-10-15)

Bug Fixes

  • add homepage/repo etc to as-sha256 package.json (#401) (1dc50ef)
persistent-merkle-tree: 0.8.0

0.8.0 (2024-10-15)

Features

ssz: 0.18.0

0.18.0 (2024-10-15)

Features


This PR was generated with Release Please. See documentation.

Copy link

github-actions bot commented Sep 4, 2024

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: 5450ee3 Previous: b4beed2 Ratio
digestTwoHashObjects 50023 times 48.228 ms/op 47.563 ms/op 1.01
digest64 50023 times 53.936 ms/op 53.231 ms/op 1.01
digest 50023 times 60.321 ms/op 54.726 ms/op 1.10
input length 32 1.3030 us/op 1.2230 us/op 1.07
input length 64 1.4620 us/op 1.3700 us/op 1.07
input length 128 2.4990 us/op 2.2950 us/op 1.09
input length 256 3.6510 us/op 3.4350 us/op 1.06
input length 512 6.0320 us/op 5.5950 us/op 1.08
input length 1024 11.352 us/op 10.736 us/op 1.06
digest 1000000 times 978.30 ms/op 920.41 ms/op 1.06
hashObjectToByteArray 50023 times 1.4353 ms/op 1.4270 ms/op 1.01
byteArrayToHashObject 50023 times 2.5714 ms/op 2.5095 ms/op 1.02
digest64 200092 times 240.67 ms/op 219.30 ms/op 1.10
hash 200092 times using batchHash4UintArray64s 259.71 ms/op 237.94 ms/op 1.09
digest64HashObjects 200092 times 199.19 ms/op 191.47 ms/op 1.04
hash 200092 times using batchHash4HashObjectInputs 213.89 ms/op 199.39 ms/op 1.07
getGindicesAtDepth 4.3370 us/op 4.3020 us/op 1.01
iterateAtDepth 7.6600 us/op 7.6230 us/op 1.00
getGindexBits 467.00 ns/op 478.00 ns/op 0.98
gindexIterator 1.0630 us/op 1.0660 us/op 1.00
HashComputationLevel.push then loop 29.551 ms/op 25.273 ms/op 1.17
HashComputation[] push then loop 39.712 ms/op 47.331 ms/op 0.84
hash 2 Uint8Array 500000 times - as-sha256 549.78 ms/op 538.91 ms/op 1.02
hashTwoObjects 500000 times - as-sha256 501.09 ms/op 496.24 ms/op 1.01
executeHashComputations - as-sha256 47.958 ms/op 46.232 ms/op 1.04
hash 2 Uint8Array 500000 times - noble 1.1495 s/op 1.0572 s/op 1.09
hashTwoObjects 500000 times - noble 1.6839 s/op 1.4922 s/op 1.13
executeHashComputations - noble 41.935 ms/op 40.539 ms/op 1.03
hash 2 Uint8Array 500000 times - hashtree 233.60 ms/op 224.17 ms/op 1.04
hashTwoObjects 500000 times - hashtree 216.05 ms/op 218.75 ms/op 0.99
executeHashComputations - hashtree 13.183 ms/op 10.730 ms/op 1.23
getHashComputations 2.5105 ms/op 2.6966 ms/op 0.93
executeHashComputations 12.724 ms/op 11.069 ms/op 1.15
get root 17.993 ms/op 17.276 ms/op 1.04
getNodeH() x7812.5 avg hindex 12.902 us/op 12.511 us/op 1.03
getNodeH() x7812.5 index 0 6.2420 us/op 6.2320 us/op 1.00
getNodeH() x7812.5 index 7 6.2750 us/op 6.3240 us/op 0.99
getNodeH() x7812.5 index 7 with key array 6.2670 us/op 6.2210 us/op 1.01
new LeafNode() x7812.5 14.672 us/op 14.723 us/op 1.00
getHashComputations 250000 nodes 20.556 ms/op 19.422 ms/op 1.06
batchHash 250000 nodes 97.517 ms/op 88.547 ms/op 1.10
get root 250000 nodes 129.13 ms/op 118.56 ms/op 1.09
getHashComputations 500000 nodes 28.319 ms/op 28.728 ms/op 0.99
batchHash 500000 nodes 181.92 ms/op 142.17 ms/op 1.28
get root 500000 nodes 250.95 ms/op 238.10 ms/op 1.05
getHashComputations 1000000 nodes 55.945 ms/op 70.132 ms/op 0.80
batchHash 1000000 nodes 328.38 ms/op 328.90 ms/op 1.00
get root 1000000 nodes 490.00 ms/op 477.38 ms/op 1.03
multiproof - depth 15, 1 requested leaves 9.4960 us/op 8.1730 us/op 1.16
tree offset multiproof - depth 15, 1 requested leaves 21.092 us/op 18.112 us/op 1.16
compact multiproof - depth 15, 1 requested leaves 4.0170 us/op 3.4020 us/op 1.18
multiproof - depth 15, 2 requested leaves 13.772 us/op 11.860 us/op 1.16
tree offset multiproof - depth 15, 2 requested leaves 24.646 us/op 21.715 us/op 1.13
compact multiproof - depth 15, 2 requested leaves 4.0870 us/op 3.4780 us/op 1.18
multiproof - depth 15, 3 requested leaves 18.513 us/op 16.901 us/op 1.10
tree offset multiproof - depth 15, 3 requested leaves 29.989 us/op 27.903 us/op 1.07
compact multiproof - depth 15, 3 requested leaves 5.3840 us/op 4.2200 us/op 1.28
multiproof - depth 15, 4 requested leaves 24.934 us/op 21.786 us/op 1.14
tree offset multiproof - depth 15, 4 requested leaves 38.263 us/op 35.400 us/op 1.08
compact multiproof - depth 15, 4 requested leaves 6.4240 us/op 5.0270 us/op 1.28
packedRootsBytesToLeafNodes bytes 4000 offset 0 2.0930 us/op 2.0580 us/op 1.02
packedRootsBytesToLeafNodes bytes 4000 offset 1 1.9780 us/op 2.0460 us/op 0.97
packedRootsBytesToLeafNodes bytes 4000 offset 2 1.9860 us/op 2.0460 us/op 0.97
packedRootsBytesToLeafNodes bytes 4000 offset 3 2.0730 us/op 2.0170 us/op 1.03
subtreeFillToContents depth 40 count 250000 45.638 ms/op 39.406 ms/op 1.16
setRoot - gindexBitstring 9.2709 ms/op 9.4713 ms/op 0.98
setRoot - gindex 9.6061 ms/op 9.7799 ms/op 0.98
getRoot - gindexBitstring 2.8430 ms/op 2.3727 ms/op 1.20
getRoot - gindex 3.4917 ms/op 3.2045 ms/op 1.09
getHashObject then setHashObject 10.386 ms/op 10.076 ms/op 1.03
setNodeWithFn 8.2109 ms/op 7.6212 ms/op 1.08
getNodeAtDepth depth 0 x100000 1.1132 ms/op 1.1147 ms/op 1.00
setNodeAtDepth depth 0 x100000 2.5316 ms/op 2.4581 ms/op 1.03
getNodesAtDepth depth 0 x100000 1.0525 ms/op 1.0597 ms/op 0.99
setNodesAtDepth depth 0 x100000 1.5180 ms/op 1.5213 ms/op 1.00
getNodeAtDepth depth 1 x100000 1.1817 ms/op 1.1774 ms/op 1.00
setNodeAtDepth depth 1 x100000 5.3106 ms/op 5.1523 ms/op 1.03
getNodesAtDepth depth 1 x100000 1.1769 ms/op 1.1761 ms/op 1.00
setNodesAtDepth depth 1 x100000 4.6965 ms/op 4.3912 ms/op 1.07
getNodeAtDepth depth 2 x100000 1.4556 ms/op 1.4585 ms/op 1.00
setNodeAtDepth depth 2 x100000 9.6110 ms/op 8.9137 ms/op 1.08
getNodesAtDepth depth 2 x100000 20.161 ms/op 17.966 ms/op 1.12
setNodesAtDepth depth 2 x100000 14.275 ms/op 12.902 ms/op 1.11
tree.getNodesAtDepth - gindexes 10.144 ms/op 7.2954 ms/op 1.39
tree.getNodesAtDepth - push all nodes 1.9635 ms/op 1.8712 ms/op 1.05
tree.getNodesAtDepth - navigation 232.49 us/op 233.54 us/op 1.00
tree.setNodesAtDepth - indexes 410.01 us/op 389.71 us/op 1.05
set at depth 8 487.00 ns/op 455.00 ns/op 1.07
set at depth 16 633.00 ns/op 584.00 ns/op 1.08
set at depth 32 987.00 ns/op 931.00 ns/op 1.06
iterateNodesAtDepth 8 256 14.359 us/op 13.033 us/op 1.10
getNodesAtDepth 8 256 3.6820 us/op 3.3670 us/op 1.09
iterateNodesAtDepth 16 65536 4.4764 ms/op 4.2538 ms/op 1.05
getNodesAtDepth 16 65536 1.5583 ms/op 1.5348 ms/op 1.02
iterateNodesAtDepth 32 250000 16.184 ms/op 15.465 ms/op 1.05
getNodesAtDepth 32 250000 4.5007 ms/op 4.2977 ms/op 1.05
iterateNodesAtDepth 40 250000 16.933 ms/op 15.075 ms/op 1.12
getNodesAtDepth 40 250000 4.6780 ms/op 4.2544 ms/op 1.10
250000 validators root getter 131.55 ms/op 117.93 ms/op 1.12
250000 validators batchHash() 106.21 ms/op 81.978 ms/op 1.30
250000 validators hashComputations 16.715 ms/op 17.881 ms/op 0.93
bitlist bytes to struct (120,90) 1.0030 us/op 821.00 ns/op 1.22
bitlist bytes to tree (120,90) 3.8720 us/op 3.1870 us/op 1.21
bitlist bytes to struct (2048,2048) 1.4480 us/op 1.1530 us/op 1.26
bitlist bytes to tree (2048,2048) 4.4610 us/op 3.9570 us/op 1.13
ByteListType - deserialize 11.475 ms/op 7.1776 ms/op 1.60
BasicListType - deserialize 18.450 ms/op 15.106 ms/op 1.22
ByteListType - serialize 9.8430 ms/op 7.3920 ms/op 1.33
BasicListType - serialize 11.825 ms/op 10.336 ms/op 1.14
BasicListType - tree_convertToStruct 31.578 ms/op 26.430 ms/op 1.19
List[uint8, 68719476736] len 300000 ViewDU.getAll() + iterate 5.0505 ms/op 4.3451 ms/op 1.16
List[uint8, 68719476736] len 300000 ViewDU.get(i) 4.1885 ms/op 4.0176 ms/op 1.04
Array.push len 300000 empty Array - number 7.9142 ms/op 5.7115 ms/op 1.39
Array.set len 300000 from new Array - number 2.3866 ms/op 1.8534 ms/op 1.29
Array.set len 300000 - number 7.5608 ms/op 5.6512 ms/op 1.34
Uint8Array.set len 300000 413.53 us/op 367.16 us/op 1.13
Uint32Array.set len 300000 464.59 us/op 420.72 us/op 1.10
Container({a: uint8, b: uint8}) getViewDU x300000 50.949 ms/op 45.041 ms/op 1.13
ContainerNodeStruct({a: uint8, b: uint8}) getViewDU x300000 11.919 ms/op 10.702 ms/op 1.11
List(Container) len 300000 ViewDU.getAllReadonly() + iterate 226.96 ms/op 198.38 ms/op 1.14
List(Container) len 300000 ViewDU.getAllReadonlyValues() + iterate 299.89 ms/op 230.48 ms/op 1.30
List(Container) len 300000 ViewDU.get(i) 6.7815 ms/op 6.3351 ms/op 1.07
List(Container) len 300000 ViewDU.getReadonly(i) 6.9330 ms/op 6.2013 ms/op 1.12
List(ContainerNodeStruct) len 300000 ViewDU.getAllReadonly() + iterate 40.797 ms/op 40.398 ms/op 1.01
List(ContainerNodeStruct) len 300000 ViewDU.getAllReadonlyValues() + iterate 6.2714 ms/op 5.0758 ms/op 1.24
List(ContainerNodeStruct) len 300000 ViewDU.get(i) 6.6386 ms/op 5.9316 ms/op 1.12
List(ContainerNodeStruct) len 300000 ViewDU.getReadonly(i) 6.1762 ms/op 5.8203 ms/op 1.06
Array.push len 300000 empty Array - object 7.0154 ms/op 5.8913 ms/op 1.19
Array.set len 300000 from new Array - object 2.1849 ms/op 2.0034 ms/op 1.09
Array.set len 300000 - object 6.9573 ms/op 6.2420 ms/op 1.11
cachePermanentRootStruct no cache 6.0920 us/op 5.1110 us/op 1.19
cachePermanentRootStruct with cache 234.00 ns/op 211.00 ns/op 1.11
epochParticipation len 250000 rws 7813 2.3418 ms/op 2.1637 ms/op 1.08
BeaconState ViewDU hashTreeRoot() vc=200000 111.42 ms/op 101.07 ms/op 1.10
BeaconState ViewDU recursive hash - commit step vc=200000 4.6966 ms/op 3.5608 ms/op 1.32
BeaconState ViewDU validator tree creation vc=10000 38.319 ms/op 33.278 ms/op 1.15
BeaconState ViewDU batchHashTreeRoot vc=200000 104.73 ms/op 89.382 ms/op 1.17
BeaconState ViewDU hashTreeRoot - commit step vc=200000 90.596 ms/op 80.229 ms/op 1.13
BeaconState ViewDU hashTreeRoot - hash step vc=200000 18.758 ms/op 14.314 ms/op 1.31
deserialize Attestation - tree 4.5580 us/op 3.9630 us/op 1.15
deserialize Attestation - struct 2.0780 us/op 1.7580 us/op 1.18
deserialize SignedAggregateAndProof - tree 4.4960 us/op 3.6310 us/op 1.24
deserialize SignedAggregateAndProof - struct 3.4800 us/op 2.9160 us/op 1.19
deserialize SyncCommitteeMessage - tree 1.1450 us/op 1.0250 us/op 1.12
deserialize SyncCommitteeMessage - struct 1.2580 us/op 1.0620 us/op 1.18
deserialize SignedContributionAndProof - tree 2.6610 us/op 2.0080 us/op 1.33
deserialize SignedContributionAndProof - struct 2.7230 us/op 2.1560 us/op 1.26
deserialize SignedBeaconBlock - tree 236.95 us/op 207.08 us/op 1.14
deserialize SignedBeaconBlock - struct 132.90 us/op 114.47 us/op 1.16
BeaconState vc 300000 - deserialize tree 675.65 ms/op 585.06 ms/op 1.15
BeaconState vc 300000 - serialize tree 106.46 ms/op 136.42 ms/op 0.78
BeaconState.historicalRoots vc 300000 - deserialize tree 713.00 ns/op 691.00 ns/op 1.03
BeaconState.historicalRoots vc 300000 - serialize tree 826.00 ns/op 650.00 ns/op 1.27
BeaconState.validators vc 300000 - deserialize tree 633.46 ms/op 566.56 ms/op 1.12
BeaconState.validators vc 300000 - serialize tree 99.265 ms/op 97.294 ms/op 1.02
BeaconState.balances vc 300000 - deserialize tree 24.066 ms/op 23.164 ms/op 1.04
BeaconState.balances vc 300000 - serialize tree 4.9911 ms/op 3.5235 ms/op 1.42
BeaconState.previousEpochParticipation vc 300000 - deserialize tree 545.76 us/op 334.74 us/op 1.63
BeaconState.previousEpochParticipation vc 300000 - serialize tree 279.52 us/op 271.56 us/op 1.03
BeaconState.currentEpochParticipation vc 300000 - deserialize tree 454.33 us/op 335.55 us/op 1.35
BeaconState.currentEpochParticipation vc 300000 - serialize tree 277.30 us/op 274.71 us/op 1.01
BeaconState.inactivityScores vc 300000 - deserialize tree 24.290 ms/op 23.268 ms/op 1.04
BeaconState.inactivityScores vc 300000 - serialize tree 4.4529 ms/op 3.3465 ms/op 1.33
hashTreeRoot Attestation - struct 17.586 us/op 19.610 us/op 0.90
hashTreeRoot Attestation - tree 10.029 us/op 9.0690 us/op 1.11
hashTreeRoot SignedAggregateAndProof - struct 24.561 us/op 24.121 us/op 1.02
hashTreeRoot SignedAggregateAndProof - tree 13.866 us/op 12.891 us/op 1.08
hashTreeRoot SyncCommitteeMessage - struct 6.3130 us/op 6.0570 us/op 1.04
hashTreeRoot SyncCommitteeMessage - tree 3.3710 us/op 3.1200 us/op 1.08
hashTreeRoot SignedContributionAndProof - struct 16.771 us/op 16.609 us/op 1.01
hashTreeRoot SignedContributionAndProof - tree 9.5530 us/op 8.8530 us/op 1.08
hashTreeRoot SignedBeaconBlock - struct 1.5568 ms/op 1.2562 ms/op 1.24
hashTreeRoot SignedBeaconBlock - tree 827.98 us/op 759.84 us/op 1.09
hashTreeRoot Validator - struct 8.7840 us/op 7.5450 us/op 1.16
hashTreeRoot Validator - tree 7.5910 us/op 6.3470 us/op 1.20
BeaconState vc 300000 - hashTreeRoot tree 2.3392 s/op 2.0804 s/op 1.12
BeaconState vc 300000 - batchHashTreeRoot tree 3.9591 s/op 3.2767 s/op 1.21
BeaconState.historicalRoots vc 300000 - hashTreeRoot tree 1.0570 us/op 950.00 ns/op 1.11
BeaconState.validators vc 300000 - hashTreeRoot tree 2.4054 s/op 2.0641 s/op 1.17
BeaconState.balances vc 300000 - hashTreeRoot tree 38.080 ms/op 32.841 ms/op 1.16
BeaconState.previousEpochParticipation vc 300000 - hashTreeRoot tree 4.2108 ms/op 4.2966 ms/op 0.98
BeaconState.currentEpochParticipation vc 300000 - hashTreeRoot tree 4.2191 ms/op 4.1245 ms/op 1.02
BeaconState.inactivityScores vc 300000 - hashTreeRoot tree 38.156 ms/op 33.347 ms/op 1.14
hash64 x18 11.044 us/op 9.0690 us/op 1.22
hashTwoObjects x18 9.1180 us/op 8.7140 us/op 1.05
hash64 x1740 918.05 us/op 820.40 us/op 1.12
hashTwoObjects x1740 792.99 us/op 822.67 us/op 0.96
hash64 x2700000 1.3833 s/op 1.2905 s/op 1.07
hashTwoObjects x2700000 1.2250 s/op 1.2732 s/op 0.96
get_exitEpoch - ContainerType 276.00 ns/op 366.00 ns/op 0.75
get_exitEpoch - ContainerNodeStructType 284.00 ns/op 363.00 ns/op 0.78
set_exitEpoch - ContainerType 293.00 ns/op 381.00 ns/op 0.77
set_exitEpoch - ContainerNodeStructType 299.00 ns/op 372.00 ns/op 0.80
get_pubkey - ContainerType 1.2440 us/op 1.3880 us/op 0.90
get_pubkey - ContainerNodeStructType 285.00 ns/op 361.00 ns/op 0.79
hashTreeRoot - ContainerType 495.00 ns/op 614.00 ns/op 0.81
hashTreeRoot - ContainerNodeStructType 535.00 ns/op 645.00 ns/op 0.83
createProof - ContainerType 4.7590 us/op 6.3600 us/op 0.75
createProof - ContainerNodeStructType 25.287 us/op 24.930 us/op 1.01
serialize - ContainerType 2.1340 us/op 1.9060 us/op 1.12
serialize - ContainerNodeStructType 1.6000 us/op 1.4160 us/op 1.13
set_exitEpoch_and_hashTreeRoot - ContainerType 2.7960 us/op 2.7860 us/op 1.00
set_exitEpoch_and_hashTreeRoot - ContainerNodeStructType 8.1750 us/op 7.1890 us/op 1.14
Array - for of 5.4850 us/op 6.5340 us/op 0.84
Array - for(;;) 5.5200 us/op 6.3540 us/op 0.87
basicListValue.readonlyValuesArray() 5.1623 ms/op 4.1882 ms/op 1.23
basicListValue.readonlyValuesArray() + loop all 6.6887 ms/op 4.3806 ms/op 1.53
compositeListValue.readonlyValuesArray() 28.592 ms/op 30.292 ms/op 0.94
compositeListValue.readonlyValuesArray() + loop all 30.916 ms/op 29.651 ms/op 1.04
Number64UintType - get balances list 4.6052 ms/op 5.5447 ms/op 0.83
Number64UintType - set balances list 9.9437 ms/op 10.067 ms/op 0.99
Number64UintType - get and increase 10 then set 42.530 ms/op 39.157 ms/op 1.09
Number64UintType - increase 10 using applyDelta 17.735 ms/op 16.529 ms/op 1.07
Number64UintType - increase 10 using applyDeltaInBatch 17.610 ms/op 17.171 ms/op 1.03
tree_newTreeFromUint64Deltas 17.707 ms/op 16.725 ms/op 1.06
unsafeUint8ArrayToTree 35.378 ms/op 32.415 ms/op 1.09
bitLength(50) 264.00 ns/op 222.00 ns/op 1.19
bitLengthStr(50) 244.00 ns/op 210.00 ns/op 1.16
bitLength(8000) 252.00 ns/op 218.00 ns/op 1.16
bitLengthStr(8000) 271.00 ns/op 251.00 ns/op 1.08
bitLength(250000) 257.00 ns/op 220.00 ns/op 1.17
bitLengthStr(250000) 303.00 ns/op 289.00 ns/op 1.05
floor - Math.floor (53) 1.2372 ns/op 1.2430 ns/op 1.00
floor - << 0 (53) 1.2376 ns/op 1.2366 ns/op 1.00
floor - Math.floor (512) 1.2416 ns/op 1.2373 ns/op 1.00
floor - << 0 (512) 1.2368 ns/op 1.2400 ns/op 1.00
fnIf(0) 1.5464 ns/op 1.5538 ns/op 1.00
fnSwitch(0) 2.1755 ns/op 2.1668 ns/op 1.00
fnObj(0) 1.5528 ns/op 1.5568 ns/op 1.00
fnArr(0) 1.5479 ns/op 1.5465 ns/op 1.00
fnIf(4) 2.1646 ns/op 2.1743 ns/op 1.00
fnSwitch(4) 2.1665 ns/op 2.1669 ns/op 1.00
fnObj(4) 1.5502 ns/op 1.5487 ns/op 1.00
fnArr(4) 1.5500 ns/op 1.5480 ns/op 1.00
fnIf(9) 3.0983 ns/op 3.0924 ns/op 1.00
fnSwitch(9) 2.1660 ns/op 2.1665 ns/op 1.00
fnObj(9) 1.5497 ns/op 1.5475 ns/op 1.00
fnArr(9) 1.5676 ns/op 1.5461 ns/op 1.01
Container {a,b,vec} - as struct x100000 124.05 us/op 123.84 us/op 1.00
Container {a,b,vec} - as tree x100000 340.80 us/op 340.09 us/op 1.00
Container {a,vec,b} - as struct x100000 157.48 us/op 154.32 us/op 1.02
Container {a,vec,b} - as tree x100000 371.24 us/op 371.18 us/op 1.00
get 2 props x1000000 - rawObject 309.51 us/op 309.88 us/op 1.00
get 2 props x1000000 - proxy 73.903 ms/op 72.741 ms/op 1.02
get 2 props x1000000 - customObj 309.38 us/op 307.92 us/op 1.00
Simple object binary -> struct 864.00 ns/op 567.00 ns/op 1.52
Simple object binary -> tree_backed 1.7930 us/op 986.00 ns/op 1.82
Simple object struct -> tree_backed 2.5280 us/op 1.5440 us/op 1.64
Simple object tree_backed -> struct 2.4050 us/op 1.4670 us/op 1.64
Simple object struct -> binary 841.00 ns/op 789.00 ns/op 1.07
Simple object tree_backed -> binary 1.7290 us/op 1.2600 us/op 1.37
aggregationBits binary -> struct 654.00 ns/op 444.00 ns/op 1.47
aggregationBits binary -> tree_backed 2.8480 us/op 1.9550 us/op 1.46
aggregationBits struct -> tree_backed 3.2790 us/op 2.3230 us/op 1.41
aggregationBits tree_backed -> struct 1.3440 us/op 926.00 ns/op 1.45
aggregationBits struct -> binary 887.00 ns/op 686.00 ns/op 1.29
aggregationBits tree_backed -> binary 1.1520 us/op 871.00 ns/op 1.32
List(uint8) 100000 binary -> struct 1.6539 ms/op 1.6812 ms/op 0.98
List(uint8) 100000 binary -> tree_backed 104.14 us/op 93.101 us/op 1.12
List(uint8) 100000 struct -> tree_backed 1.1828 ms/op 1.1024 ms/op 1.07
List(uint8) 100000 tree_backed -> struct 1.2127 ms/op 1.0546 ms/op 1.15
List(uint8) 100000 struct -> binary 1.0012 ms/op 989.83 us/op 1.01
List(uint8) 100000 tree_backed -> binary 94.791 us/op 89.572 us/op 1.06
List(uint64Number) 100000 binary -> struct 1.3501 ms/op 1.1648 ms/op 1.16
List(uint64Number) 100000 binary -> tree_backed 3.1958 ms/op 2.5600 ms/op 1.25
List(uint64Number) 100000 struct -> tree_backed 5.1978 ms/op 4.0852 ms/op 1.27
List(uint64Number) 100000 tree_backed -> struct 3.0589 ms/op 2.0743 ms/op 1.47
List(uint64Number) 100000 struct -> binary 1.6228 ms/op 1.3325 ms/op 1.22
List(uint64Number) 100000 tree_backed -> binary 990.70 us/op 853.53 us/op 1.16
List(Uint64Bigint) 100000 binary -> struct 4.1969 ms/op 3.5539 ms/op 1.18
List(Uint64Bigint) 100000 binary -> tree_backed 4.1836 ms/op 3.2431 ms/op 1.29
List(Uint64Bigint) 100000 struct -> tree_backed 6.4028 ms/op 5.5215 ms/op 1.16
List(Uint64Bigint) 100000 tree_backed -> struct 5.2010 ms/op 4.5138 ms/op 1.15
List(Uint64Bigint) 100000 struct -> binary 2.1515 ms/op 2.0407 ms/op 1.05
List(Uint64Bigint) 100000 tree_backed -> binary 1.7624 ms/op 934.11 us/op 1.89
Vector(Root) 100000 binary -> struct 39.057 ms/op 32.244 ms/op 1.21
Vector(Root) 100000 binary -> tree_backed 37.414 ms/op 27.173 ms/op 1.38
Vector(Root) 100000 struct -> tree_backed 46.603 ms/op 45.955 ms/op 1.01
Vector(Root) 100000 tree_backed -> struct 53.351 ms/op 48.127 ms/op 1.11
Vector(Root) 100000 struct -> binary 2.7735 ms/op 2.6239 ms/op 1.06
Vector(Root) 100000 tree_backed -> binary 10.494 ms/op 8.2375 ms/op 1.27
List(Validator) 100000 binary -> struct 104.42 ms/op 104.93 ms/op 1.00
List(Validator) 100000 binary -> tree_backed 329.37 ms/op 285.76 ms/op 1.15
List(Validator) 100000 struct -> tree_backed 351.67 ms/op 309.56 ms/op 1.14
List(Validator) 100000 tree_backed -> struct 223.73 ms/op 210.31 ms/op 1.06
List(Validator) 100000 struct -> binary 27.100 ms/op 26.723 ms/op 1.01
List(Validator) 100000 tree_backed -> binary 121.66 ms/op 115.26 ms/op 1.06
List(Validator-NS) 100000 binary -> struct 101.72 ms/op 98.543 ms/op 1.03
List(Validator-NS) 100000 binary -> tree_backed 162.34 ms/op 144.42 ms/op 1.12
List(Validator-NS) 100000 struct -> tree_backed 207.00 ms/op 185.09 ms/op 1.12
List(Validator-NS) 100000 tree_backed -> struct 176.74 ms/op 165.67 ms/op 1.07
List(Validator-NS) 100000 struct -> binary 27.150 ms/op 27.056 ms/op 1.00
List(Validator-NS) 100000 tree_backed -> binary 34.316 ms/op 31.887 ms/op 1.08
get epochStatuses - MutableVector 95.439 us/op 106.38 us/op 0.90
get epochStatuses - ViewDU 204.56 us/op 203.15 us/op 1.01
set epochStatuses - ListTreeView 1.8710 ms/op 2.3891 ms/op 0.78
set epochStatuses - ListTreeView - set() 442.99 us/op 459.01 us/op 0.97
set epochStatuses - ListTreeView - commit() 633.81 us/op 555.56 us/op 1.14
bitstring 648.77 ns/op 641.14 ns/op 1.01
bit mask 13.818 ns/op 13.521 ns/op 1.02
struct - increase slot to 1000000 928.85 us/op 927.98 us/op 1.00
UintNumberType - increase slot to 1000000 21.381 ms/op 21.987 ms/op 0.97
UintBigintType - increase slot to 1000000 197.70 ms/op 159.36 ms/op 1.24
UintBigint8 x 100000 tree_deserialize 5.7135 ms/op 4.6560 ms/op 1.23
UintBigint8 x 100000 tree_serialize 1.0984 ms/op 1.0943 ms/op 1.00
UintBigint16 x 100000 tree_deserialize 5.4911 ms/op 4.7401 ms/op 1.16
UintBigint16 x 100000 tree_serialize 1.4782 ms/op 1.2154 ms/op 1.22
UintBigint32 x 100000 tree_deserialize 5.9784 ms/op 5.0010 ms/op 1.20
UintBigint32 x 100000 tree_serialize 1.4160 ms/op 1.2239 ms/op 1.16
UintBigint64 x 100000 tree_deserialize 6.1789 ms/op 5.2174 ms/op 1.18
UintBigint64 x 100000 tree_serialize 1.8610 ms/op 1.5732 ms/op 1.18
UintBigint8 x 100000 value_deserialize 434.43 us/op 521.80 us/op 0.83
UintBigint8 x 100000 value_serialize 719.63 us/op 666.63 us/op 1.08
UintBigint16 x 100000 value_deserialize 464.19 us/op 462.13 us/op 1.00
UintBigint16 x 100000 value_serialize 983.61 us/op 724.99 us/op 1.36
UintBigint32 x 100000 value_deserialize 434.14 us/op 433.07 us/op 1.00
UintBigint32 x 100000 value_serialize 852.22 us/op 698.01 us/op 1.22
UintBigint64 x 100000 value_deserialize 498.66 us/op 495.96 us/op 1.01
UintBigint64 x 100000 value_serialize 1.3470 ms/op 874.42 us/op 1.54
UintBigint8 x 100000 deserialize 3.8056 ms/op 2.9727 ms/op 1.28
UintBigint8 x 100000 serialize 1.5999 ms/op 1.6040 ms/op 1.00
UintBigint16 x 100000 deserialize 3.9280 ms/op 3.0156 ms/op 1.30
UintBigint16 x 100000 serialize 1.5122 ms/op 1.6335 ms/op 0.93
UintBigint32 x 100000 deserialize 3.9714 ms/op 3.0710 ms/op 1.29
UintBigint32 x 100000 serialize 3.1528 ms/op 2.7979 ms/op 1.13
UintBigint64 x 100000 deserialize 4.4608 ms/op 3.9455 ms/op 1.13
UintBigint64 x 100000 serialize 1.6195 ms/op 1.5557 ms/op 1.04
UintBigint128 x 100000 deserialize 6.4301 ms/op 5.4218 ms/op 1.19
UintBigint128 x 100000 serialize 14.752 ms/op 13.879 ms/op 1.06
UintBigint256 x 100000 deserialize 8.4916 ms/op 8.0535 ms/op 1.05
UintBigint256 x 100000 serialize 44.020 ms/op 41.441 ms/op 1.06
Slice from Uint8Array x25000 1.2441 ms/op 1.2979 ms/op 0.96
Slice from ArrayBuffer x25000 16.700 ms/op 15.006 ms/op 1.11
Slice from ArrayBuffer x25000 + new Uint8Array 18.953 ms/op 16.000 ms/op 1.18
Copy Uint8Array 100000 iterate 1.6929 ms/op 1.6460 ms/op 1.03
Copy Uint8Array 100000 slice 144.79 us/op 116.05 us/op 1.25
Copy Uint8Array 100000 Uint8Array.prototype.slice.call 131.96 us/op 117.91 us/op 1.12
Copy Buffer 100000 Uint8Array.prototype.slice.call 145.78 us/op 117.93 us/op 1.24
Copy Uint8Array 100000 slice + set 250.69 us/op 178.57 us/op 1.40
Copy Uint8Array 100000 subarray + set 139.29 us/op 117.59 us/op 1.18
Copy Uint8Array 100000 slice arrayBuffer 146.90 us/op 116.92 us/op 1.26
Uint64 deserialize 100000 - iterate Uint8Array 2.0908 ms/op 1.8024 ms/op 1.16
Uint64 deserialize 100000 - by Uint32A 2.1367 ms/op 1.7828 ms/op 1.20
Uint64 deserialize 100000 - by DataView.getUint32 x2 2.0926 ms/op 1.7841 ms/op 1.17
Uint64 deserialize 100000 - by DataView.getBigUint64 5.3334 ms/op 5.2553 ms/op 1.01
Uint64 deserialize 100000 - by byte 40.275 ms/op 39.228 ms/op 1.03

by benchmarkbot/action

@wemeetagain wemeetagain force-pushed the release-please--branches--master branch from beeca04 to 719d0e2 Compare September 11, 2024 13:57
@wemeetagain wemeetagain force-pushed the release-please--branches--master branch 3 times, most recently from 98444fe to 49f8707 Compare October 10, 2024 12:00
@wemeetagain wemeetagain force-pushed the release-please--branches--master branch from 49f8707 to 28e4050 Compare October 15, 2024 21:13
@wemeetagain wemeetagain merged commit 790ef58 into master Oct 15, 2024
9 checks passed
@wemeetagain wemeetagain deleted the release-please--branches--master branch October 15, 2024 22:23
@wemeetagain
Copy link
Member Author

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

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