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

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 09:41
@matthewkeil matthewkeil deleted the release-please--branches--master branch January 15, 2025 09:49
Copy link

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: bd8aab5 Previous: 9729005 Ratio
digestTwoHashObjects 50023 times 48.546 ms/op 48.723 ms/op 1.00
digest2Bytes32 50023 times 54.797 ms/op 55.394 ms/op 0.99
digest 50023 times 55.897 ms/op 56.560 ms/op 0.99
input length 32 1.2060 us/op 1.2260 us/op 0.98
input length 64 1.3560 us/op 1.3510 us/op 1.00
input length 128 2.3020 us/op 2.2710 us/op 1.01
input length 256 3.3800 us/op 3.3900 us/op 1.00
input length 512 5.6010 us/op 5.6380 us/op 0.99
input length 1024 10.885 us/op 11.023 us/op 0.99
digest 1000000 times 907.26 ms/op 862.38 ms/op 1.05
hashObjectToByteArray 50023 times 1.2288 ms/op 1.2407 ms/op 0.99
byteArrayToHashObject 50023 times 1.8154 ms/op 1.7831 ms/op 1.02
digest64 200092 times 227.98 ms/op 216.88 ms/op 1.05
hash 200092 times using batchHash4UintArray64s 246.30 ms/op 239.05 ms/op 1.03
digest64HashObjects 200092 times 197.92 ms/op 194.75 ms/op 1.02
hash 200092 times using batchHash4HashObjectInputs 213.60 ms/op 204.61 ms/op 1.04
getGindicesAtDepth 4.3120 us/op 4.2100 us/op 1.02
iterateAtDepth 7.7090 us/op 7.6110 us/op 1.01
getGindexBits 451.00 ns/op 433.00 ns/op 1.04
gindexIterator 1.0450 us/op 1.0200 us/op 1.02
HashComputationLevel.push then loop 27.804 ms/op 27.644 ms/op 1.01
HashComputation[] push then loop 50.776 ms/op 48.288 ms/op 1.05
hash 2 Uint8Array 500000 times - hashtree 222.27 ms/op 216.16 ms/op 1.03
hashTwoObjects 500000 times - hashtree 212.78 ms/op 213.96 ms/op 0.99
executeHashComputations - hashtree 9.3269 ms/op 9.4486 ms/op 0.99
hash 2 Uint8Array 500000 times - as-sha256 566.71 ms/op 566.64 ms/op 1.00
hashTwoObjects 500000 times - as-sha256 510.81 ms/op 508.63 ms/op 1.00
executeHashComputations - as-sha256 46.112 ms/op 46.578 ms/op 0.99
hash 2 Uint8Array 500000 times - noble 1.2535 s/op 1.2332 s/op 1.02
hashTwoObjects 500000 times - noble 1.7023 s/op 1.6503 s/op 1.03
executeHashComputations - noble 37.554 ms/op 36.437 ms/op 1.03
getHashComputations 2.7929 ms/op 2.1577 ms/op 1.29
executeHashComputations 9.9118 ms/op 9.3634 ms/op 1.06
get root 15.653 ms/op 15.278 ms/op 1.02
getNodeH() x7812.5 avg hindex 12.336 us/op 12.451 us/op 0.99
getNodeH() x7812.5 index 0 7.5390 us/op 7.5590 us/op 1.00
getNodeH() x7812.5 index 7 7.5380 us/op 7.6090 us/op 0.99
getNodeH() x7812.5 index 7 with key array 6.3070 us/op 6.4250 us/op 0.98
new LeafNode() x7812.5 297.48 us/op 313.76 us/op 0.95
getHashComputations 250000 nodes 14.851 ms/op 14.571 ms/op 1.02
batchHash 250000 nodes 90.285 ms/op 94.878 ms/op 0.95
get root 250000 nodes 116.32 ms/op 115.60 ms/op 1.01
getHashComputations 500000 nodes 37.112 ms/op 28.957 ms/op 1.28
batchHash 500000 nodes 179.37 ms/op 170.01 ms/op 1.06
get root 500000 nodes 233.65 ms/op 241.38 ms/op 0.97
getHashComputations 1000000 nodes 78.410 ms/op 60.808 ms/op 1.29
batchHash 1000000 nodes 373.28 ms/op 335.20 ms/op 1.11
get root 1000000 nodes 462.55 ms/op 461.65 ms/op 1.00
multiproof - depth 15, 1 requested leaves 8.4540 us/op 9.6620 us/op 0.87
tree offset multiproof - depth 15, 1 requested leaves 17.925 us/op 21.144 us/op 0.85
compact multiproof - depth 15, 1 requested leaves 3.2270 us/op 3.8480 us/op 0.84
multiproof - depth 15, 2 requested leaves 11.811 us/op 13.805 us/op 0.86
tree offset multiproof - depth 15, 2 requested leaves 21.822 us/op 24.103 us/op 0.91
compact multiproof - depth 15, 2 requested leaves 3.2310 us/op 3.3080 us/op 0.98
multiproof - depth 15, 3 requested leaves 16.382 us/op 18.412 us/op 0.89
tree offset multiproof - depth 15, 3 requested leaves 27.460 us/op 31.255 us/op 0.88
compact multiproof - depth 15, 3 requested leaves 3.9290 us/op 5.5770 us/op 0.70
multiproof - depth 15, 4 requested leaves 22.050 us/op 26.241 us/op 0.84
tree offset multiproof - depth 15, 4 requested leaves 34.487 us/op 39.953 us/op 0.86
compact multiproof - depth 15, 4 requested leaves 4.5420 us/op 6.8160 us/op 0.67
packedRootsBytesToLeafNodes bytes 4000 offset 0 6.3280 us/op 7.4460 us/op 0.85
packedRootsBytesToLeafNodes bytes 4000 offset 1 6.3320 us/op 6.7430 us/op 0.94
packedRootsBytesToLeafNodes bytes 4000 offset 2 6.3120 us/op 7.1000 us/op 0.89
packedRootsBytesToLeafNodes bytes 4000 offset 3 6.3730 us/op 7.4620 us/op 0.85
subtreeFillToContents depth 40 count 250000 49.955 ms/op 53.556 ms/op 0.93
setRoot - gindexBitstring 21.207 ms/op 22.368 ms/op 0.95
setRoot - gindex 21.739 ms/op 23.427 ms/op 0.93
getRoot - gindexBitstring 2.8872 ms/op 2.7928 ms/op 1.03
getRoot - gindex 3.4544 ms/op 3.7569 ms/op 0.92
getHashObject then setHashObject 22.117 ms/op 25.188 ms/op 0.88
setNodeWithFn 20.527 ms/op 21.170 ms/op 0.97
getNodeAtDepth depth 0 x100000 280.09 us/op 280.05 us/op 1.00
setNodeAtDepth depth 0 x100000 2.5164 ms/op 2.7835 ms/op 0.90
getNodesAtDepth depth 0 x100000 313.14 us/op 315.40 us/op 0.99
setNodesAtDepth depth 0 x100000 762.57 us/op 803.12 us/op 0.95
getNodeAtDepth depth 1 x100000 342.11 us/op 342.31 us/op 1.00
setNodeAtDepth depth 1 x100000 8.4605 ms/op 11.392 ms/op 0.74
getNodesAtDepth depth 1 x100000 435.63 us/op 436.81 us/op 1.00
setNodesAtDepth depth 1 x100000 7.5619 ms/op 8.5412 ms/op 0.89
getNodeAtDepth depth 2 x100000 763.28 us/op 748.19 us/op 1.02
setNodeAtDepth depth 2 x100000 16.135 ms/op 21.655 ms/op 0.75
getNodesAtDepth depth 2 x100000 18.870 ms/op 21.755 ms/op 0.87
setNodesAtDepth depth 2 x100000 22.695 ms/op 29.813 ms/op 0.76
tree.getNodesAtDepth - gindexes 9.3218 ms/op 9.4571 ms/op 0.99
tree.getNodesAtDepth - push all nodes 2.3066 ms/op 3.6860 ms/op 0.63
tree.getNodesAtDepth - navigation 312.50 us/op 311.66 us/op 1.00
tree.setNodesAtDepth - indexes 739.36 us/op 870.84 us/op 0.85
set at depth 8 769.00 ns/op 990.00 ns/op 0.78
set at depth 16 1.1780 us/op 1.4980 us/op 0.79
set at depth 32 1.9960 us/op 2.6160 us/op 0.76
iterateNodesAtDepth 8 256 14.278 us/op 16.140 us/op 0.88
getNodesAtDepth 8 256 3.8610 us/op 4.0760 us/op 0.95
iterateNodesAtDepth 16 65536 4.6454 ms/op 4.6957 ms/op 0.99
getNodesAtDepth 16 65536 2.0726 ms/op 1.9329 ms/op 1.07
iterateNodesAtDepth 32 250000 17.112 ms/op 17.065 ms/op 1.00
getNodesAtDepth 32 250000 5.1578 ms/op 5.5690 ms/op 0.93
iterateNodesAtDepth 40 250000 17.708 ms/op 17.518 ms/op 1.01
getNodesAtDepth 40 250000 4.9004 ms/op 6.3452 ms/op 0.77
250000 validators root getter 117.45 ms/op 116.82 ms/op 1.01
250000 validators batchHash() 105.84 ms/op 146.04 ms/op 0.72
250000 validators hashComputations 16.393 ms/op 17.985 ms/op 0.91
bitlist bytes to struct (120,90) 938.00 ns/op 1.4790 us/op 0.63
bitlist bytes to tree (120,90) 3.7450 us/op 5.0730 us/op 0.74
bitlist bytes to struct (2048,2048) 1.3260 us/op 1.8910 us/op 0.70
bitlist bytes to tree (2048,2048) 4.5510 us/op 7.9650 us/op 0.57
ByteListType - deserialize 9.4855 ms/op 12.550 ms/op 0.76
BasicListType - deserialize 17.109 ms/op 18.072 ms/op 0.95
ByteListType - serialize 8.3084 ms/op 12.530 ms/op 0.66
BasicListType - serialize 10.740 ms/op 16.236 ms/op 0.66
BasicListType - tree_convertToStruct 25.959 ms/op 57.248 ms/op 0.45
List[uint8, 68719476736] len 300000 ViewDU.getAll() + iterate 5.5003 ms/op 5.5862 ms/op 0.98
List[uint8, 68719476736] len 300000 ViewDU.get(i) 4.2514 ms/op 4.3393 ms/op 0.98
Array.push len 300000 empty Array - number 7.3428 ms/op 7.2888 ms/op 1.01
Array.set len 300000 from new Array - number 2.1223 ms/op 2.2772 ms/op 0.93
Array.set len 300000 - number 6.8803 ms/op 7.2350 ms/op 0.95
Uint8Array.set len 300000 509.83 us/op 507.46 us/op 1.00
Uint32Array.set len 300000 631.82 us/op 633.01 us/op 1.00
Container({a: uint8, b: uint8}) getViewDU x300000 28.401 ms/op 30.436 ms/op 0.93
ContainerNodeStruct({a: uint8, b: uint8}) getViewDU x300000 12.208 ms/op 11.494 ms/op 1.06
List(Container) len 300000 ViewDU.getAllReadonly() + iterate 211.70 ms/op 217.11 ms/op 0.98
List(Container) len 300000 ViewDU.getAllReadonlyValues() + iterate 218.47 ms/op 265.71 ms/op 0.82
List(Container) len 300000 ViewDU.get(i) 6.6352 ms/op 7.1066 ms/op 0.93
List(Container) len 300000 ViewDU.getReadonly(i) 6.4893 ms/op 8.9971 ms/op 0.72
List(ContainerNodeStruct) len 300000 ViewDU.getAllReadonly() + iterate 40.003 ms/op 38.920 ms/op 1.03
List(ContainerNodeStruct) len 300000 ViewDU.getAllReadonlyValues() + iterate 4.9940 ms/op 6.0683 ms/op 0.82
List(ContainerNodeStruct) len 300000 ViewDU.get(i) 6.0682 ms/op 6.5574 ms/op 0.93
List(ContainerNodeStruct) len 300000 ViewDU.getReadonly(i) 5.9602 ms/op 7.1471 ms/op 0.83
Array.push len 300000 empty Array - object 6.6656 ms/op 7.0016 ms/op 0.95
Array.set len 300000 from new Array - object 2.3057 ms/op 2.1312 ms/op 1.08
Array.set len 300000 - object 5.9970 ms/op 6.8305 ms/op 0.88
cachePermanentRootStruct no cache 18.508 us/op 22.908 us/op 0.81
cachePermanentRootStruct with cache 214.00 ns/op 272.00 ns/op 0.79
epochParticipation len 250000 rws 7813 2.3913 ms/op 2.5209 ms/op 0.95
BeaconState ViewDU hashTreeRoot() vc=200000 522.42 ms/op 607.13 ms/op 0.86
BeaconState ViewDU recursive hash - commit step vc=200000 5.2084 ms/op 4.9146 ms/op 1.06
BeaconState ViewDU validator tree creation vc=10000 41.681 ms/op 40.470 ms/op 1.03
BeaconState ViewDU batchHashTreeRoot vc=200000 445.79 ms/op 452.39 ms/op 0.99
BeaconState ViewDU hashTreeRoot - commit step vc=200000 372.40 ms/op 385.07 ms/op 0.97
BeaconState ViewDU hashTreeRoot - hash step vc=200000 72.823 ms/op 75.611 ms/op 0.96
deserialize Attestation - tree 4.0850 us/op 4.4960 us/op 0.91
deserialize Attestation - struct 2.3060 us/op 2.3260 us/op 0.99
deserialize SignedAggregateAndProof - tree 5.8320 us/op 6.2550 us/op 0.93
deserialize SignedAggregateAndProof - struct 3.3710 us/op 4.1660 us/op 0.81
deserialize SyncCommitteeMessage - tree 1.6300 us/op 1.5990 us/op 1.02
deserialize SyncCommitteeMessage - struct 1.2690 us/op 1.4270 us/op 0.89
deserialize SignedContributionAndProof - tree 2.9970 us/op 3.4450 us/op 0.87
deserialize SignedContributionAndProof - struct 2.8120 us/op 3.0600 us/op 0.92
deserialize SignedBeaconBlock - tree 330.49 us/op 360.53 us/op 0.92
deserialize SignedBeaconBlock - struct 163.53 us/op 154.04 us/op 1.06
BeaconState vc 300000 - deserialize tree 675.75 ms/op 673.94 ms/op 1.00
BeaconState vc 300000 - serialize tree 170.88 ms/op 138.13 ms/op 1.24
BeaconState.historicalRoots vc 300000 - deserialize tree 910.00 ns/op 891.00 ns/op 1.02
BeaconState.historicalRoots vc 300000 - serialize tree 682.00 ns/op 751.00 ns/op 0.91
BeaconState.validators vc 300000 - deserialize tree 618.35 ms/op 626.86 ms/op 0.99
BeaconState.validators vc 300000 - serialize tree 109.53 ms/op 116.44 ms/op 0.94
BeaconState.balances vc 300000 - deserialize tree 27.765 ms/op 28.058 ms/op 0.99
BeaconState.balances vc 300000 - serialize tree 4.6192 ms/op 5.1586 ms/op 0.90
BeaconState.previousEpochParticipation vc 300000 - deserialize tree 1.2149 ms/op 1.2471 ms/op 0.97
BeaconState.previousEpochParticipation vc 300000 - serialize tree 350.07 us/op 348.21 us/op 1.01
BeaconState.currentEpochParticipation vc 300000 - deserialize tree 1.2040 ms/op 1.2675 ms/op 0.95
BeaconState.currentEpochParticipation vc 300000 - serialize tree 348.89 us/op 343.11 us/op 1.02
BeaconState.inactivityScores vc 300000 - deserialize tree 27.730 ms/op 29.254 ms/op 0.95
BeaconState.inactivityScores vc 300000 - serialize tree 4.1666 ms/op 7.9771 ms/op 0.52
hashTreeRoot Attestation - struct 66.533 us/op 104.67 us/op 0.64
hashTreeRoot Attestation - tree 70.692 us/op 102.55 us/op 0.69
hashTreeRoot SignedAggregateAndProof - struct 98.002 us/op 129.70 us/op 0.76
hashTreeRoot SignedAggregateAndProof - tree 100.27 us/op 128.79 us/op 0.78
hashTreeRoot SyncCommitteeMessage - struct 21.540 us/op 28.707 us/op 0.75
hashTreeRoot SyncCommitteeMessage - tree 23.864 us/op 29.674 us/op 0.80
hashTreeRoot SignedContributionAndProof - struct 62.535 us/op 71.347 us/op 0.88
hashTreeRoot SignedContributionAndProof - tree 68.877 us/op 72.691 us/op 0.95
hashTreeRoot SignedBeaconBlock - struct 5.6485 ms/op 5.9763 ms/op 0.95
hashTreeRoot SignedBeaconBlock - tree 6.2373 ms/op 6.5414 ms/op 0.95
hashTreeRoot Validator - struct 26.670 us/op 28.452 us/op 0.94
hashTreeRoot Validator - tree 30.343 us/op 33.009 us/op 0.92
BeaconState vc 300000 - hashTreeRoot tree 11.401 s/op 12.242 s/op 0.93
BeaconState vc 300000 - batchHashTreeRoot tree 6.8922 s/op 6.6136 s/op 1.04
BeaconState.historicalRoots vc 300000 - hashTreeRoot tree 4.2590 us/op 5.0680 us/op 0.84
BeaconState.validators vc 300000 - hashTreeRoot tree 11.450 s/op 11.852 s/op 0.97
BeaconState.balances vc 300000 - hashTreeRoot tree 304.24 ms/op 327.10 ms/op 0.93
BeaconState.previousEpochParticipation vc 300000 - hashTreeRoot tree 39.699 ms/op 39.560 ms/op 1.00
BeaconState.currentEpochParticipation vc 300000 - hashTreeRoot tree 37.230 ms/op 37.782 ms/op 0.99
BeaconState.inactivityScores vc 300000 - hashTreeRoot tree 307.19 ms/op 320.59 ms/op 0.96
hash64 x18 50.196 us/op 47.150 us/op 1.06
hashTwoObjects x18 72.707 us/op 67.919 us/op 1.07
hash64 x1740 4.8244 ms/op 5.2261 ms/op 0.92
hashTwoObjects x1740 6.4719 ms/op 6.8619 ms/op 0.94
hash64 x2700000 7.7363 s/op 7.4652 s/op 1.04
hashTwoObjects x2700000 10.502 s/op 10.620 s/op 0.99
get_exitEpoch - ContainerType 305.00 ns/op 302.00 ns/op 1.01
get_exitEpoch - ContainerNodeStructType 272.00 ns/op 268.00 ns/op 1.01
set_exitEpoch - ContainerType 283.00 ns/op 287.00 ns/op 0.99
set_exitEpoch - ContainerNodeStructType 273.00 ns/op 276.00 ns/op 0.99
get_pubkey - ContainerType 1.0150 us/op 1.0040 us/op 1.01
get_pubkey - ContainerNodeStructType 295.00 ns/op 260.00 ns/op 1.13
hashTreeRoot - ContainerType 464.00 ns/op 472.00 ns/op 0.98
hashTreeRoot - ContainerNodeStructType 460.00 ns/op 459.00 ns/op 1.00
createProof - ContainerType 4.7670 us/op 4.2970 us/op 1.11
createProof - ContainerNodeStructType 21.969 us/op 21.579 us/op 1.02
serialize - ContainerType 1.5680 us/op 1.5720 us/op 1.00
serialize - ContainerNodeStructType 1.3640 us/op 1.3410 us/op 1.02
set_exitEpoch_and_hashTreeRoot - ContainerType 11.914 us/op 11.978 us/op 0.99
set_exitEpoch_and_hashTreeRoot - ContainerNodeStructType 31.021 us/op 30.528 us/op 1.02
Array - for of 11.381 us/op 5.6250 us/op 2.02
Array - for(;;) 11.393 us/op 5.5830 us/op 2.04
basicListValue.readonlyValuesArray() 3.8871 ms/op 3.8673 ms/op 1.01
basicListValue.readonlyValuesArray() + loop all 4.1421 ms/op 4.2037 ms/op 0.99
compositeListValue.readonlyValuesArray() 35.750 ms/op 37.810 ms/op 0.95
compositeListValue.readonlyValuesArray() + loop all 35.456 ms/op 37.015 ms/op 0.96
Number64UintType - get balances list 4.2293 ms/op 4.2271 ms/op 1.00
Number64UintType - set balances list 10.214 ms/op 9.8431 ms/op 1.04
Number64UintType - get and increase 10 then set 34.998 ms/op 39.999 ms/op 0.87
Number64UintType - increase 10 using applyDelta 14.390 ms/op 14.608 ms/op 0.99
Number64UintType - increase 10 using applyDeltaInBatch 14.401 ms/op 14.305 ms/op 1.01
tree_newTreeFromUint64Deltas 24.511 ms/op 25.776 ms/op 0.95
unsafeUint8ArrayToTree 38.059 ms/op 47.853 ms/op 0.80
bitLength(50) 226.00 ns/op 219.00 ns/op 1.03
bitLengthStr(50) 212.00 ns/op 215.00 ns/op 0.99
bitLength(8000) 222.00 ns/op 211.00 ns/op 1.05
bitLengthStr(8000) 254.00 ns/op 268.00 ns/op 0.95
bitLength(250000) 226.00 ns/op 235.00 ns/op 0.96
bitLengthStr(250000) 303.00 ns/op 299.00 ns/op 1.01
floor - Math.floor (53) 1.2447 ns/op 1.2457 ns/op 1.00
floor - << 0 (53) 1.2436 ns/op 1.2429 ns/op 1.00
floor - Math.floor (512) 1.2436 ns/op 1.2434 ns/op 1.00
floor - << 0 (512) 1.2442 ns/op 1.2447 ns/op 1.00
fnIf(0) 1.5547 ns/op 1.5761 ns/op 0.99
fnSwitch(0) 2.1791 ns/op 2.1782 ns/op 1.00
fnObj(0) 1.5573 ns/op 1.5579 ns/op 1.00
fnArr(0) 1.5610 ns/op 1.5560 ns/op 1.00
fnIf(4) 2.1756 ns/op 2.1771 ns/op 1.00
fnSwitch(4) 2.1766 ns/op 2.1989 ns/op 0.99
fnObj(4) 1.5597 ns/op 1.5690 ns/op 0.99
fnArr(4) 1.5646 ns/op 1.5552 ns/op 1.01
fnIf(9) 3.1092 ns/op 3.1073 ns/op 1.00
fnSwitch(9) 2.1769 ns/op 2.2121 ns/op 0.98
fnObj(9) 1.5578 ns/op 1.5765 ns/op 0.99
fnArr(9) 1.5754 ns/op 1.5541 ns/op 1.01
Container {a,b,vec} - as struct x100000 126.25 us/op 124.55 us/op 1.01
Container {a,b,vec} - as tree x100000 528.92 us/op 528.92 us/op 1.00
Container {a,vec,b} - as struct x100000 155.77 us/op 156.44 us/op 1.00
Container {a,vec,b} - as tree x100000 501.83 us/op 505.99 us/op 0.99
get 2 props x1000000 - rawObject 315.31 us/op 316.13 us/op 1.00
get 2 props x1000000 - proxy 74.073 ms/op 73.091 ms/op 1.01
get 2 props x1000000 - customObj 311.12 us/op 313.76 us/op 0.99
Simple object binary -> struct 651.00 ns/op 759.00 ns/op 0.86
Simple object binary -> tree_backed 1.8570 us/op 1.9970 us/op 0.93
Simple object struct -> tree_backed 2.4150 us/op 2.4020 us/op 1.01
Simple object tree_backed -> struct 1.6940 us/op 1.9420 us/op 0.87
Simple object struct -> binary 915.00 ns/op 1.0490 us/op 0.87
Simple object tree_backed -> binary 1.5000 us/op 1.6550 us/op 0.91
aggregationBits binary -> struct 572.00 ns/op 560.00 ns/op 1.02
aggregationBits binary -> tree_backed 2.3550 us/op 2.2930 us/op 1.03
aggregationBits struct -> tree_backed 2.7250 us/op 2.6710 us/op 1.02
aggregationBits tree_backed -> struct 1.0700 us/op 1.0470 us/op 1.02
aggregationBits struct -> binary 785.00 ns/op 741.00 ns/op 1.06
aggregationBits tree_backed -> binary 933.00 ns/op 914.00 ns/op 1.02
List(uint8) 100000 binary -> struct 1.3950 ms/op 1.3779 ms/op 1.01
List(uint8) 100000 binary -> tree_backed 268.06 us/op 256.83 us/op 1.04
List(uint8) 100000 struct -> tree_backed 1.4055 ms/op 1.3839 ms/op 1.02
List(uint8) 100000 tree_backed -> struct 1.1895 ms/op 1.0863 ms/op 1.10
List(uint8) 100000 struct -> binary 1.1145 ms/op 1.1218 ms/op 0.99
List(uint8) 100000 tree_backed -> binary 106.28 us/op 105.70 us/op 1.01
List(uint64Number) 100000 binary -> struct 1.2851 ms/op 1.3448 ms/op 0.96
List(uint64Number) 100000 binary -> tree_backed 5.9754 ms/op 5.8729 ms/op 1.02
List(uint64Number) 100000 struct -> tree_backed 7.3214 ms/op 7.2042 ms/op 1.02
List(uint64Number) 100000 tree_backed -> struct 2.3573 ms/op 2.2653 ms/op 1.04
List(uint64Number) 100000 struct -> binary 1.4881 ms/op 1.4722 ms/op 1.01
List(uint64Number) 100000 tree_backed -> binary 957.82 us/op 932.94 us/op 1.03
List(Uint64Bigint) 100000 binary -> struct 3.5103 ms/op 3.4927 ms/op 1.01
List(Uint64Bigint) 100000 binary -> tree_backed 5.8746 ms/op 5.8235 ms/op 1.01
List(Uint64Bigint) 100000 struct -> tree_backed 8.3590 ms/op 7.7612 ms/op 1.08
List(Uint64Bigint) 100000 tree_backed -> struct 5.2633 ms/op 4.6106 ms/op 1.14
List(Uint64Bigint) 100000 struct -> binary 2.0394 ms/op 2.0197 ms/op 1.01
List(Uint64Bigint) 100000 tree_backed -> binary 1.4046 ms/op 1.0360 ms/op 1.36
Vector(Root) 100000 binary -> struct 43.673 ms/op 41.299 ms/op 1.06
Vector(Root) 100000 binary -> tree_backed 48.596 ms/op 47.512 ms/op 1.02
Vector(Root) 100000 struct -> tree_backed 52.109 ms/op 51.427 ms/op 1.01
Vector(Root) 100000 tree_backed -> struct 54.790 ms/op 53.558 ms/op 1.02
Vector(Root) 100000 struct -> binary 2.7305 ms/op 2.6961 ms/op 1.01
Vector(Root) 100000 tree_backed -> binary 7.0546 ms/op 7.2609 ms/op 0.97
List(Validator) 100000 binary -> struct 143.22 ms/op 136.12 ms/op 1.05
List(Validator) 100000 binary -> tree_backed 421.76 ms/op 425.62 ms/op 0.99
List(Validator) 100000 struct -> tree_backed 454.53 ms/op 450.92 ms/op 1.01
List(Validator) 100000 tree_backed -> struct 222.69 ms/op 211.98 ms/op 1.05
List(Validator) 100000 struct -> binary 29.390 ms/op 30.363 ms/op 0.97
List(Validator) 100000 tree_backed -> binary 103.86 ms/op 100.07 ms/op 1.04
List(Validator-NS) 100000 binary -> struct 147.57 ms/op 147.59 ms/op 1.00
List(Validator-NS) 100000 binary -> tree_backed 204.93 ms/op 200.66 ms/op 1.02
List(Validator-NS) 100000 struct -> tree_backed 237.92 ms/op 234.93 ms/op 1.01
List(Validator-NS) 100000 tree_backed -> struct 185.62 ms/op 182.55 ms/op 1.02
List(Validator-NS) 100000 struct -> binary 29.205 ms/op 29.408 ms/op 0.99
List(Validator-NS) 100000 tree_backed -> binary 36.587 ms/op 34.470 ms/op 1.06
get epochStatuses - MutableVector 104.23 us/op 90.560 us/op 1.15
get epochStatuses - ViewDU 176.69 us/op 176.41 us/op 1.00
set epochStatuses - ListTreeView 2.3955 ms/op 2.1192 ms/op 1.13
set epochStatuses - ListTreeView - set() 440.91 us/op 600.25 us/op 0.73
set epochStatuses - ListTreeView - commit() 732.22 us/op 737.69 us/op 0.99
bitstring 512.57 ns/op 516.25 ns/op 0.99
bit mask 13.579 ns/op 13.696 ns/op 0.99
struct - increase slot to 1000000 933.32 us/op 936.93 us/op 1.00
UintNumberType - increase slot to 1000000 26.771 ms/op 26.797 ms/op 1.00
UintBigintType - increase slot to 1000000 173.88 ms/op 170.00 ms/op 1.02
UintBigint8 x 100000 tree_deserialize 5.5430 ms/op 6.0449 ms/op 0.92
UintBigint8 x 100000 tree_serialize 616.25 us/op 621.58 us/op 0.99
UintBigint16 x 100000 tree_deserialize 5.0632 ms/op 6.1507 ms/op 0.82
UintBigint16 x 100000 tree_serialize 1.3056 ms/op 1.3845 ms/op 0.94
UintBigint32 x 100000 tree_deserialize 5.2754 ms/op 6.2660 ms/op 0.84
UintBigint32 x 100000 tree_serialize 1.6287 ms/op 1.7748 ms/op 0.92
UintBigint64 x 100000 tree_deserialize 6.0719 ms/op 7.2982 ms/op 0.83
UintBigint64 x 100000 tree_serialize 1.6544 ms/op 1.9973 ms/op 0.83
UintBigint8 x 100000 value_deserialize 435.30 us/op 435.89 us/op 1.00
UintBigint8 x 100000 value_serialize 708.73 us/op 793.84 us/op 0.89
UintBigint16 x 100000 value_deserialize 466.65 us/op 473.52 us/op 0.99
UintBigint16 x 100000 value_serialize 752.12 us/op 990.50 us/op 0.76
UintBigint32 x 100000 value_deserialize 498.65 us/op 499.28 us/op 1.00
UintBigint32 x 100000 value_serialize 799.24 us/op 1.0057 ms/op 0.79
UintBigint64 x 100000 value_deserialize 561.70 us/op 562.37 us/op 1.00
UintBigint64 x 100000 value_serialize 1.1409 ms/op 1.1979 ms/op 0.95
UintBigint8 x 100000 deserialize 3.5487 ms/op 3.7272 ms/op 0.95
UintBigint8 x 100000 serialize 1.4766 ms/op 1.6159 ms/op 0.91
UintBigint16 x 100000 deserialize 3.4968 ms/op 3.8259 ms/op 0.91
UintBigint16 x 100000 serialize 1.6230 ms/op 1.6560 ms/op 0.98
UintBigint32 x 100000 deserialize 3.1737 ms/op 3.6586 ms/op 0.87
UintBigint32 x 100000 serialize 2.8688 ms/op 2.8436 ms/op 1.01
UintBigint64 x 100000 deserialize 4.6068 ms/op 4.4573 ms/op 1.03
UintBigint64 x 100000 serialize 1.6142 ms/op 1.6010 ms/op 1.01
UintBigint128 x 100000 deserialize 5.3974 ms/op 5.1677 ms/op 1.04
UintBigint128 x 100000 serialize 14.762 ms/op 14.722 ms/op 1.00
UintBigint256 x 100000 deserialize 9.0048 ms/op 8.2073 ms/op 1.10
UintBigint256 x 100000 serialize 43.323 ms/op 43.597 ms/op 0.99
Slice from Uint8Array x25000 1.2602 ms/op 1.2243 ms/op 1.03
Slice from ArrayBuffer x25000 16.583 ms/op 15.745 ms/op 1.05
Slice from ArrayBuffer x25000 + new Uint8Array 17.339 ms/op 16.770 ms/op 1.03
Copy Uint8Array 100000 iterate 2.6764 ms/op 2.6402 ms/op 1.01
Copy Uint8Array 100000 slice 82.293 us/op 81.572 us/op 1.01
Copy Uint8Array 100000 Uint8Array.prototype.slice.call 81.698 us/op 81.066 us/op 1.01
Copy Buffer 100000 Uint8Array.prototype.slice.call 84.624 us/op 84.348 us/op 1.00
Copy Uint8Array 100000 slice + set 170.91 us/op 166.03 us/op 1.03
Copy Uint8Array 100000 subarray + set 83.984 us/op 80.875 us/op 1.04
Copy Uint8Array 100000 slice arrayBuffer 84.265 us/op 80.575 us/op 1.05
Uint64 deserialize 100000 - iterate Uint8Array 1.8778 ms/op 1.8646 ms/op 1.01
Uint64 deserialize 100000 - by Uint32A 1.8070 ms/op 1.9865 ms/op 0.91
Uint64 deserialize 100000 - by DataView.getUint32 x2 1.7689 ms/op 1.8521 ms/op 0.96
Uint64 deserialize 100000 - by DataView.getBigUint64 4.7808 ms/op 4.8557 ms/op 0.98
Uint64 deserialize 100000 - by byte 40.563 ms/op 40.845 ms/op 0.99

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