-
-
Notifications
You must be signed in to change notification settings - Fork 21
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 #310
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: 0f99418 | Previous: 18baeaa | Ratio |
---|---|---|---|
Number64UintType - get balances list | 5.3818 ms/op | 1.5355 ms/op | 3.50 |
Full benchmark results
Benchmark suite | Current: 0f99418 | Previous: 18baeaa | Ratio |
---|---|---|---|
digestTwoHashObjects 50023 times | 69.109 ms/op | 69.159 ms/op | 1.00 |
digest64 50023 times | 70.175 ms/op | 70.861 ms/op | 0.99 |
digest 50023 times | 70.849 ms/op | 70.915 ms/op | 1.00 |
input length 32 | 1.7610 us/op | 1.7240 us/op | 1.02 |
input length 64 | 1.8950 us/op | 1.9080 us/op | 0.99 |
input length 128 | 3.2880 us/op | 3.2400 us/op | 1.01 |
input length 256 | 4.9280 us/op | 4.8740 us/op | 1.01 |
input length 512 | 8.1120 us/op | 8.0960 us/op | 1.00 |
input length 1024 | 15.681 us/op | 15.613 us/op | 1.00 |
digest 1000000 times | 1.1260 s/op | 1.1512 s/op | 0.98 |
hashObjectToByteArray 50023 times | 1.9090 ms/op | 1.9272 ms/op | 0.99 |
byteArrayToHashObject 50023 times | 2.3869 ms/op | 2.0760 ms/op | 1.15 |
getGindicesAtDepth | 5.2050 us/op | 5.3150 us/op | 0.98 |
iterateAtDepth | 10.976 us/op | 11.012 us/op | 1.00 |
getGindexBits | 643.00 ns/op | 648.00 ns/op | 0.99 |
gindexIterator | 1.3250 us/op | 1.3430 us/op | 0.99 |
hash 2 Uint8Array 2250026 times | 3.2464 s/op | 3.2557 s/op | 1.00 |
hashTwoObjects 2250026 times | 3.1130 s/op | 3.1135 s/op | 1.00 |
getNodeH() x7812.5 avg hindex | 21.098 us/op | 20.677 us/op | 1.02 |
getNodeH() x7812.5 index 0 | 6.7160 us/op | 6.7180 us/op | 1.00 |
getNodeH() x7812.5 index 7 | 6.6970 us/op | 6.7140 us/op | 1.00 |
getNodeH() x7812.5 index 7 with key array | 6.6960 us/op | 6.7380 us/op | 0.99 |
new LeafNode() x7812.5 | 301.51 us/op | 306.89 us/op | 0.98 |
multiproof - depth 15, 1 requested leaves | 13.319 us/op | 13.837 us/op | 0.96 |
tree offset multiproof - depth 15, 1 requested leaves | 30.560 us/op | 31.307 us/op | 0.98 |
compact multiproof - depth 15, 1 requested leaves | 6.6470 us/op | 6.7590 us/op | 0.98 |
multiproof - depth 15, 2 requested leaves | 17.181 us/op | 17.805 us/op | 0.96 |
tree offset multiproof - depth 15, 2 requested leaves | 31.916 us/op | 32.826 us/op | 0.97 |
compact multiproof - depth 15, 2 requested leaves | 3.3840 us/op | 3.4200 us/op | 0.99 |
multiproof - depth 15, 3 requested leaves | 23.921 us/op | 24.805 us/op | 0.96 |
tree offset multiproof - depth 15, 3 requested leaves | 41.412 us/op | 46.639 us/op | 0.89 |
compact multiproof - depth 15, 3 requested leaves | 6.5600 us/op | 7.0820 us/op | 0.93 |
multiproof - depth 15, 4 requested leaves | 31.284 us/op | 32.319 us/op | 0.97 |
tree offset multiproof - depth 15, 4 requested leaves | 51.419 us/op | 54.717 us/op | 0.94 |
compact multiproof - depth 15, 4 requested leaves | 7.2190 us/op | 6.2350 us/op | 1.16 |
packedRootsBytesToLeafNodes bytes 4000 offset 0 | 2.7720 us/op | 2.8780 us/op | 0.96 |
packedRootsBytesToLeafNodes bytes 4000 offset 1 | 2.7100 us/op | 2.8780 us/op | 0.94 |
packedRootsBytesToLeafNodes bytes 4000 offset 2 | 2.6870 us/op | 2.8570 us/op | 0.94 |
packedRootsBytesToLeafNodes bytes 4000 offset 3 | 2.6780 us/op | 2.8420 us/op | 0.94 |
subtreeFillToContents depth 40 count 250000 | 71.181 ms/op | 60.764 ms/op | 1.17 |
setRoot - gindexBitstring | 10.957 ms/op | 13.625 ms/op | 0.80 |
setRoot - gindex | 12.242 ms/op | 15.119 ms/op | 0.81 |
getRoot - gindexBitstring | 2.3471 ms/op | 2.6235 ms/op | 0.89 |
getRoot - gindex | 3.5119 ms/op | 3.9678 ms/op | 0.89 |
getHashObject then setHashObject | 14.361 ms/op | 16.706 ms/op | 0.86 |
setNodeWithFn | 12.695 ms/op | 15.243 ms/op | 0.83 |
getNodeAtDepth depth 0 x100000 | 1.6341 ms/op | 1.6045 ms/op | 1.02 |
setNodeAtDepth depth 0 x100000 | 3.4507 ms/op | 3.9992 ms/op | 0.86 |
getNodesAtDepth depth 0 x100000 | 1.4089 ms/op | 1.4047 ms/op | 1.00 |
setNodesAtDepth depth 0 x100000 | 1.9577 ms/op | 1.9755 ms/op | 0.99 |
getNodeAtDepth depth 1 x100000 | 1.7078 ms/op | 1.7335 ms/op | 0.99 |
setNodeAtDepth depth 1 x100000 | 7.2047 ms/op | 12.090 ms/op | 0.60 |
getNodesAtDepth depth 1 x100000 | 1.6108 ms/op | 1.5817 ms/op | 1.02 |
setNodesAtDepth depth 1 x100000 | 6.1931 ms/op | 8.7325 ms/op | 0.71 |
getNodeAtDepth depth 2 x100000 | 2.1727 ms/op | 2.1980 ms/op | 0.99 |
setNodeAtDepth depth 2 x100000 | 12.468 ms/op | 18.468 ms/op | 0.68 |
getNodesAtDepth depth 2 x100000 | 24.997 ms/op | 28.452 ms/op | 0.88 |
setNodesAtDepth depth 2 x100000 | 18.011 ms/op | 26.091 ms/op | 0.69 |
tree.getNodesAtDepth - gindexes | 6.4063 ms/op | 9.9726 ms/op | 0.64 |
tree.getNodesAtDepth - push all nodes | 2.3509 ms/op | 4.1589 ms/op | 0.57 |
tree.getNodesAtDepth - navigation | 201.30 us/op | 201.48 us/op | 1.00 |
tree.setNodesAtDepth - indexes | 524.25 us/op | 703.29 us/op | 0.75 |
set at depth 8 | 826.00 ns/op | 1.0170 us/op | 0.81 |
set at depth 16 | 936.00 ns/op | 1.3620 us/op | 0.69 |
set at depth 32 | 1.4860 us/op | 2.1970 us/op | 0.68 |
iterateNodesAtDepth 8 256 | 17.564 us/op | 20.712 us/op | 0.85 |
getNodesAtDepth 8 256 | 4.3270 us/op | 4.8870 us/op | 0.89 |
iterateNodesAtDepth 16 65536 | 5.1943 ms/op | 5.6495 ms/op | 0.92 |
getNodesAtDepth 16 65536 | 2.2140 ms/op | 2.9089 ms/op | 0.76 |
iterateNodesAtDepth 32 250000 | 20.008 ms/op | 22.730 ms/op | 0.88 |
getNodesAtDepth 32 250000 | 5.6889 ms/op | 5.7671 ms/op | 0.99 |
iterateNodesAtDepth 40 250000 | 19.960 ms/op | 20.169 ms/op | 0.99 |
getNodesAtDepth 40 250000 | 5.6406 ms/op | 6.0113 ms/op | 0.94 |
250k validators | 3.3819 s/op | 3.4289 s/op | 0.99 |
bitlist bytes to struct (120,90) | 1.3650 us/op | 1.2490 us/op | 1.09 |
bitlist bytes to tree (120,90) | 5.1260 us/op | 4.7610 us/op | 1.08 |
bitlist bytes to struct (2048,2048) | 2.0170 us/op | 1.9500 us/op | 1.03 |
bitlist bytes to tree (2048,2048) | 8.4690 us/op | 7.9120 us/op | 1.07 |
ByteListType - deserialize | 17.377 ms/op | 16.771 ms/op | 1.04 |
BasicListType - deserialize | 26.047 ms/op | 43.256 ms/op | 0.60 |
ByteListType - serialize | 16.941 ms/op | 16.001 ms/op | 1.06 |
BasicListType - serialize | 21.607 ms/op | 16.897 ms/op | 1.28 |
BasicListType - tree_convertToStruct | 39.605 ms/op | 37.189 ms/op | 1.06 |
List[uint8, 68719476736] len 300000 ViewDU.getAll() + iterate | 4.7953 ms/op | 4.6815 ms/op | 1.02 |
List[uint8, 68719476736] len 300000 ViewDU.get(i) | 4.5319 ms/op | 4.4940 ms/op | 1.01 |
Array.push len 300000 empty Array - number | 7.2084 ms/op | 7.4778 ms/op | 0.96 |
Array.set len 300000 from new Array - number | 2.4086 ms/op | 2.2798 ms/op | 1.06 |
Array.set len 300000 - number | 7.1797 ms/op | 7.4169 ms/op | 0.97 |
Uint8Array.set len 300000 | 241.75 us/op | 239.83 us/op | 1.01 |
Uint32Array.set len 300000 | 329.26 us/op | 314.31 us/op | 1.05 |
Container({a: uint8, b: uint8}) getViewDU x300000 | 31.195 ms/op | 29.645 ms/op | 1.05 |
ContainerNodeStruct({a: uint8, b: uint8}) getViewDU x300000 | 12.644 ms/op | 12.265 ms/op | 1.03 |
List(Container) len 300000 ViewDU.getAllReadonly() + iterate | 307.11 ms/op | 335.12 ms/op | 0.92 |
List(Container) len 300000 ViewDU.getAllReadonlyValues() + iterate | 358.03 ms/op | 405.25 ms/op | 0.88 |
List(Container) len 300000 ViewDU.get(i) | 8.6335 ms/op | 9.9842 ms/op | 0.86 |
List(Container) len 300000 ViewDU.getReadonly(i) | 8.5204 ms/op | 8.7569 ms/op | 0.97 |
List(ContainerNodeStruct) len 300000 ViewDU.getAllReadonly() + iterate | 41.480 ms/op | 39.963 ms/op | 1.04 |
List(ContainerNodeStruct) len 300000 ViewDU.getAllReadonlyValues() + iterate | 7.0117 ms/op | 7.8769 ms/op | 0.89 |
List(ContainerNodeStruct) len 300000 ViewDU.get(i) | 8.5187 ms/op | 8.7347 ms/op | 0.98 |
List(ContainerNodeStruct) len 300000 ViewDU.getReadonly(i) | 8.3412 ms/op | 8.7362 ms/op | 0.95 |
Array.push len 300000 empty Array - object | 7.8205 ms/op | 7.8738 ms/op | 0.99 |
Array.set len 300000 from new Array - object | 2.2975 ms/op | 2.6984 ms/op | 0.85 |
Array.set len 300000 - object | 6.7108 ms/op | 7.9068 ms/op | 0.85 |
cachePermanentRootStruct no cache | 12.889 us/op | 13.495 us/op | 0.96 |
cachePermanentRootStruct with cache | 281.00 ns/op | 389.00 ns/op | 0.72 |
epochParticipation len 250000 rws 7813 | 2.9992 ms/op | 3.1187 ms/op | 0.96 |
deserialize Attestation - tree | 3.9440 us/op | 4.4560 us/op | 0.89 |
deserialize Attestation - struct | 2.7980 us/op | 3.1310 us/op | 0.89 |
deserialize SignedAggregateAndProof - tree | 5.0520 us/op | 5.6360 us/op | 0.90 |
deserialize SignedAggregateAndProof - struct | 4.4260 us/op | 4.7410 us/op | 0.93 |
deserialize SyncCommitteeMessage - tree | 1.6380 us/op | 1.6940 us/op | 0.97 |
deserialize SyncCommitteeMessage - struct | 1.7820 us/op | 1.9630 us/op | 0.91 |
deserialize SignedContributionAndProof - tree | 2.8220 us/op | 2.8260 us/op | 1.00 |
deserialize SignedContributionAndProof - struct | 3.7600 us/op | 4.1570 us/op | 0.90 |
deserialize SignedBeaconBlock - tree | 307.17 us/op | 319.51 us/op | 0.96 |
deserialize SignedBeaconBlock - struct | 183.14 us/op | 211.02 us/op | 0.87 |
BeaconState vc 300000 - deserialize tree | 839.18 ms/op | 815.86 ms/op | 1.03 |
BeaconState vc 300000 - serialize tree | 189.07 ms/op | 255.62 ms/op | 0.74 |
BeaconState.historicalRoots vc 300000 - deserialize tree | 1.2260 us/op | 1.2410 us/op | 0.99 |
BeaconState.historicalRoots vc 300000 - serialize tree | 1.2010 us/op | 1.3990 us/op | 0.86 |
BeaconState.validators vc 300000 - deserialize tree | 789.60 ms/op | 849.16 ms/op | 0.93 |
BeaconState.validators vc 300000 - serialize tree | 187.61 ms/op | 189.61 ms/op | 0.99 |
BeaconState.balances vc 300000 - deserialize tree | 29.413 ms/op | 35.097 ms/op | 0.84 |
BeaconState.balances vc 300000 - serialize tree | 3.6312 ms/op | 3.4499 ms/op | 1.05 |
BeaconState.previousEpochParticipation vc 300000 - deserialize tree | 433.48 us/op | 487.44 us/op | 0.89 |
BeaconState.previousEpochParticipation vc 300000 - serialize tree | 326.08 us/op | 342.15 us/op | 0.95 |
BeaconState.currentEpochParticipation vc 300000 - deserialize tree | 431.31 us/op | 488.96 us/op | 0.88 |
BeaconState.currentEpochParticipation vc 300000 - serialize tree | 325.88 us/op | 337.85 us/op | 0.96 |
BeaconState.inactivityScores vc 300000 - deserialize tree | 32.731 ms/op | 30.894 ms/op | 1.06 |
BeaconState.inactivityScores vc 300000 - serialize tree | 3.3160 ms/op | 4.1034 ms/op | 0.81 |
hashTreeRoot Attestation - struct | 41.444 us/op | 45.810 us/op | 0.90 |
hashTreeRoot Attestation - tree | 29.995 us/op | 31.807 us/op | 0.94 |
hashTreeRoot SignedAggregateAndProof - struct | 64.309 us/op | 73.119 us/op | 0.88 |
hashTreeRoot SignedAggregateAndProof - tree | 43.370 us/op | 43.775 us/op | 0.99 |
hashTreeRoot SyncCommitteeMessage - struct | 13.657 us/op | 15.075 us/op | 0.91 |
hashTreeRoot SyncCommitteeMessage - tree | 9.6660 us/op | 9.5080 us/op | 1.02 |
hashTreeRoot SignedContributionAndProof - struct | 38.553 us/op | 41.857 us/op | 0.92 |
hashTreeRoot SignedContributionAndProof - tree | 30.012 us/op | 31.337 us/op | 0.96 |
hashTreeRoot SignedBeaconBlock - struct | 3.3922 ms/op | 3.6396 ms/op | 0.93 |
hashTreeRoot SignedBeaconBlock - tree | 2.5839 ms/op | 2.5729 ms/op | 1.00 |
hashTreeRoot Validator - struct | 18.198 us/op | 18.882 us/op | 0.96 |
hashTreeRoot Validator - tree | 16.080 us/op | 16.425 us/op | 0.98 |
BeaconState vc 300000 - hashTreeRoot tree | 5.3146 s/op | 5.3147 s/op | 1.00 |
BeaconState.historicalRoots vc 300000 - hashTreeRoot tree | 2.1770 us/op | 2.2040 us/op | 0.99 |
BeaconState.validators vc 300000 - hashTreeRoot tree | 5.0686 s/op | 5.0961 s/op | 0.99 |
BeaconState.balances vc 300000 - hashTreeRoot tree | 129.54 ms/op | 130.00 ms/op | 1.00 |
BeaconState.previousEpochParticipation vc 300000 - hashTreeRoot tree | 13.857 ms/op | 13.816 ms/op | 1.00 |
BeaconState.currentEpochParticipation vc 300000 - hashTreeRoot tree | 13.863 ms/op | 13.819 ms/op | 1.00 |
BeaconState.inactivityScores vc 300000 - hashTreeRoot tree | 134.93 ms/op | 137.91 ms/op | 0.98 |
hash64 x18 | 27.949 us/op | 28.250 us/op | 0.99 |
hashTwoObjects x18 | 28.571 us/op | 27.629 us/op | 1.03 |
hash64 x1740 | 2.6022 ms/op | 2.6602 ms/op | 0.98 |
hashTwoObjects x1740 | 2.7011 ms/op | 2.5802 ms/op | 1.05 |
hash64 x2700000 | 4.0412 s/op | 4.1103 s/op | 0.98 |
hashTwoObjects x2700000 | 4.1886 s/op | 4.0532 s/op | 1.03 |
get_exitEpoch - ContainerType | 487.00 ns/op | 563.00 ns/op | 0.87 |
get_exitEpoch - ContainerNodeStructType | 430.00 ns/op | 503.00 ns/op | 0.85 |
set_exitEpoch - ContainerType | 455.00 ns/op | 533.00 ns/op | 0.85 |
set_exitEpoch - ContainerNodeStructType | 440.00 ns/op | 490.00 ns/op | 0.90 |
get_pubkey - ContainerType | 1.9540 us/op | 1.7190 us/op | 1.14 |
get_pubkey - ContainerNodeStructType | 306.00 ns/op | 380.00 ns/op | 0.81 |
hashTreeRoot - ContainerType | 582.00 ns/op | 562.00 ns/op | 1.04 |
hashTreeRoot - ContainerNodeStructType | 548.00 ns/op | 652.00 ns/op | 0.84 |
createProof - ContainerType | 6.9860 us/op | 6.7860 us/op | 1.03 |
createProof - ContainerNodeStructType | 34.108 us/op | 33.722 us/op | 1.01 |
serialize - ContainerType | 2.8690 us/op | 3.0980 us/op | 0.93 |
serialize - ContainerNodeStructType | 2.3080 us/op | 2.4220 us/op | 0.95 |
set_exitEpoch_and_hashTreeRoot - ContainerType | 6.3940 us/op | 6.3750 us/op | 1.00 |
set_exitEpoch_and_hashTreeRoot - ContainerNodeStructType | 17.291 us/op | 17.293 us/op | 1.00 |
Array - for of | 7.2370 us/op | 6.7540 us/op | 1.07 |
Array - for(;;) | 7.0130 us/op | 6.6290 us/op | 1.06 |
basicListValue.readonlyValuesArray() | 4.2114 ms/op | 4.2756 ms/op | 0.98 |
basicListValue.readonlyValuesArray() + loop all | 4.3435 ms/op | 4.4082 ms/op | 0.99 |
compositeListValue.readonlyValuesArray() | 32.669 ms/op | 33.938 ms/op | 0.96 |
compositeListValue.readonlyValuesArray() + loop all | 32.043 ms/op | 32.080 ms/op | 1.00 |
Number64UintType - get balances list | 5.3818 ms/op | 1.5355 ms/op | 3.50 |
Number64UintType - set balances list | 11.661 ms/op | 14.124 ms/op | 0.83 |
Number64UintType - get and increase 10 then set | 47.369 ms/op | 45.445 ms/op | 1.04 |
Number64UintType - increase 10 using applyDelta | 19.222 ms/op | 17.594 ms/op | 1.09 |
Number64UintType - increase 10 using applyDeltaInBatch | 19.227 ms/op | 17.427 ms/op | 1.10 |
tree_newTreeFromUint64Deltas | 22.913 ms/op | 22.914 ms/op | 1.00 |
unsafeUint8ArrayToTree | 39.218 ms/op | 39.998 ms/op | 0.98 |
bitLength(50) | 345.00 ns/op | 338.00 ns/op | 1.02 |
bitLengthStr(50) | 382.00 ns/op | 373.00 ns/op | 1.02 |
bitLength(8000) | 350.00 ns/op | 328.00 ns/op | 1.07 |
bitLengthStr(8000) | 425.00 ns/op | 418.00 ns/op | 1.02 |
bitLength(250000) | 344.00 ns/op | 331.00 ns/op | 1.04 |
bitLengthStr(250000) | 487.00 ns/op | 487.00 ns/op | 1.00 |
floor - Math.floor (53) | 0.60258 ns/op | 0.60275 ns/op | 1.00 |
floor - << 0 (53) | 0.60261 ns/op | 0.60274 ns/op | 1.00 |
floor - Math.floor (512) | 0.60255 ns/op | 0.60294 ns/op | 1.00 |
floor - << 0 (512) | 0.60252 ns/op | 0.60265 ns/op | 1.00 |
fnIf(0) | 2.0077 ns/op | 2.0082 ns/op | 1.00 |
fnSwitch(0) | 3.2618 ns/op | 3.3171 ns/op | 0.98 |
fnObj(0) | 0.60258 ns/op | 0.60278 ns/op | 1.00 |
fnArr(0) | 0.60265 ns/op | 0.60272 ns/op | 1.00 |
fnIf(4) | 3.1365 ns/op | 3.1969 ns/op | 0.98 |
fnSwitch(4) | 3.2184 ns/op | 3.2873 ns/op | 0.98 |
fnObj(4) | 0.60248 ns/op | 0.60263 ns/op | 1.00 |
fnArr(4) | 0.60259 ns/op | 0.60281 ns/op | 1.00 |
fnIf(9) | 5.2221 ns/op | 5.2272 ns/op | 1.00 |
fnSwitch(9) | 3.2914 ns/op | 3.2847 ns/op | 1.00 |
fnObj(9) | 0.60253 ns/op | 0.60266 ns/op | 1.00 |
fnArr(9) | 0.60259 ns/op | 0.60273 ns/op | 1.00 |
Container {a,b,vec} - as struct x100000 | 60.491 us/op | 60.533 us/op | 1.00 |
Container {a,b,vec} - as tree x100000 | 505.76 us/op | 522.38 us/op | 0.97 |
Container {a,vec,b} - as struct x100000 | 120.72 us/op | 120.76 us/op | 1.00 |
Container {a,vec,b} - as tree x100000 | 549.42 us/op | 550.00 us/op | 1.00 |
get 2 props x1000000 - rawObject | 401.87 us/op | 401.90 us/op | 1.00 |
get 2 props x1000000 - proxy | 90.613 ms/op | 90.592 ms/op | 1.00 |
get 2 props x1000000 - customObj | 401.77 us/op | 401.95 us/op | 1.00 |
Simple object binary -> struct | 1.0660 us/op | 952.00 ns/op | 1.12 |
Simple object binary -> tree_backed | 2.8280 us/op | 2.5330 us/op | 1.12 |
Simple object struct -> tree_backed | 3.6820 us/op | 3.2020 us/op | 1.15 |
Simple object tree_backed -> struct | 3.1770 us/op | 2.7880 us/op | 1.14 |
Simple object struct -> binary | 1.6010 us/op | 1.3950 us/op | 1.15 |
Simple object tree_backed -> binary | 2.7310 us/op | 2.4110 us/op | 1.13 |
aggregationBits binary -> struct | 941.00 ns/op | 810.00 ns/op | 1.16 |
aggregationBits binary -> tree_backed | 3.7320 us/op | 3.1770 us/op | 1.17 |
aggregationBits struct -> tree_backed | 4.5270 us/op | 3.8750 us/op | 1.17 |
aggregationBits tree_backed -> struct | 1.9110 us/op | 1.6540 us/op | 1.16 |
aggregationBits struct -> binary | 1.3700 us/op | 1.1730 us/op | 1.17 |
aggregationBits tree_backed -> binary | 1.7250 us/op | 1.6490 us/op | 1.05 |
List(uint8) 100000 binary -> struct | 1.7314 ms/op | 1.8344 ms/op | 0.94 |
List(uint8) 100000 binary -> tree_backed | 125.91 us/op | 158.44 us/op | 0.79 |
List(uint8) 100000 struct -> tree_backed | 1.6334 ms/op | 1.8430 ms/op | 0.89 |
List(uint8) 100000 tree_backed -> struct | 1.1333 ms/op | 1.2437 ms/op | 0.91 |
List(uint8) 100000 struct -> binary | 1.5128 ms/op | 1.6188 ms/op | 0.93 |
List(uint8) 100000 tree_backed -> binary | 88.844 us/op | 96.113 us/op | 0.92 |
List(uint64Number) 100000 binary -> struct | 1.4286 ms/op | 1.5824 ms/op | 0.90 |
List(uint64Number) 100000 binary -> tree_backed | 3.7811 ms/op | 5.2410 ms/op | 0.72 |
List(uint64Number) 100000 struct -> tree_backed | 5.7146 ms/op | 7.1244 ms/op | 0.80 |
List(uint64Number) 100000 tree_backed -> struct | 2.4863 ms/op | 2.7433 ms/op | 0.91 |
List(uint64Number) 100000 struct -> binary | 1.8257 ms/op | 1.9942 ms/op | 0.92 |
List(uint64Number) 100000 tree_backed -> binary | 1.0055 ms/op | 1.1694 ms/op | 0.86 |
List(Uint64Bigint) 100000 binary -> struct | 4.3465 ms/op | 4.3238 ms/op | 1.01 |
List(Uint64Bigint) 100000 binary -> tree_backed | 4.6653 ms/op | 4.9340 ms/op | 0.95 |
List(Uint64Bigint) 100000 struct -> tree_backed | 7.3143 ms/op | 7.3971 ms/op | 0.99 |
List(Uint64Bigint) 100000 tree_backed -> struct | 5.4635 ms/op | 5.9088 ms/op | 0.92 |
List(Uint64Bigint) 100000 struct -> binary | 2.6059 ms/op | 2.6222 ms/op | 0.99 |
List(Uint64Bigint) 100000 tree_backed -> binary | 1.1273 ms/op | 1.1397 ms/op | 0.99 |
Vector(Root) 100000 binary -> struct | 46.266 ms/op | 39.335 ms/op | 1.18 |
Vector(Root) 100000 binary -> tree_backed | 47.651 ms/op | 47.326 ms/op | 1.01 |
Vector(Root) 100000 struct -> tree_backed | 53.972 ms/op | 53.988 ms/op | 1.00 |
Vector(Root) 100000 tree_backed -> struct | 61.589 ms/op | 62.382 ms/op | 0.99 |
Vector(Root) 100000 struct -> binary | 2.4421 ms/op | 2.5898 ms/op | 0.94 |
Vector(Root) 100000 tree_backed -> binary | 10.639 ms/op | 11.642 ms/op | 0.91 |
List(Validator) 100000 binary -> struct | 161.24 ms/op | 171.72 ms/op | 0.94 |
List(Validator) 100000 binary -> tree_backed | 416.14 ms/op | 435.20 ms/op | 0.96 |
List(Validator) 100000 struct -> tree_backed | 452.75 ms/op | 469.47 ms/op | 0.96 |
List(Validator) 100000 tree_backed -> struct | 257.29 ms/op | 251.51 ms/op | 1.02 |
List(Validator) 100000 struct -> binary | 39.443 ms/op | 40.779 ms/op | 0.97 |
List(Validator) 100000 tree_backed -> binary | 110.81 ms/op | 110.01 ms/op | 1.01 |
List(Validator-NS) 100000 binary -> struct | 161.86 ms/op | 168.66 ms/op | 0.96 |
List(Validator-NS) 100000 binary -> tree_backed | 224.91 ms/op | 233.00 ms/op | 0.97 |
List(Validator-NS) 100000 struct -> tree_backed | 280.99 ms/op | 283.80 ms/op | 0.99 |
List(Validator-NS) 100000 tree_backed -> struct | 233.36 ms/op | 235.73 ms/op | 0.99 |
List(Validator-NS) 100000 struct -> binary | 42.482 ms/op | 41.290 ms/op | 1.03 |
List(Validator-NS) 100000 tree_backed -> binary | 48.378 ms/op | 47.611 ms/op | 1.02 |
get epochStatuses - MutableVector | 100.06 us/op | 104.06 us/op | 0.96 |
get epochStatuses - ViewDU | 285.76 us/op | 239.41 us/op | 1.19 |
set epochStatuses - ListTreeView | 1.9099 ms/op | 1.8985 ms/op | 1.01 |
set epochStatuses - ListTreeView - set() | 604.39 us/op | 625.68 us/op | 0.97 |
set epochStatuses - ListTreeView - commit() | 521.58 us/op | 553.59 us/op | 0.94 |
bitstring | 918.17 ns/op | 927.91 ns/op | 0.99 |
bit mask | 14.483 ns/op | 14.496 ns/op | 1.00 |
struct - increase slot to 1000000 | 2.0430 ms/op | 1.8106 ms/op | 1.13 |
UintNumberType - increase slot to 1000000 | 36.898 ms/op | 36.945 ms/op | 1.00 |
UintBigintType - increase slot to 1000000 | 547.92 ms/op | 566.47 ms/op | 0.97 |
UintBigint8 x 100000 tree_deserialize | 5.1417 ms/op | 5.1494 ms/op | 1.00 |
UintBigint8 x 100000 tree_serialize | 1.4622 ms/op | 735.62 us/op | 1.99 |
UintBigint16 x 100000 tree_deserialize | 5.0003 ms/op | 4.8182 ms/op | 1.04 |
UintBigint16 x 100000 tree_serialize | 1.5213 ms/op | 1.5756 ms/op | 0.97 |
UintBigint32 x 100000 tree_deserialize | 6.7320 ms/op | 6.6967 ms/op | 1.01 |
UintBigint32 x 100000 tree_serialize | 1.5118 ms/op | 1.7506 ms/op | 0.86 |
UintBigint64 x 100000 tree_deserialize | 6.7746 ms/op | 7.0975 ms/op | 0.95 |
UintBigint64 x 100000 tree_serialize | 1.9540 ms/op | 2.2681 ms/op | 0.86 |
UintBigint8 x 100000 value_deserialize | 545.28 us/op | 544.53 us/op | 1.00 |
UintBigint8 x 100000 value_serialize | 793.00 us/op | 925.52 us/op | 0.86 |
UintBigint16 x 100000 value_deserialize | 601.19 us/op | 576.93 us/op | 1.04 |
UintBigint16 x 100000 value_serialize | 852.83 us/op | 1.0064 ms/op | 0.85 |
UintBigint32 x 100000 value_deserialize | 543.77 us/op | 546.45 us/op | 1.00 |
UintBigint32 x 100000 value_serialize | 875.01 us/op | 993.07 us/op | 0.88 |
UintBigint64 x 100000 value_deserialize | 603.14 us/op | 630.89 us/op | 0.96 |
UintBigint64 x 100000 value_serialize | 1.0872 ms/op | 1.2442 ms/op | 0.87 |
UintBigint8 x 100000 deserialize | 5.7329 ms/op | 6.2300 ms/op | 0.92 |
UintBigint8 x 100000 serialize | 2.0304 ms/op | 1.9317 ms/op | 1.05 |
UintBigint16 x 100000 deserialize | 5.9673 ms/op | 5.8656 ms/op | 1.02 |
UintBigint16 x 100000 serialize | 1.8554 ms/op | 2.0571 ms/op | 0.90 |
UintBigint32 x 100000 deserialize | 6.8628 ms/op | 7.1049 ms/op | 0.97 |
UintBigint32 x 100000 serialize | 3.5782 ms/op | 3.6221 ms/op | 0.99 |
UintBigint64 x 100000 deserialize | 4.4871 ms/op | 4.4801 ms/op | 1.00 |
UintBigint64 x 100000 serialize | 1.8737 ms/op | 1.9085 ms/op | 0.98 |
UintBigint128 x 100000 deserialize | 6.9987 ms/op | 7.0560 ms/op | 0.99 |
UintBigint128 x 100000 serialize | 21.625 ms/op | 21.695 ms/op | 1.00 |
UintBigint256 x 100000 deserialize | 13.620 ms/op | 13.118 ms/op | 1.04 |
UintBigint256 x 100000 serialize | 65.871 ms/op | 63.952 ms/op | 1.03 |
Slice from Uint8Array x25000 | 1.3405 ms/op | 1.3232 ms/op | 1.01 |
Slice from ArrayBuffer x25000 | 24.109 ms/op | 25.687 ms/op | 0.94 |
Slice from ArrayBuffer x25000 + new Uint8Array | 24.349 ms/op | 27.199 ms/op | 0.90 |
Copy Uint8Array 100000 iterate | 1.0338 ms/op | 1.0536 ms/op | 0.98 |
Copy Uint8Array 100000 slice | 91.974 us/op | 96.837 us/op | 0.95 |
Copy Uint8Array 100000 Uint8Array.prototype.slice.call | 97.026 us/op | 99.809 us/op | 0.97 |
Copy Buffer 100000 Uint8Array.prototype.slice.call | 95.119 us/op | 102.07 us/op | 0.93 |
Copy Uint8Array 100000 slice + set | 207.15 us/op | 213.85 us/op | 0.97 |
Copy Uint8Array 100000 subarray + set | 95.117 us/op | 98.881 us/op | 0.96 |
Copy Uint8Array 100000 slice arrayBuffer | 94.963 us/op | 97.027 us/op | 0.98 |
Uint64 deserialize 100000 - iterate Uint8Array | 2.0016 ms/op | 2.0892 ms/op | 0.96 |
Uint64 deserialize 100000 - by Uint32A | 1.8691 ms/op | 1.9825 ms/op | 0.94 |
Uint64 deserialize 100000 - by DataView.getUint32 x2 | 1.9932 ms/op | 2.0265 ms/op | 0.98 |
Uint64 deserialize 100000 - by DataView.getBigUint64 | 5.7301 ms/op | 5.8826 ms/op | 0.97 |
Uint64 deserialize 100000 - by byte | 72.438 ms/op | 72.216 ms/op | 1.00 |
by benchmarkbot/action
g11tech
approved these changes
Feb 28, 2023
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm
🤖 Release is at https://github.com/ChainSafe/ssz/releases/tag/ssz-v0.10.2 🌻 |
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.10.2
0.10.2 (2023-02-28)
Bug Fixes
This PR was generated with Release Please. See documentation.