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

Closed
wants to merge 1 commit into from
Closed

Conversation

matthewkeil
Copy link
Member

🤖 I have created a release beep boop

as-sha256: 0.5.0

0.5.0 (2025-01-15)

Features

  • non simd sha256 for incompatible systems (#427) (9729005)

Bug Fixes

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

0.8.0 (2025-01-15)

Features

ssz: 0.19.0

0.19.0 (2025-01-15)

Features

  • non simd sha256 for incompatible systems (#427) (9729005)

This PR was generated with Release Please. See documentation.

@matthewkeil matthewkeil requested a review from a team as a code owner January 15, 2025 07:40
@matthewkeil matthewkeil deleted the release-please--branches--master branch January 15, 2025 07:57
Copy link

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: 61f28a1 Previous: 9729005 Ratio
digestTwoHashObjects 50023 times 48.074 ms/op 48.723 ms/op 0.99
digest2Bytes32 50023 times 54.679 ms/op 55.394 ms/op 0.99
digest 50023 times 55.055 ms/op 56.560 ms/op 0.97
input length 32 1.1980 us/op 1.2260 us/op 0.98
input length 64 1.3480 us/op 1.3510 us/op 1.00
input length 128 2.3290 us/op 2.2710 us/op 1.03
input length 256 3.4600 us/op 3.3900 us/op 1.02
input length 512 5.6330 us/op 5.6380 us/op 1.00
input length 1024 10.972 us/op 11.023 us/op 1.00
digest 1000000 times 876.92 ms/op 862.38 ms/op 1.02
hashObjectToByteArray 50023 times 1.2288 ms/op 1.2407 ms/op 0.99
byteArrayToHashObject 50023 times 1.8147 ms/op 1.7831 ms/op 1.02
digest64 200092 times 214.42 ms/op 216.88 ms/op 0.99
hash 200092 times using batchHash4UintArray64s 237.80 ms/op 239.05 ms/op 0.99
digest64HashObjects 200092 times 193.06 ms/op 194.75 ms/op 0.99
hash 200092 times using batchHash4HashObjectInputs 200.14 ms/op 204.61 ms/op 0.98
getGindicesAtDepth 4.2370 us/op 4.2100 us/op 1.01
iterateAtDepth 7.5600 us/op 7.6110 us/op 0.99
getGindexBits 456.00 ns/op 433.00 ns/op 1.05
gindexIterator 1.0480 us/op 1.0200 us/op 1.03
HashComputationLevel.push then loop 25.944 ms/op 27.644 ms/op 0.94
HashComputation[] push then loop 37.552 ms/op 48.288 ms/op 0.78
hash 2 Uint8Array 500000 times - hashtree 211.66 ms/op 216.16 ms/op 0.98
hashTwoObjects 500000 times - hashtree 213.54 ms/op 213.96 ms/op 1.00
executeHashComputations - hashtree 9.6762 ms/op 9.4486 ms/op 1.02
hash 2 Uint8Array 500000 times - as-sha256 550.76 ms/op 566.64 ms/op 0.97
hashTwoObjects 500000 times - as-sha256 506.45 ms/op 508.63 ms/op 1.00
executeHashComputations - as-sha256 48.807 ms/op 46.578 ms/op 1.05
hash 2 Uint8Array 500000 times - noble 1.1900 s/op 1.2332 s/op 0.96
hashTwoObjects 500000 times - noble 1.5944 s/op 1.6503 s/op 0.97
executeHashComputations - noble 41.322 ms/op 36.437 ms/op 1.13
getHashComputations 2.7638 ms/op 2.1577 ms/op 1.28
executeHashComputations 11.234 ms/op 9.3634 ms/op 1.20
get root 20.764 ms/op 15.278 ms/op 1.36
getNodeH() x7812.5 avg hindex 12.018 us/op 12.451 us/op 0.97
getNodeH() x7812.5 index 0 7.4540 us/op 7.5590 us/op 0.99
getNodeH() x7812.5 index 7 7.4640 us/op 7.6090 us/op 0.98
getNodeH() x7812.5 index 7 with key array 6.2880 us/op 6.4250 us/op 0.98
new LeafNode() x7812.5 288.47 us/op 313.76 us/op 0.92
getHashComputations 250000 nodes 17.290 ms/op 14.571 ms/op 1.19
batchHash 250000 nodes 83.281 ms/op 94.878 ms/op 0.88
get root 250000 nodes 125.80 ms/op 115.60 ms/op 1.09
getHashComputations 500000 nodes 27.815 ms/op 28.957 ms/op 0.96
batchHash 500000 nodes 149.99 ms/op 170.01 ms/op 0.88
get root 500000 nodes 254.51 ms/op 241.38 ms/op 1.05
getHashComputations 1000000 nodes 55.477 ms/op 60.808 ms/op 0.91
batchHash 1000000 nodes 356.18 ms/op 335.20 ms/op 1.06
get root 1000000 nodes 491.08 ms/op 461.65 ms/op 1.06
multiproof - depth 15, 1 requested leaves 7.8080 us/op 9.6620 us/op 0.81
tree offset multiproof - depth 15, 1 requested leaves 17.027 us/op 21.144 us/op 0.81
compact multiproof - depth 15, 1 requested leaves 2.9310 us/op 3.8480 us/op 0.76
multiproof - depth 15, 2 requested leaves 11.235 us/op 13.805 us/op 0.81
tree offset multiproof - depth 15, 2 requested leaves 20.423 us/op 24.103 us/op 0.85
compact multiproof - depth 15, 2 requested leaves 2.9150 us/op 3.3080 us/op 0.88
multiproof - depth 15, 3 requested leaves 15.653 us/op 18.412 us/op 0.85
tree offset multiproof - depth 15, 3 requested leaves 26.753 us/op 31.255 us/op 0.86
compact multiproof - depth 15, 3 requested leaves 3.5650 us/op 5.5770 us/op 0.64
multiproof - depth 15, 4 requested leaves 20.799 us/op 26.241 us/op 0.79
tree offset multiproof - depth 15, 4 requested leaves 32.789 us/op 39.953 us/op 0.82
compact multiproof - depth 15, 4 requested leaves 4.1230 us/op 6.8160 us/op 0.60
packedRootsBytesToLeafNodes bytes 4000 offset 0 5.5220 us/op 7.4460 us/op 0.74
packedRootsBytesToLeafNodes bytes 4000 offset 1 5.5050 us/op 6.7430 us/op 0.82
packedRootsBytesToLeafNodes bytes 4000 offset 2 5.5580 us/op 7.1000 us/op 0.78
packedRootsBytesToLeafNodes bytes 4000 offset 3 5.5420 us/op 7.4620 us/op 0.74
subtreeFillToContents depth 40 count 250000 48.232 ms/op 53.556 ms/op 0.90
setRoot - gindexBitstring 20.462 ms/op 22.368 ms/op 0.91
setRoot - gindex 21.335 ms/op 23.427 ms/op 0.91
getRoot - gindexBitstring 2.4940 ms/op 2.7928 ms/op 0.89
getRoot - gindex 3.1818 ms/op 3.7569 ms/op 0.85
getHashObject then setHashObject 22.869 ms/op 25.188 ms/op 0.91
setNodeWithFn 19.295 ms/op 21.170 ms/op 0.91
getNodeAtDepth depth 0 x100000 282.70 us/op 280.05 us/op 1.01
setNodeAtDepth depth 0 x100000 2.4695 ms/op 2.7835 ms/op 0.89
getNodesAtDepth depth 0 x100000 313.59 us/op 315.40 us/op 0.99
setNodesAtDepth depth 0 x100000 758.41 us/op 803.12 us/op 0.94
getNodeAtDepth depth 1 x100000 342.31 us/op 342.31 us/op 1.00
setNodeAtDepth depth 1 x100000 7.9998 ms/op 11.392 ms/op 0.70
getNodesAtDepth depth 1 x100000 437.56 us/op 436.81 us/op 1.00
setNodesAtDepth depth 1 x100000 7.5215 ms/op 8.5412 ms/op 0.88
getNodeAtDepth depth 2 x100000 993.86 us/op 748.19 us/op 1.33
setNodeAtDepth depth 2 x100000 15.321 ms/op 21.655 ms/op 0.71
getNodesAtDepth depth 2 x100000 18.327 ms/op 21.755 ms/op 0.84
setNodesAtDepth depth 2 x100000 22.595 ms/op 29.813 ms/op 0.76
tree.getNodesAtDepth - gindexes 8.0565 ms/op 9.4571 ms/op 0.85
tree.getNodesAtDepth - push all nodes 2.3041 ms/op 3.6860 ms/op 0.63
tree.getNodesAtDepth - navigation 315.70 us/op 311.66 us/op 1.01
tree.setNodesAtDepth - indexes 745.99 us/op 870.84 us/op 0.86
set at depth 8 754.00 ns/op 990.00 ns/op 0.76
set at depth 16 1.1100 us/op 1.4980 us/op 0.74
set at depth 32 1.8990 us/op 2.6160 us/op 0.73
iterateNodesAtDepth 8 256 13.640 us/op 16.140 us/op 0.85
getNodesAtDepth 8 256 3.6060 us/op 4.0760 us/op 0.88
iterateNodesAtDepth 16 65536 4.2315 ms/op 4.6957 ms/op 0.90
getNodesAtDepth 16 65536 1.8922 ms/op 1.9329 ms/op 0.98
iterateNodesAtDepth 32 250000 16.387 ms/op 17.065 ms/op 0.96
getNodesAtDepth 32 250000 4.9031 ms/op 5.5690 ms/op 0.88
iterateNodesAtDepth 40 250000 15.438 ms/op 17.518 ms/op 0.88
getNodesAtDepth 40 250000 4.7831 ms/op 6.3452 ms/op 0.75
250000 validators root getter 133.41 ms/op 116.82 ms/op 1.14
250000 validators batchHash() 91.359 ms/op 146.04 ms/op 0.63
250000 validators hashComputations 12.884 ms/op 17.985 ms/op 0.72
bitlist bytes to struct (120,90) 782.00 ns/op 1.4790 us/op 0.53
bitlist bytes to tree (120,90) 2.9690 us/op 5.0730 us/op 0.59
bitlist bytes to struct (2048,2048) 1.1720 us/op 1.8910 us/op 0.62
bitlist bytes to tree (2048,2048) 4.7960 us/op 7.9650 us/op 0.60
ByteListType - deserialize 8.1170 ms/op 12.550 ms/op 0.65
BasicListType - deserialize 14.448 ms/op 18.072 ms/op 0.80
ByteListType - serialize 7.7051 ms/op 12.530 ms/op 0.61
BasicListType - serialize 10.072 ms/op 16.236 ms/op 0.62
BasicListType - tree_convertToStruct 26.408 ms/op 57.248 ms/op 0.46
List[uint8, 68719476736] len 300000 ViewDU.getAll() + iterate 4.6903 ms/op 5.5862 ms/op 0.84
List[uint8, 68719476736] len 300000 ViewDU.get(i) 4.2245 ms/op 4.3393 ms/op 0.97
Array.push len 300000 empty Array - number 6.7745 ms/op 7.2888 ms/op 0.93
Array.set len 300000 from new Array - number 1.7281 ms/op 2.2772 ms/op 0.76
Array.set len 300000 - number 5.4954 ms/op 7.2350 ms/op 0.76
Uint8Array.set len 300000 478.95 us/op 507.46 us/op 0.94
Uint32Array.set len 300000 539.34 us/op 633.01 us/op 0.85
Container({a: uint8, b: uint8}) getViewDU x300000 25.519 ms/op 30.436 ms/op 0.84
ContainerNodeStruct({a: uint8, b: uint8}) getViewDU x300000 10.606 ms/op 11.494 ms/op 0.92
List(Container) len 300000 ViewDU.getAllReadonly() + iterate 204.97 ms/op 217.11 ms/op 0.94
List(Container) len 300000 ViewDU.getAllReadonlyValues() + iterate 231.09 ms/op 265.71 ms/op 0.87
List(Container) len 300000 ViewDU.get(i) 6.3159 ms/op 7.1066 ms/op 0.89
List(Container) len 300000 ViewDU.getReadonly(i) 6.2288 ms/op 8.9971 ms/op 0.69
List(ContainerNodeStruct) len 300000 ViewDU.getAllReadonly() + iterate 38.652 ms/op 38.920 ms/op 0.99
List(ContainerNodeStruct) len 300000 ViewDU.getAllReadonlyValues() + iterate 5.4100 ms/op 6.0683 ms/op 0.89
List(ContainerNodeStruct) len 300000 ViewDU.get(i) 5.9730 ms/op 6.5574 ms/op 0.91
List(ContainerNodeStruct) len 300000 ViewDU.getReadonly(i) 5.8304 ms/op 7.1471 ms/op 0.82
Array.push len 300000 empty Array - object 6.7575 ms/op 7.0016 ms/op 0.97
Array.set len 300000 from new Array - object 2.2879 ms/op 2.1312 ms/op 1.07
Array.set len 300000 - object 6.6052 ms/op 6.8305 ms/op 0.97
cachePermanentRootStruct no cache 18.937 us/op 22.908 us/op 0.83
cachePermanentRootStruct with cache 209.00 ns/op 272.00 ns/op 0.77
epochParticipation len 250000 rws 7813 2.1986 ms/op 2.5209 ms/op 0.87
BeaconState ViewDU hashTreeRoot() vc=200000 508.66 ms/op 607.13 ms/op 0.84
BeaconState ViewDU recursive hash - commit step vc=200000 4.9068 ms/op 4.9146 ms/op 1.00
BeaconState ViewDU validator tree creation vc=10000 38.452 ms/op 40.470 ms/op 0.95
BeaconState ViewDU batchHashTreeRoot vc=200000 380.54 ms/op 452.39 ms/op 0.84
BeaconState ViewDU hashTreeRoot - commit step vc=200000 325.80 ms/op 385.07 ms/op 0.85
BeaconState ViewDU hashTreeRoot - hash step vc=200000 70.972 ms/op 75.611 ms/op 0.94
deserialize Attestation - tree 3.6870 us/op 4.4960 us/op 0.82
deserialize Attestation - struct 1.8490 us/op 2.3260 us/op 0.79
deserialize SignedAggregateAndProof - tree 4.8590 us/op 6.2550 us/op 0.78
deserialize SignedAggregateAndProof - struct 3.0460 us/op 4.1660 us/op 0.73
deserialize SyncCommitteeMessage - tree 1.4500 us/op 1.5990 us/op 0.91
deserialize SyncCommitteeMessage - struct 1.0880 us/op 1.4270 us/op 0.76
deserialize SignedContributionAndProof - tree 2.9570 us/op 3.4450 us/op 0.86
deserialize SignedContributionAndProof - struct 2.3330 us/op 3.0600 us/op 0.76
deserialize SignedBeaconBlock - tree 282.45 us/op 360.53 us/op 0.78
deserialize SignedBeaconBlock - struct 120.76 us/op 154.04 us/op 0.78
BeaconState vc 300000 - deserialize tree 628.62 ms/op 673.94 ms/op 0.93
BeaconState vc 300000 - serialize tree 142.39 ms/op 138.13 ms/op 1.03
BeaconState.historicalRoots vc 300000 - deserialize tree 831.00 ns/op 891.00 ns/op 0.93
BeaconState.historicalRoots vc 300000 - serialize tree 641.00 ns/op 751.00 ns/op 0.85
BeaconState.validators vc 300000 - deserialize tree 588.31 ms/op 626.86 ms/op 0.94
BeaconState.validators vc 300000 - serialize tree 125.31 ms/op 116.44 ms/op 1.08
BeaconState.balances vc 300000 - deserialize tree 28.631 ms/op 28.058 ms/op 1.02
BeaconState.balances vc 300000 - serialize tree 3.3797 ms/op 5.1586 ms/op 0.66
BeaconState.previousEpochParticipation vc 300000 - deserialize tree 855.87 us/op 1.2471 ms/op 0.69
BeaconState.previousEpochParticipation vc 300000 - serialize tree 330.36 us/op 348.21 us/op 0.95
BeaconState.currentEpochParticipation vc 300000 - deserialize tree 876.20 us/op 1.2675 ms/op 0.69
BeaconState.currentEpochParticipation vc 300000 - serialize tree 331.56 us/op 343.11 us/op 0.97
BeaconState.inactivityScores vc 300000 - deserialize tree 25.953 ms/op 29.254 ms/op 0.89
BeaconState.inactivityScores vc 300000 - serialize tree 4.1723 ms/op 7.9771 ms/op 0.52
hashTreeRoot Attestation - struct 70.051 us/op 104.67 us/op 0.67
hashTreeRoot Attestation - tree 70.467 us/op 102.55 us/op 0.69
hashTreeRoot SignedAggregateAndProof - struct 103.06 us/op 129.70 us/op 0.79
hashTreeRoot SignedAggregateAndProof - tree 101.41 us/op 128.79 us/op 0.79
hashTreeRoot SyncCommitteeMessage - struct 20.765 us/op 28.707 us/op 0.72
hashTreeRoot SyncCommitteeMessage - tree 21.768 us/op 29.674 us/op 0.73
hashTreeRoot SignedContributionAndProof - struct 63.245 us/op 71.347 us/op 0.89
hashTreeRoot SignedContributionAndProof - tree 70.172 us/op 72.691 us/op 0.97
hashTreeRoot SignedBeaconBlock - struct 5.5324 ms/op 5.9763 ms/op 0.93
hashTreeRoot SignedBeaconBlock - tree 5.7331 ms/op 6.5414 ms/op 0.88
hashTreeRoot Validator - struct 26.780 us/op 28.452 us/op 0.94
hashTreeRoot Validator - tree 30.274 us/op 33.009 us/op 0.92
BeaconState vc 300000 - hashTreeRoot tree 10.754 s/op 12.242 s/op 0.88
BeaconState vc 300000 - batchHashTreeRoot tree 6.4600 s/op 6.6136 s/op 0.98
BeaconState.historicalRoots vc 300000 - hashTreeRoot tree 4.4780 us/op 5.0680 us/op 0.88
BeaconState.validators vc 300000 - hashTreeRoot tree 10.622 s/op 11.852 s/op 0.90
BeaconState.balances vc 300000 - hashTreeRoot tree 274.94 ms/op 327.10 ms/op 0.84
BeaconState.previousEpochParticipation vc 300000 - hashTreeRoot tree 33.958 ms/op 39.560 ms/op 0.86
BeaconState.currentEpochParticipation vc 300000 - hashTreeRoot tree 33.449 ms/op 37.782 ms/op 0.89
BeaconState.inactivityScores vc 300000 - hashTreeRoot tree 279.64 ms/op 320.59 ms/op 0.87
hash64 x18 47.809 us/op 47.150 us/op 1.01
hashTwoObjects x18 60.383 us/op 67.919 us/op 0.89
hash64 x1740 4.4268 ms/op 5.2261 ms/op 0.85
hashTwoObjects x1740 5.9272 ms/op 6.8619 ms/op 0.86
hash64 x2700000 6.9860 s/op 7.4652 s/op 0.94
hashTwoObjects x2700000 9.2969 s/op 10.620 s/op 0.88
get_exitEpoch - ContainerType 313.00 ns/op 302.00 ns/op 1.04
get_exitEpoch - ContainerNodeStructType 276.00 ns/op 268.00 ns/op 1.03
set_exitEpoch - ContainerType 292.00 ns/op 287.00 ns/op 1.02
set_exitEpoch - ContainerNodeStructType 284.00 ns/op 276.00 ns/op 1.03
get_pubkey - ContainerType 1.0280 us/op 1.0040 us/op 1.02
get_pubkey - ContainerNodeStructType 270.00 ns/op 260.00 ns/op 1.04
hashTreeRoot - ContainerType 483.00 ns/op 472.00 ns/op 1.02
hashTreeRoot - ContainerNodeStructType 471.00 ns/op 459.00 ns/op 1.03
createProof - ContainerType 4.4860 us/op 4.2970 us/op 1.04
createProof - ContainerNodeStructType 22.043 us/op 21.579 us/op 1.02
serialize - ContainerType 1.5740 us/op 1.5720 us/op 1.00
serialize - ContainerNodeStructType 1.3430 us/op 1.3410 us/op 1.00
set_exitEpoch_and_hashTreeRoot - ContainerType 11.930 us/op 11.978 us/op 1.00
set_exitEpoch_and_hashTreeRoot - ContainerNodeStructType 30.865 us/op 30.528 us/op 1.01
Array - for of 7.7830 us/op 5.6250 us/op 1.38
Array - for(;;) 7.7560 us/op 5.5830 us/op 1.39
basicListValue.readonlyValuesArray() 3.8739 ms/op 3.8673 ms/op 1.00
basicListValue.readonlyValuesArray() + loop all 3.9846 ms/op 4.2037 ms/op 0.95
compositeListValue.readonlyValuesArray() 27.440 ms/op 37.810 ms/op 0.73
compositeListValue.readonlyValuesArray() + loop all 33.089 ms/op 37.015 ms/op 0.89
Number64UintType - get balances list 4.2664 ms/op 4.2271 ms/op 1.01
Number64UintType - set balances list 9.8367 ms/op 9.8431 ms/op 1.00
Number64UintType - get and increase 10 then set 36.030 ms/op 39.999 ms/op 0.90
Number64UintType - increase 10 using applyDelta 13.983 ms/op 14.608 ms/op 0.96
Number64UintType - increase 10 using applyDeltaInBatch 14.034 ms/op 14.305 ms/op 0.98
tree_newTreeFromUint64Deltas 19.665 ms/op 25.776 ms/op 0.76
unsafeUint8ArrayToTree 36.715 ms/op 47.853 ms/op 0.77
bitLength(50) 231.00 ns/op 219.00 ns/op 1.05
bitLengthStr(50) 220.00 ns/op 215.00 ns/op 1.02
bitLength(8000) 223.00 ns/op 211.00 ns/op 1.06
bitLengthStr(8000) 266.00 ns/op 268.00 ns/op 0.99
bitLength(250000) 218.00 ns/op 235.00 ns/op 0.93
bitLengthStr(250000) 291.00 ns/op 299.00 ns/op 0.97
floor - Math.floor (53) 1.2430 ns/op 1.2457 ns/op 1.00
floor - << 0 (53) 1.2472 ns/op 1.2429 ns/op 1.00
floor - Math.floor (512) 1.2453 ns/op 1.2434 ns/op 1.00
floor - << 0 (512) 1.2429 ns/op 1.2447 ns/op 1.00
fnIf(0) 1.5544 ns/op 1.5761 ns/op 0.99
fnSwitch(0) 2.1792 ns/op 2.1782 ns/op 1.00
fnObj(0) 1.5980 ns/op 1.5579 ns/op 1.03
fnArr(0) 1.5689 ns/op 1.5560 ns/op 1.01
fnIf(4) 2.1785 ns/op 2.1771 ns/op 1.00
fnSwitch(4) 2.1823 ns/op 2.1989 ns/op 0.99
fnObj(4) 1.5673 ns/op 1.5690 ns/op 1.00
fnArr(4) 1.5568 ns/op 1.5552 ns/op 1.00
fnIf(9) 3.1094 ns/op 3.1073 ns/op 1.00
fnSwitch(9) 2.1837 ns/op 2.2121 ns/op 0.99
fnObj(9) 1.5590 ns/op 1.5765 ns/op 0.99
fnArr(9) 1.5584 ns/op 1.5541 ns/op 1.00
Container {a,b,vec} - as struct x100000 125.83 us/op 124.55 us/op 1.01
Container {a,b,vec} - as tree x100000 529.39 us/op 528.92 us/op 1.00
Container {a,vec,b} - as struct x100000 155.69 us/op 156.44 us/op 1.00
Container {a,vec,b} - as tree x100000 497.67 us/op 505.99 us/op 0.98
get 2 props x1000000 - rawObject 321.15 us/op 316.13 us/op 1.02
get 2 props x1000000 - proxy 73.999 ms/op 73.091 ms/op 1.01
get 2 props x1000000 - customObj 310.93 us/op 313.76 us/op 0.99
Simple object binary -> struct 553.00 ns/op 759.00 ns/op 0.73
Simple object binary -> tree_backed 1.5380 us/op 1.9970 us/op 0.77
Simple object struct -> tree_backed 2.0370 us/op 2.4020 us/op 0.85
Simple object tree_backed -> struct 1.3960 us/op 1.9420 us/op 0.72
Simple object struct -> binary 816.00 ns/op 1.0490 us/op 0.78
Simple object tree_backed -> binary 1.1880 us/op 1.6550 us/op 0.72
aggregationBits binary -> struct 447.00 ns/op 560.00 ns/op 0.80
aggregationBits binary -> tree_backed 1.9420 us/op 2.2930 us/op 0.85
aggregationBits struct -> tree_backed 2.3110 us/op 2.6710 us/op 0.87
aggregationBits tree_backed -> struct 885.00 ns/op 1.0470 us/op 0.85
aggregationBits struct -> binary 648.00 ns/op 741.00 ns/op 0.87
aggregationBits tree_backed -> binary 784.00 ns/op 914.00 ns/op 0.86
List(uint8) 100000 binary -> struct 1.5194 ms/op 1.3779 ms/op 1.10
List(uint8) 100000 binary -> tree_backed 257.51 us/op 256.83 us/op 1.00
List(uint8) 100000 struct -> tree_backed 1.3611 ms/op 1.3839 ms/op 0.98
List(uint8) 100000 tree_backed -> struct 1.1554 ms/op 1.0863 ms/op 1.06
List(uint8) 100000 struct -> binary 1.1154 ms/op 1.1218 ms/op 0.99
List(uint8) 100000 tree_backed -> binary 106.69 us/op 105.70 us/op 1.01
List(uint64Number) 100000 binary -> struct 1.2509 ms/op 1.3448 ms/op 0.93
List(uint64Number) 100000 binary -> tree_backed 3.9853 ms/op 5.8729 ms/op 0.68
List(uint64Number) 100000 struct -> tree_backed 6.0733 ms/op 7.2042 ms/op 0.84
List(uint64Number) 100000 tree_backed -> struct 2.4299 ms/op 2.2653 ms/op 1.07
List(uint64Number) 100000 struct -> binary 1.5626 ms/op 1.4722 ms/op 1.06
List(uint64Number) 100000 tree_backed -> binary 1.0257 ms/op 932.94 us/op 1.10
List(Uint64Bigint) 100000 binary -> struct 3.6382 ms/op 3.4927 ms/op 1.04
List(Uint64Bigint) 100000 binary -> tree_backed 4.3147 ms/op 5.8235 ms/op 0.74
List(Uint64Bigint) 100000 struct -> tree_backed 7.0914 ms/op 7.7612 ms/op 0.91
List(Uint64Bigint) 100000 tree_backed -> struct 4.7939 ms/op 4.6106 ms/op 1.04
List(Uint64Bigint) 100000 struct -> binary 2.0852 ms/op 2.0197 ms/op 1.03
List(Uint64Bigint) 100000 tree_backed -> binary 1.0478 ms/op 1.0360 ms/op 1.01
Vector(Root) 100000 binary -> struct 33.096 ms/op 41.299 ms/op 0.80
Vector(Root) 100000 binary -> tree_backed 32.131 ms/op 47.512 ms/op 0.68
Vector(Root) 100000 struct -> tree_backed 47.163 ms/op 51.427 ms/op 0.92
Vector(Root) 100000 tree_backed -> struct 47.333 ms/op 53.558 ms/op 0.88
Vector(Root) 100000 struct -> binary 3.6465 ms/op 2.6961 ms/op 1.35
Vector(Root) 100000 tree_backed -> binary 6.0454 ms/op 7.2609 ms/op 0.83
List(Validator) 100000 binary -> struct 98.957 ms/op 136.12 ms/op 0.73
List(Validator) 100000 binary -> tree_backed 313.40 ms/op 425.62 ms/op 0.74
List(Validator) 100000 struct -> tree_backed 342.84 ms/op 450.92 ms/op 0.76
List(Validator) 100000 tree_backed -> struct 188.74 ms/op 211.98 ms/op 0.89
List(Validator) 100000 struct -> binary 29.212 ms/op 30.363 ms/op 0.96
List(Validator) 100000 tree_backed -> binary 94.442 ms/op 100.07 ms/op 0.94
List(Validator-NS) 100000 binary -> struct 101.55 ms/op 147.59 ms/op 0.69
List(Validator-NS) 100000 binary -> tree_backed 148.87 ms/op 200.66 ms/op 0.74
List(Validator-NS) 100000 struct -> tree_backed 201.41 ms/op 234.93 ms/op 0.86
List(Validator-NS) 100000 tree_backed -> struct 167.48 ms/op 182.55 ms/op 0.92
List(Validator-NS) 100000 struct -> binary 29.203 ms/op 29.408 ms/op 0.99
List(Validator-NS) 100000 tree_backed -> binary 34.128 ms/op 34.470 ms/op 0.99
get epochStatuses - MutableVector 119.68 us/op 90.560 us/op 1.32
get epochStatuses - ViewDU 176.47 us/op 176.41 us/op 1.00
set epochStatuses - ListTreeView 2.0899 ms/op 2.1192 ms/op 0.99
set epochStatuses - ListTreeView - set() 435.31 us/op 600.25 us/op 0.73
set epochStatuses - ListTreeView - commit() 762.67 us/op 737.69 us/op 1.03
bitstring 515.77 ns/op 516.25 ns/op 1.00
bit mask 13.732 ns/op 13.696 ns/op 1.00
struct - increase slot to 1000000 933.24 us/op 936.93 us/op 1.00
UintNumberType - increase slot to 1000000 26.791 ms/op 26.797 ms/op 1.00
UintBigintType - increase slot to 1000000 166.10 ms/op 170.00 ms/op 0.98
UintBigint8 x 100000 tree_deserialize 5.0413 ms/op 6.0449 ms/op 0.83
UintBigint8 x 100000 tree_serialize 617.30 us/op 621.58 us/op 0.99
UintBigint16 x 100000 tree_deserialize 5.0596 ms/op 6.1507 ms/op 0.82
UintBigint16 x 100000 tree_serialize 1.3882 ms/op 1.3845 ms/op 1.00
UintBigint32 x 100000 tree_deserialize 5.6072 ms/op 6.2660 ms/op 0.89
UintBigint32 x 100000 tree_serialize 1.7057 ms/op 1.7748 ms/op 0.96
UintBigint64 x 100000 tree_deserialize 6.4496 ms/op 7.2982 ms/op 0.88
UintBigint64 x 100000 tree_serialize 1.7321 ms/op 1.9973 ms/op 0.87
UintBigint8 x 100000 value_deserialize 436.98 us/op 435.89 us/op 1.00
UintBigint8 x 100000 value_serialize 795.46 us/op 793.84 us/op 1.00
UintBigint16 x 100000 value_deserialize 466.76 us/op 473.52 us/op 0.99
UintBigint16 x 100000 value_serialize 837.59 us/op 990.50 us/op 0.85
UintBigint32 x 100000 value_deserialize 498.80 us/op 499.28 us/op 1.00
UintBigint32 x 100000 value_serialize 881.34 us/op 1.0057 ms/op 0.88
UintBigint64 x 100000 value_deserialize 561.53 us/op 562.37 us/op 1.00
UintBigint64 x 100000 value_serialize 1.0744 ms/op 1.1979 ms/op 0.90
UintBigint8 x 100000 deserialize 3.1492 ms/op 3.7272 ms/op 0.84
UintBigint8 x 100000 serialize 1.5912 ms/op 1.6159 ms/op 0.98
UintBigint16 x 100000 deserialize 3.2289 ms/op 3.8259 ms/op 0.84
UintBigint16 x 100000 serialize 1.6071 ms/op 1.6560 ms/op 0.97
UintBigint32 x 100000 deserialize 3.4698 ms/op 3.6586 ms/op 0.95
UintBigint32 x 100000 serialize 2.7802 ms/op 2.8436 ms/op 0.98
UintBigint64 x 100000 deserialize 3.5730 ms/op 4.4573 ms/op 0.80
UintBigint64 x 100000 serialize 1.6120 ms/op 1.6010 ms/op 1.01
UintBigint128 x 100000 deserialize 4.9909 ms/op 5.1677 ms/op 0.97
UintBigint128 x 100000 serialize 14.800 ms/op 14.722 ms/op 1.01
UintBigint256 x 100000 deserialize 7.9901 ms/op 8.2073 ms/op 0.97
UintBigint256 x 100000 serialize 44.162 ms/op 43.597 ms/op 1.01
Slice from Uint8Array x25000 1.3089 ms/op 1.2243 ms/op 1.07
Slice from ArrayBuffer x25000 15.881 ms/op 15.745 ms/op 1.01
Slice from ArrayBuffer x25000 + new Uint8Array 16.289 ms/op 16.770 ms/op 0.97
Copy Uint8Array 100000 iterate 2.6445 ms/op 2.6402 ms/op 1.00
Copy Uint8Array 100000 slice 87.901 us/op 81.572 us/op 1.08
Copy Uint8Array 100000 Uint8Array.prototype.slice.call 88.035 us/op 81.066 us/op 1.09
Copy Buffer 100000 Uint8Array.prototype.slice.call 84.138 us/op 84.348 us/op 1.00
Copy Uint8Array 100000 slice + set 172.47 us/op 166.03 us/op 1.04
Copy Uint8Array 100000 subarray + set 85.017 us/op 80.875 us/op 1.05
Copy Uint8Array 100000 slice arrayBuffer 84.012 us/op 80.575 us/op 1.04
Uint64 deserialize 100000 - iterate Uint8Array 1.8625 ms/op 1.8646 ms/op 1.00
Uint64 deserialize 100000 - by Uint32A 1.8132 ms/op 1.9865 ms/op 0.91
Uint64 deserialize 100000 - by DataView.getUint32 x2 1.7436 ms/op 1.8521 ms/op 0.94
Uint64 deserialize 100000 - by DataView.getBigUint64 4.8701 ms/op 4.8557 ms/op 1.00
Uint64 deserialize 100000 - by byte 40.728 ms/op 40.845 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