-
-
Notifications
You must be signed in to change notification settings - Fork 19
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 #337
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
|
Benchmark suite | Current: 7259065 | Previous: 5c5242a | Ratio |
---|---|---|---|
Number64UintType - get balances list | 6.1613 ms/op | 1.5781 ms/op | 3.90 |
Copy Uint8Array 100000 slice | 326.54 us/op | 102.88 us/op | 3.17 |
🚀🚀 Significant benchmark improvement detected
Benchmark suite | Current: 7259065 | Previous: 5c5242a | Ratio |
---|---|---|---|
get_exitEpoch - ContainerType | 505.00 ns/op | 4.6050 us/op | 0.11 |
Full benchmark results
Benchmark suite | Current: 7259065 | Previous: 5c5242a | Ratio |
---|---|---|---|
digestTwoHashObjects 50023 times | 58.041 ms/op | 69.998 ms/op | 0.83 |
digest64 50023 times | 60.733 ms/op | 72.038 ms/op | 0.84 |
digest 50023 times | 60.513 ms/op | 72.015 ms/op | 0.84 |
input length 32 | 1.4860 us/op | 1.6140 us/op | 0.92 |
input length 64 | 1.6080 us/op | 1.8430 us/op | 0.87 |
input length 128 | 2.7770 us/op | 3.1970 us/op | 0.87 |
input length 256 | 4.1130 us/op | 4.8910 us/op | 0.84 |
input length 512 | 6.7780 us/op | 8.1580 us/op | 0.83 |
input length 1024 | 13.544 us/op | 15.934 us/op | 0.85 |
digest 1000000 times | 1.0558 s/op | 1.1814 s/op | 0.89 |
hashObjectToByteArray 50023 times | 2.7916 ms/op | 1.9987 ms/op | 1.40 |
byteArrayToHashObject 50023 times | 2.7231 ms/op | 2.1754 ms/op | 1.25 |
getGindicesAtDepth | 5.9650 us/op | 5.4580 us/op | 1.09 |
iterateAtDepth | 12.372 us/op | 11.594 us/op | 1.07 |
getGindexBits | 542.00 ns/op | 581.00 ns/op | 0.93 |
gindexIterator | 1.2020 us/op | 1.3840 us/op | 0.87 |
hash 2 Uint8Array 2250026 times - as-sha256 | 2.7701 s/op | 3.2153 s/op | 0.86 |
hashTwoObjects 2250026 times - as-sha256 | 2.6295 s/op | 3.1043 s/op | 0.85 |
hash 2 Uint8Array 2250026 times - noble | 7.1941 s/op | 9.2133 s/op | 0.78 |
hashTwoObjects 2250026 times - noble | 10.664 s/op | 11.708 s/op | 0.91 |
getNodeH() x7812.5 avg hindex | 25.797 us/op | 20.801 us/op | 1.24 |
getNodeH() x7812.5 index 0 | 10.880 us/op | 6.7240 us/op | 1.62 |
getNodeH() x7812.5 index 7 | 10.859 us/op | 6.7570 us/op | 1.61 |
getNodeH() x7812.5 index 7 with key array | 10.883 us/op | 6.8690 us/op | 1.58 |
new LeafNode() x7812.5 | 197.45 us/op | 301.91 us/op | 0.65 |
multiproof - depth 15, 1 requested leaves | 13.589 us/op | 15.161 us/op | 0.90 |
tree offset multiproof - depth 15, 1 requested leaves | 29.511 us/op | 32.793 us/op | 0.90 |
compact multiproof - depth 15, 1 requested leaves | 8.2970 us/op | 8.1070 us/op | 1.02 |
multiproof - depth 15, 2 requested leaves | 20.116 us/op | 19.026 us/op | 1.06 |
tree offset multiproof - depth 15, 2 requested leaves | 34.880 us/op | 34.653 us/op | 1.01 |
compact multiproof - depth 15, 2 requested leaves | 5.0130 us/op | 4.6750 us/op | 1.07 |
multiproof - depth 15, 3 requested leaves | 27.961 us/op | 25.859 us/op | 1.08 |
tree offset multiproof - depth 15, 3 requested leaves | 45.837 us/op | 44.358 us/op | 1.03 |
compact multiproof - depth 15, 3 requested leaves | 7.1940 us/op | 8.2450 us/op | 0.87 |
multiproof - depth 15, 4 requested leaves | 34.849 us/op | 34.111 us/op | 1.02 |
tree offset multiproof - depth 15, 4 requested leaves | 60.077 us/op | 54.941 us/op | 1.09 |
compact multiproof - depth 15, 4 requested leaves | 8.1560 us/op | 9.0750 us/op | 0.90 |
packedRootsBytesToLeafNodes bytes 4000 offset 0 | 3.4040 us/op | 3.0570 us/op | 1.11 |
packedRootsBytesToLeafNodes bytes 4000 offset 1 | 3.3860 us/op | 2.9430 us/op | 1.15 |
packedRootsBytesToLeafNodes bytes 4000 offset 2 | 3.3880 us/op | 2.9940 us/op | 1.13 |
packedRootsBytesToLeafNodes bytes 4000 offset 3 | 3.3560 us/op | 2.9360 us/op | 1.14 |
subtreeFillToContents depth 40 count 250000 | 79.854 ms/op | 77.647 ms/op | 1.03 |
setRoot - gindexBitstring | 14.749 ms/op | 12.332 ms/op | 1.20 |
setRoot - gindex | 15.882 ms/op | 14.162 ms/op | 1.12 |
getRoot - gindexBitstring | 4.1130 ms/op | 3.0714 ms/op | 1.34 |
getRoot - gindex | 4.5194 ms/op | 4.3611 ms/op | 1.04 |
getHashObject then setHashObject | 16.984 ms/op | 15.811 ms/op | 1.07 |
setNodeWithFn | 14.996 ms/op | 13.187 ms/op | 1.14 |
getNodeAtDepth depth 0 x100000 | 2.3915 ms/op | 1.6151 ms/op | 1.48 |
setNodeAtDepth depth 0 x100000 | 4.7308 ms/op | 3.8510 ms/op | 1.23 |
getNodesAtDepth depth 0 x100000 | 2.0662 ms/op | 1.4193 ms/op | 1.46 |
setNodesAtDepth depth 0 x100000 | 2.7457 ms/op | 1.9588 ms/op | 1.40 |
getNodeAtDepth depth 1 x100000 | 2.6000 ms/op | 1.7407 ms/op | 1.49 |
setNodeAtDepth depth 1 x100000 | 10.138 ms/op | 8.1749 ms/op | 1.24 |
getNodesAtDepth depth 1 x100000 | 2.4065 ms/op | 1.5972 ms/op | 1.51 |
setNodesAtDepth depth 1 x100000 | 8.4573 ms/op | 6.8167 ms/op | 1.24 |
getNodeAtDepth depth 2 x100000 | 3.1890 ms/op | 2.1791 ms/op | 1.46 |
setNodeAtDepth depth 2 x100000 | 16.627 ms/op | 13.557 ms/op | 1.23 |
getNodesAtDepth depth 2 x100000 | 28.607 ms/op | 27.167 ms/op | 1.05 |
setNodesAtDepth depth 2 x100000 | 22.184 ms/op | 19.388 ms/op | 1.14 |
tree.getNodesAtDepth - gindexes | 9.7739 ms/op | 8.0906 ms/op | 1.21 |
tree.getNodesAtDepth - push all nodes | 3.2241 ms/op | 2.5831 ms/op | 1.25 |
tree.getNodesAtDepth - navigation | 169.13 us/op | 201.41 us/op | 0.84 |
tree.setNodesAtDepth - indexes | 630.73 us/op | 514.63 us/op | 1.23 |
set at depth 8 | 839.00 ns/op | 770.00 ns/op | 1.09 |
set at depth 16 | 933.00 ns/op | 1.0730 us/op | 0.87 |
set at depth 32 | 1.6160 us/op | 1.5850 us/op | 1.02 |
iterateNodesAtDepth 8 256 | 24.532 us/op | 19.179 us/op | 1.28 |
getNodesAtDepth 8 256 | 6.4410 us/op | 4.6550 us/op | 1.38 |
iterateNodesAtDepth 16 65536 | 7.5233 ms/op | 5.5630 ms/op | 1.35 |
getNodesAtDepth 16 65536 | 3.0200 ms/op | 2.2936 ms/op | 1.32 |
iterateNodesAtDepth 32 250000 | 27.024 ms/op | 20.565 ms/op | 1.31 |
getNodesAtDepth 32 250000 | 8.0795 ms/op | 5.9578 ms/op | 1.36 |
iterateNodesAtDepth 40 250000 | 27.256 ms/op | 20.549 ms/op | 1.33 |
getNodesAtDepth 40 250000 | 8.2612 ms/op | 6.0014 ms/op | 1.38 |
250k validators | 12.008 s/op | 12.214 s/op | 0.98 |
bitlist bytes to struct (120,90) | 912.00 ns/op | 974.00 ns/op | 0.94 |
bitlist bytes to tree (120,90) | 3.7140 us/op | 3.5110 us/op | 1.06 |
bitlist bytes to struct (2048,2048) | 1.8090 us/op | 1.9990 us/op | 0.90 |
bitlist bytes to tree (2048,2048) | 6.4760 us/op | 7.0400 us/op | 0.92 |
ByteListType - deserialize | 17.387 ms/op | 17.280 ms/op | 1.01 |
BasicListType - deserialize | 16.538 ms/op | 12.191 ms/op | 1.36 |
ByteListType - serialize | 15.238 ms/op | 16.425 ms/op | 0.93 |
BasicListType - serialize | 21.269 ms/op | 19.516 ms/op | 1.09 |
BasicListType - tree_convertToStruct | 48.631 ms/op | 45.187 ms/op | 1.08 |
List[uint8, 68719476736] len 300000 ViewDU.getAll() + iterate | 5.8198 ms/op | 4.6202 ms/op | 1.26 |
List[uint8, 68719476736] len 300000 ViewDU.get(i) | 6.7875 ms/op | 4.6181 ms/op | 1.47 |
Array.push len 300000 empty Array - number | 8.8589 ms/op | 8.5740 ms/op | 1.03 |
Array.set len 300000 from new Array - number | 2.3997 ms/op | 2.1908 ms/op | 1.10 |
Array.set len 300000 - number | 8.0125 ms/op | 7.6841 ms/op | 1.04 |
Uint8Array.set len 300000 | 254.94 us/op | 242.32 us/op | 1.05 |
Uint32Array.set len 300000 | 363.67 us/op | 348.62 us/op | 1.04 |
Container({a: uint8, b: uint8}) getViewDU x300000 | 32.830 ms/op | 31.758 ms/op | 1.03 |
ContainerNodeStruct({a: uint8, b: uint8}) getViewDU x300000 | 13.212 ms/op | 12.330 ms/op | 1.07 |
List(Container) len 300000 ViewDU.getAllReadonly() + iterate | 400.44 ms/op | 493.58 ms/op | 0.81 |
List(Container) len 300000 ViewDU.getAllReadonlyValues() + iterate | 433.12 ms/op | 441.42 ms/op | 0.98 |
List(Container) len 300000 ViewDU.get(i) | 10.710 ms/op | 9.6258 ms/op | 1.11 |
List(Container) len 300000 ViewDU.getReadonly(i) | 10.912 ms/op | 9.5717 ms/op | 1.14 |
List(ContainerNodeStruct) len 300000 ViewDU.getAllReadonly() + iterate | 60.588 ms/op | 53.864 ms/op | 1.12 |
List(ContainerNodeStruct) len 300000 ViewDU.getAllReadonlyValues() + iterate | 7.9425 ms/op | 7.7656 ms/op | 1.02 |
List(ContainerNodeStruct) len 300000 ViewDU.get(i) | 10.142 ms/op | 9.0528 ms/op | 1.12 |
List(ContainerNodeStruct) len 300000 ViewDU.getReadonly(i) | 9.9333 ms/op | 8.7676 ms/op | 1.13 |
Array.push len 300000 empty Array - object | 8.9843 ms/op | 8.2004 ms/op | 1.10 |
Array.set len 300000 from new Array - object | 3.3285 ms/op | 2.7479 ms/op | 1.21 |
Array.set len 300000 - object | 9.3133 ms/op | 7.9597 ms/op | 1.17 |
cachePermanentRootStruct no cache | 12.477 us/op | 13.838 us/op | 0.90 |
cachePermanentRootStruct with cache | 313.00 ns/op | 317.00 ns/op | 0.99 |
epochParticipation len 250000 rws 7813 | 3.3301 ms/op | 3.1750 ms/op | 1.05 |
deserialize Attestation - tree | 4.3900 us/op | 4.6020 us/op | 0.95 |
deserialize Attestation - struct | 3.1340 us/op | 3.1590 us/op | 0.99 |
deserialize SignedAggregateAndProof - tree | 5.8230 us/op | 6.0020 us/op | 0.97 |
deserialize SignedAggregateAndProof - struct | 5.0910 us/op | 4.8070 us/op | 1.06 |
deserialize SyncCommitteeMessage - tree | 1.5710 us/op | 1.8130 us/op | 0.87 |
deserialize SyncCommitteeMessage - struct | 1.8000 us/op | 2.0140 us/op | 0.89 |
deserialize SignedContributionAndProof - tree | 3.1260 us/op | 3.0750 us/op | 1.02 |
deserialize SignedContributionAndProof - struct | 4.3720 us/op | 4.4790 us/op | 0.98 |
deserialize SignedBeaconBlock - tree | 340.25 us/op | 334.57 us/op | 1.02 |
deserialize SignedBeaconBlock - struct | 211.90 us/op | 224.40 us/op | 0.94 |
BeaconState vc 300000 - deserialize tree | 1.0022 s/op | 838.93 ms/op | 1.19 |
BeaconState vc 300000 - serialize tree | 318.32 ms/op | 277.73 ms/op | 1.15 |
BeaconState.historicalRoots vc 300000 - deserialize tree | 1.0850 us/op | 1.3700 us/op | 0.79 |
BeaconState.historicalRoots vc 300000 - serialize tree | 1.2070 us/op | 1.3110 us/op | 0.92 |
BeaconState.validators vc 300000 - deserialize tree | 987.33 ms/op | 875.60 ms/op | 1.13 |
BeaconState.validators vc 300000 - serialize tree | 272.67 ms/op | 201.51 ms/op | 1.35 |
BeaconState.balances vc 300000 - deserialize tree | 37.065 ms/op | 32.241 ms/op | 1.15 |
BeaconState.balances vc 300000 - serialize tree | 5.7475 ms/op | 4.6928 ms/op | 1.22 |
BeaconState.previousEpochParticipation vc 300000 - deserialize tree | 716.51 us/op | 696.88 us/op | 1.03 |
BeaconState.previousEpochParticipation vc 300000 - serialize tree | 483.54 us/op | 361.32 us/op | 1.34 |
BeaconState.currentEpochParticipation vc 300000 - deserialize tree | 702.21 us/op | 653.01 us/op | 1.08 |
BeaconState.currentEpochParticipation vc 300000 - serialize tree | 473.56 us/op | 354.54 us/op | 1.34 |
BeaconState.inactivityScores vc 300000 - deserialize tree | 41.302 ms/op | 41.347 ms/op | 1.00 |
BeaconState.inactivityScores vc 300000 - serialize tree | 5.6386 ms/op | 3.5941 ms/op | 1.57 |
hashTreeRoot Attestation - struct | 43.498 us/op | 41.847 us/op | 1.04 |
hashTreeRoot Attestation - tree | 24.491 us/op | 29.583 us/op | 0.83 |
hashTreeRoot SignedAggregateAndProof - struct | 57.811 us/op | 65.688 us/op | 0.88 |
hashTreeRoot SignedAggregateAndProof - tree | 39.128 us/op | 40.592 us/op | 0.96 |
hashTreeRoot SyncCommitteeMessage - struct | 14.502 us/op | 13.894 us/op | 1.04 |
hashTreeRoot SyncCommitteeMessage - tree | 8.8120 us/op | 9.1560 us/op | 0.96 |
hashTreeRoot SignedContributionAndProof - struct | 38.795 us/op | 38.804 us/op | 1.00 |
hashTreeRoot SignedContributionAndProof - tree | 22.908 us/op | 29.025 us/op | 0.79 |
hashTreeRoot SignedBeaconBlock - struct | 3.2205 ms/op | 3.4679 ms/op | 0.93 |
hashTreeRoot SignedBeaconBlock - tree | 2.0341 ms/op | 2.4238 ms/op | 0.84 |
hashTreeRoot Validator - struct | 17.129 us/op | 19.356 us/op | 0.88 |
hashTreeRoot Validator - tree | 14.113 us/op | 15.888 us/op | 0.89 |
BeaconState vc 300000 - hashTreeRoot tree | 4.6326 s/op | 5.1553 s/op | 0.90 |
BeaconState.historicalRoots vc 300000 - hashTreeRoot tree | 1.8800 us/op | 2.0320 us/op | 0.93 |
BeaconState.validators vc 300000 - hashTreeRoot tree | 4.2904 s/op | 4.9387 s/op | 0.87 |
BeaconState.balances vc 300000 - hashTreeRoot tree | 104.08 ms/op | 125.27 ms/op | 0.83 |
BeaconState.previousEpochParticipation vc 300000 - hashTreeRoot tree | 11.057 ms/op | 13.161 ms/op | 0.84 |
BeaconState.currentEpochParticipation vc 300000 - hashTreeRoot tree | 11.054 ms/op | 13.165 ms/op | 0.84 |
BeaconState.inactivityScores vc 300000 - hashTreeRoot tree | 103.03 ms/op | 135.27 ms/op | 0.76 |
hash64 x18 | 25.050 us/op | 27.837 us/op | 0.90 |
hashTwoObjects x18 | 21.934 us/op | 26.007 us/op | 0.84 |
hash64 x1740 | 2.3518 ms/op | 2.6114 ms/op | 0.90 |
hashTwoObjects x1740 | 2.0801 ms/op | 2.4571 ms/op | 0.85 |
hash64 x2700000 | 3.6556 s/op | 4.0627 s/op | 0.90 |
hashTwoObjects x2700000 | 3.2243 s/op | 3.8030 s/op | 0.85 |
get_exitEpoch - ContainerType | 505.00 ns/op | 4.6050 us/op | 0.11 |
get_exitEpoch - ContainerNodeStructType | 424.00 ns/op | 433.00 ns/op | 0.98 |
set_exitEpoch - ContainerType | 458.00 ns/op | 446.00 ns/op | 1.03 |
set_exitEpoch - ContainerNodeStructType | 431.00 ns/op | 412.00 ns/op | 1.05 |
get_pubkey - ContainerType | 1.5660 us/op | 1.9870 us/op | 0.79 |
get_pubkey - ContainerNodeStructType | 301.00 ns/op | 423.00 ns/op | 0.71 |
hashTreeRoot - ContainerType | 543.00 ns/op | 698.00 ns/op | 0.78 |
hashTreeRoot - ContainerNodeStructType | 593.00 ns/op | 761.00 ns/op | 0.78 |
createProof - ContainerType | 6.6630 us/op | 6.6320 us/op | 1.00 |
createProof - ContainerNodeStructType | 34.873 us/op | 33.138 us/op | 1.05 |
serialize - ContainerType | 2.7840 us/op | 2.9940 us/op | 0.93 |
serialize - ContainerNodeStructType | 2.3080 us/op | 2.3890 us/op | 0.97 |
set_exitEpoch_and_hashTreeRoot - ContainerType | 5.3260 us/op | 6.0810 us/op | 0.88 |
set_exitEpoch_and_hashTreeRoot - ContainerNodeStructType | 14.838 us/op | 16.635 us/op | 0.89 |
Array - for of | 12.195 us/op | 8.9450 us/op | 1.36 |
Array - for(;;) | 8.8670 us/op | 8.6570 us/op | 1.02 |
basicListValue.readonlyValuesArray() | 5.5923 ms/op | 4.4756 ms/op | 1.25 |
basicListValue.readonlyValuesArray() + loop all | 5.6698 ms/op | 4.5805 ms/op | 1.24 |
compositeListValue.readonlyValuesArray() | 53.985 ms/op | 34.605 ms/op | 1.56 |
compositeListValue.readonlyValuesArray() + loop all | 50.500 ms/op | 32.660 ms/op | 1.55 |
Number64UintType - get balances list | 6.1613 ms/op | 1.5781 ms/op | 3.90 |
Number64UintType - set balances list | 14.964 ms/op | 11.917 ms/op | 1.26 |
Number64UintType - get and increase 10 then set | 61.673 ms/op | 43.438 ms/op | 1.42 |
Number64UintType - increase 10 using applyDelta | 24.517 ms/op | 15.231 ms/op | 1.61 |
Number64UintType - increase 10 using applyDeltaInBatch | 24.263 ms/op | 14.971 ms/op | 1.62 |
tree_newTreeFromUint64Deltas | 28.035 ms/op | 23.424 ms/op | 1.20 |
unsafeUint8ArrayToTree | 47.615 ms/op | 41.735 ms/op | 1.14 |
bitLength(50) | 296.00 ns/op | 321.00 ns/op | 0.92 |
bitLengthStr(50) | 343.00 ns/op | 343.00 ns/op | 1.00 |
bitLength(8000) | 283.00 ns/op | 316.00 ns/op | 0.90 |
bitLengthStr(8000) | 471.00 ns/op | 402.00 ns/op | 1.17 |
bitLength(250000) | 288.00 ns/op | 307.00 ns/op | 0.94 |
bitLengthStr(250000) | 581.00 ns/op | 456.00 ns/op | 1.27 |
floor - Math.floor (53) | 0.66958 ns/op | 0.60294 ns/op | 1.11 |
floor - << 0 (53) | 0.66962 ns/op | 0.60284 ns/op | 1.11 |
floor - Math.floor (512) | 0.66980 ns/op | 0.60264 ns/op | 1.11 |
floor - << 0 (512) | 0.66963 ns/op | 0.60289 ns/op | 1.11 |
fnIf(0) | 3.0118 ns/op | 2.0083 ns/op | 1.50 |
fnSwitch(0) | 5.0203 ns/op | 3.3978 ns/op | 1.48 |
fnObj(0) | 0.66972 ns/op | 0.60286 ns/op | 1.11 |
fnArr(0) | 0.66979 ns/op | 0.60289 ns/op | 1.11 |
fnIf(4) | 4.3503 ns/op | 3.1871 ns/op | 1.36 |
fnSwitch(4) | 5.0213 ns/op | 3.4053 ns/op | 1.47 |
fnObj(4) | 0.66954 ns/op | 0.60286 ns/op | 1.11 |
fnArr(4) | 0.66959 ns/op | 0.60280 ns/op | 1.11 |
fnIf(9) | 6.6948 ns/op | 5.2256 ns/op | 1.28 |
fnSwitch(9) | 5.0196 ns/op | 3.3744 ns/op | 1.49 |
fnObj(9) | 0.66970 ns/op | 0.60272 ns/op | 1.11 |
fnArr(9) | 0.66970 ns/op | 0.60272 ns/op | 1.11 |
Container {a,b,vec} - as struct x100000 | 67.388 us/op | 60.513 us/op | 1.11 |
Container {a,b,vec} - as tree x100000 | 836.94 us/op | 498.08 us/op | 1.68 |
Container {a,vec,b} - as struct x100000 | 101.03 us/op | 120.74 us/op | 0.84 |
Container {a,vec,b} - as tree x100000 | 903.92 us/op | 554.05 us/op | 1.63 |
get 2 props x1000000 - rawObject | 335.01 us/op | 401.92 us/op | 0.83 |
get 2 props x1000000 - proxy | 144.91 ms/op | 93.803 ms/op | 1.54 |
get 2 props x1000000 - customObj | 335.05 us/op | 401.93 us/op | 0.83 |
Simple object binary -> struct | 858.00 ns/op | 1.0640 us/op | 0.81 |
Simple object binary -> tree_backed | 2.2650 us/op | 2.8650 us/op | 0.79 |
Simple object struct -> tree_backed | 3.0290 us/op | 4.0550 us/op | 0.75 |
Simple object tree_backed -> struct | 2.5800 us/op | 3.4730 us/op | 0.74 |
Simple object struct -> binary | 1.2900 us/op | 1.7430 us/op | 0.74 |
Simple object tree_backed -> binary | 2.2540 us/op | 2.7880 us/op | 0.81 |
aggregationBits binary -> struct | 655.00 ns/op | 911.00 ns/op | 0.72 |
aggregationBits binary -> tree_backed | 3.0330 us/op | 3.8960 us/op | 0.78 |
aggregationBits struct -> tree_backed | 3.7930 us/op | 4.6510 us/op | 0.82 |
aggregationBits tree_backed -> struct | 1.5630 us/op | 1.9680 us/op | 0.79 |
aggregationBits struct -> binary | 1.1410 us/op | 1.4310 us/op | 0.80 |
aggregationBits tree_backed -> binary | 1.3570 us/op | 1.7530 us/op | 0.77 |
List(uint8) 100000 binary -> struct | 2.1807 ms/op | 1.8263 ms/op | 1.19 |
List(uint8) 100000 binary -> tree_backed | 158.94 us/op | 138.47 us/op | 1.15 |
List(uint8) 100000 struct -> tree_backed | 2.3411 ms/op | 1.7226 ms/op | 1.36 |
List(uint8) 100000 tree_backed -> struct | 1.6508 ms/op | 1.2382 ms/op | 1.33 |
List(uint8) 100000 struct -> binary | 2.1833 ms/op | 1.5630 ms/op | 1.40 |
List(uint8) 100000 tree_backed -> binary | 144.67 us/op | 93.805 us/op | 1.54 |
List(uint64Number) 100000 binary -> struct | 1.8287 ms/op | 1.5458 ms/op | 1.18 |
List(uint64Number) 100000 binary -> tree_backed | 5.2193 ms/op | 4.7192 ms/op | 1.11 |
List(uint64Number) 100000 struct -> tree_backed | 7.9978 ms/op | 6.7476 ms/op | 1.19 |
List(uint64Number) 100000 tree_backed -> struct | 3.4617 ms/op | 2.6547 ms/op | 1.30 |
List(uint64Number) 100000 struct -> binary | 2.6446 ms/op | 2.0306 ms/op | 1.30 |
List(uint64Number) 100000 tree_backed -> binary | 1.6209 ms/op | 1.0072 ms/op | 1.61 |
List(Uint64Bigint) 100000 binary -> struct | 6.0381 ms/op | 4.8420 ms/op | 1.25 |
List(Uint64Bigint) 100000 binary -> tree_backed | 5.4022 ms/op | 4.7200 ms/op | 1.14 |
List(Uint64Bigint) 100000 struct -> tree_backed | 8.9399 ms/op | 7.7328 ms/op | 1.16 |
List(Uint64Bigint) 100000 tree_backed -> struct | 7.7999 ms/op | 6.0175 ms/op | 1.30 |
List(Uint64Bigint) 100000 struct -> binary | 3.3515 ms/op | 2.6382 ms/op | 1.27 |
List(Uint64Bigint) 100000 tree_backed -> binary | 1.3793 ms/op | 1.2158 ms/op | 1.13 |
Vector(Root) 100000 binary -> struct | 55.109 ms/op | 50.645 ms/op | 1.09 |
Vector(Root) 100000 binary -> tree_backed | 58.842 ms/op | 51.027 ms/op | 1.15 |
Vector(Root) 100000 struct -> tree_backed | 65.991 ms/op | 58.372 ms/op | 1.13 |
Vector(Root) 100000 tree_backed -> struct | 76.206 ms/op | 63.002 ms/op | 1.21 |
Vector(Root) 100000 struct -> binary | 3.3469 ms/op | 2.6083 ms/op | 1.28 |
Vector(Root) 100000 tree_backed -> binary | 13.677 ms/op | 11.422 ms/op | 1.20 |
List(Validator) 100000 binary -> struct | 203.67 ms/op | 177.06 ms/op | 1.15 |
List(Validator) 100000 binary -> tree_backed | 503.26 ms/op | 483.88 ms/op | 1.04 |
List(Validator) 100000 struct -> tree_backed | 558.09 ms/op | 508.91 ms/op | 1.10 |
List(Validator) 100000 tree_backed -> struct | 315.19 ms/op | 273.48 ms/op | 1.15 |
List(Validator) 100000 struct -> binary | 51.063 ms/op | 41.012 ms/op | 1.25 |
List(Validator) 100000 tree_backed -> binary | 139.57 ms/op | 113.44 ms/op | 1.23 |
List(Validator-NS) 100000 binary -> struct | 205.63 ms/op | 181.10 ms/op | 1.14 |
List(Validator-NS) 100000 binary -> tree_backed | 271.19 ms/op | 243.44 ms/op | 1.11 |
List(Validator-NS) 100000 struct -> tree_backed | 346.94 ms/op | 297.89 ms/op | 1.16 |
List(Validator-NS) 100000 tree_backed -> struct | 291.26 ms/op | 241.68 ms/op | 1.21 |
List(Validator-NS) 100000 struct -> binary | 52.372 ms/op | 41.059 ms/op | 1.28 |
List(Validator-NS) 100000 tree_backed -> binary | 64.138 ms/op | 46.618 ms/op | 1.38 |
get epochStatuses - MutableVector | 144.55 us/op | 100.04 us/op | 1.44 |
get epochStatuses - ViewDU | 290.09 us/op | 241.03 us/op | 1.20 |
set epochStatuses - ListTreeView | 1.9797 ms/op | 1.9437 ms/op | 1.02 |
set epochStatuses - ListTreeView - set() | 623.07 us/op | 602.09 us/op | 1.03 |
set epochStatuses - ListTreeView - commit() | 646.10 us/op | 551.09 us/op | 1.17 |
bitstring | 773.45 ns/op | 923.08 ns/op | 0.84 |
bit mask | 12.757 ns/op | 14.487 ns/op | 0.88 |
struct - increase slot to 1000000 | 2.1863 ms/op | 1.8931 ms/op | 1.15 |
UintNumberType - increase slot to 1000000 | 68.604 ms/op | 36.964 ms/op | 1.86 |
UintBigintType - increase slot to 1000000 | 627.48 ms/op | 571.84 ms/op | 1.10 |
UintBigint8 x 100000 tree_deserialize | 6.6342 ms/op | 5.5456 ms/op | 1.20 |
UintBigint8 x 100000 tree_serialize | 2.2627 ms/op | 1.1480 ms/op | 1.97 |
UintBigint16 x 100000 tree_deserialize | 6.1889 ms/op | 5.1609 ms/op | 1.20 |
UintBigint16 x 100000 tree_serialize | 2.1966 ms/op | 2.0151 ms/op | 1.09 |
UintBigint32 x 100000 tree_deserialize | 7.8797 ms/op | 6.3096 ms/op | 1.25 |
UintBigint32 x 100000 tree_serialize | 2.0657 ms/op | 1.5897 ms/op | 1.30 |
UintBigint64 x 100000 tree_deserialize | 8.4530 ms/op | 6.5380 ms/op | 1.29 |
UintBigint64 x 100000 tree_serialize | 2.7709 ms/op | 2.0794 ms/op | 1.33 |
UintBigint8 x 100000 value_deserialize | 874.92 us/op | 541.67 us/op | 1.62 |
UintBigint8 x 100000 value_serialize | 1.2337 ms/op | 921.93 us/op | 1.34 |
UintBigint16 x 100000 value_deserialize | 935.70 us/op | 581.27 us/op | 1.61 |
UintBigint16 x 100000 value_serialize | 1.2708 ms/op | 976.47 us/op | 1.30 |
UintBigint32 x 100000 value_deserialize | 836.99 us/op | 539.90 us/op | 1.55 |
UintBigint32 x 100000 value_serialize | 1.2990 ms/op | 960.74 us/op | 1.35 |
UintBigint64 x 100000 value_deserialize | 951.52 us/op | 613.33 us/op | 1.55 |
UintBigint64 x 100000 value_serialize | 1.6334 ms/op | 1.2218 ms/op | 1.34 |
UintBigint8 x 100000 deserialize | 7.4526 ms/op | 6.3938 ms/op | 1.17 |
UintBigint8 x 100000 serialize | 2.6670 ms/op | 1.9289 ms/op | 1.38 |
UintBigint16 x 100000 deserialize | 7.2787 ms/op | 6.0533 ms/op | 1.20 |
UintBigint16 x 100000 serialize | 2.6233 ms/op | 1.9870 ms/op | 1.32 |
UintBigint32 x 100000 deserialize | 8.3292 ms/op | 7.2425 ms/op | 1.15 |
UintBigint32 x 100000 serialize | 4.3360 ms/op | 3.8573 ms/op | 1.12 |
UintBigint64 x 100000 deserialize | 6.0143 ms/op | 4.8229 ms/op | 1.25 |
UintBigint64 x 100000 serialize | 2.6601 ms/op | 1.9024 ms/op | 1.40 |
UintBigint128 x 100000 deserialize | 8.9186 ms/op | 7.6985 ms/op | 1.16 |
UintBigint128 x 100000 serialize | 27.804 ms/op | 21.665 ms/op | 1.28 |
UintBigint256 x 100000 deserialize | 16.723 ms/op | 13.797 ms/op | 1.21 |
UintBigint256 x 100000 serialize | 83.637 ms/op | 65.014 ms/op | 1.29 |
Slice from Uint8Array x25000 | 1.6507 ms/op | 1.3632 ms/op | 1.21 |
Slice from ArrayBuffer x25000 | 27.725 ms/op | 27.835 ms/op | 1.00 |
Slice from ArrayBuffer x25000 + new Uint8Array | 30.454 ms/op | 32.570 ms/op | 0.94 |
Copy Uint8Array 100000 iterate | 1.7412 ms/op | 1.0621 ms/op | 1.64 |
Copy Uint8Array 100000 slice | 326.54 us/op | 102.88 us/op | 3.17 |
Copy Uint8Array 100000 Uint8Array.prototype.slice.call | 333.97 us/op | 280.73 us/op | 1.19 |
Copy Buffer 100000 Uint8Array.prototype.slice.call | 326.31 us/op | 288.01 us/op | 1.13 |
Copy Uint8Array 100000 slice + set | 659.48 us/op | 556.43 us/op | 1.19 |
Copy Uint8Array 100000 subarray + set | 324.61 us/op | 280.93 us/op | 1.16 |
Copy Uint8Array 100000 slice arrayBuffer | 339.62 us/op | 280.97 us/op | 1.21 |
Uint64 deserialize 100000 - iterate Uint8Array | 2.1491 ms/op | 2.1028 ms/op | 1.02 |
Uint64 deserialize 100000 - by Uint32A | 1.9640 ms/op | 2.0150 ms/op | 0.97 |
Uint64 deserialize 100000 - by DataView.getUint32 x2 | 2.0881 ms/op | 1.9891 ms/op | 1.05 |
Uint64 deserialize 100000 - by DataView.getBigUint64 | 7.0503 ms/op | 5.9090 ms/op | 1.19 |
Uint64 deserialize 100000 - by byte | 69.145 ms/op | 72.899 ms/op | 0.95 |
by benchmarkbot/action
wemeetagain
force-pushed
the
release-please--branches--master
branch
from
October 4, 2023 08:42
f44232c
to
2e12ed6
Compare
twoeths
approved these changes
Oct 9, 2023
🤖 Release is at https://github.com/ChainSafe/ssz/releases/tag/ssz-v0.14.0 🌻 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
🤖 I have created a release beep boop
ssz: 0.14.0
0.14.0 (2023-10-04)
Features
Bug Fixes
This PR was generated with Release Please. See documentation.