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: add publish support for JSR #467

Open
wants to merge 13 commits into
base: master
Choose a base branch
from
Open

Conversation

nazarhussain
Copy link
Contributor

@nazarhussain nazarhussain commented Mar 3, 2025

Motivation

Support modern Typescript package registry.

Description

  • Add support for JS registry
  • Update code to support Typescript direct import
  • Update release workflow
  • Update all workflows to skip build step

Steps to test or reproduce

Run all tests

Copy link

github-actions bot commented Mar 3, 2025

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: faf1fbe Previous: 089daed Ratio
digestTwoHashObjects 50023 times 48.444 ms/op 48.350 ms/op 1.00
digest2Bytes32 50023 times 54.594 ms/op 55.248 ms/op 0.99
digest 50023 times 53.047 ms/op 53.804 ms/op 0.99
input length 32 1.1750 us/op 1.2030 us/op 0.98
input length 64 1.3410 us/op 1.3190 us/op 1.02
input length 128 2.2700 us/op 2.2560 us/op 1.01
input length 256 3.3250 us/op 3.4580 us/op 0.96
input length 512 5.5520 us/op 5.5370 us/op 1.00
input length 1024 10.751 us/op 10.624 us/op 1.01
digest 1000000 times 851.71 ms/op 855.80 ms/op 1.00
hashObjectToByteArray 50023 times 1.2633 ms/op 1.2288 ms/op 1.03
byteArrayToHashObject 50023 times 1.6203 ms/op 1.6959 ms/op 0.96
digest64 200092 times 211.18 ms/op 214.43 ms/op 0.98
hash 200092 times using batchHash4UintArray64s 232.82 ms/op 237.83 ms/op 0.98
digest64HashObjects 200092 times 192.91 ms/op 193.96 ms/op 0.99
hash 200092 times using batchHash4HashObjectInputs 195.59 ms/op 200.26 ms/op 0.98
getGindicesAtDepth 3.4590 us/op 3.5040 us/op 0.99
iterateAtDepth 6.5990 us/op 6.6550 us/op 0.99
getGindexBits 387.00 ns/op 390.00 ns/op 0.99
gindexIterator 888.00 ns/op 867.00 ns/op 1.02
HashComputationLevel.push then loop 30.504 ms/op 27.633 ms/op 1.10
HashComputation[] push then loop 49.055 ms/op 51.581 ms/op 0.95
hash 2 Uint8Array 500000 times - hashtree 221.53 ms/op 221.38 ms/op 1.00
hashTwoObjects 500000 times - hashtree 201.09 ms/op 214.67 ms/op 0.94
executeHashComputations - hashtree 8.8355 ms/op 10.224 ms/op 0.86
hash 2 Uint8Array 500000 times - as-sha256 562.42 ms/op 564.44 ms/op 1.00
hashTwoObjects 500000 times - as-sha256 483.06 ms/op 508.10 ms/op 0.95
executeHashComputations - as-sha256 44.141 ms/op 49.681 ms/op 0.89
hash 2 Uint8Array 500000 times - noble 1.2732 s/op 1.2783 s/op 1.00
hashTwoObjects 500000 times - noble 1.6788 s/op 1.7951 s/op 0.94
executeHashComputations - noble 35.332 ms/op 36.921 ms/op 0.96
getHashComputations 2.4653 ms/op 2.4606 ms/op 1.00
executeHashComputations 8.1491 ms/op 12.179 ms/op 0.67
get root 14.137 ms/op 15.551 ms/op 0.91
getNodeH() x7812.5 avg hindex 12.388 us/op 12.213 us/op 1.01
getNodeH() x7812.5 index 0 7.5560 us/op 7.6500 us/op 0.99
getNodeH() x7812.5 index 7 7.4580 us/op 7.4900 us/op 1.00
getNodeH() x7812.5 index 7 with key array 6.4080 us/op 6.4290 us/op 1.00
new LeafNode() x7812.5 317.04 us/op 307.31 us/op 1.03
getHashComputations 250000 nodes 16.391 ms/op 14.982 ms/op 1.09
batchHash 250000 nodes 72.474 ms/op 87.008 ms/op 0.83
get root 250000 nodes 105.11 ms/op 119.91 ms/op 0.88
getHashComputations 500000 nodes 29.004 ms/op 28.527 ms/op 1.02
batchHash 500000 nodes 144.36 ms/op 159.26 ms/op 0.91
get root 500000 nodes 218.02 ms/op 237.70 ms/op 0.92
getHashComputations 1000000 nodes 82.085 ms/op 79.780 ms/op 1.03
batchHash 1000000 nodes 321.39 ms/op 357.80 ms/op 0.90
get root 1000000 nodes 422.15 ms/op 465.57 ms/op 0.91
multiproof - depth 15, 1 requested leaves 7.8810 us/op 7.8250 us/op 1.01
tree offset multiproof - depth 15, 1 requested leaves 17.585 us/op 17.647 us/op 1.00
compact multiproof - depth 15, 1 requested leaves 2.6010 us/op 2.9650 us/op 0.88
multiproof - depth 15, 2 requested leaves 11.811 us/op 11.635 us/op 1.02
tree offset multiproof - depth 15, 2 requested leaves 21.132 us/op 21.027 us/op 1.00
compact multiproof - depth 15, 2 requested leaves 2.6780 us/op 3.0480 us/op 0.88
multiproof - depth 15, 3 requested leaves 16.427 us/op 16.346 us/op 1.00
tree offset multiproof - depth 15, 3 requested leaves 26.669 us/op 27.046 us/op 0.99
compact multiproof - depth 15, 3 requested leaves 3.3110 us/op 3.7380 us/op 0.89
multiproof - depth 15, 4 requested leaves 21.282 us/op 21.927 us/op 0.97
tree offset multiproof - depth 15, 4 requested leaves 33.895 us/op 34.661 us/op 0.98
compact multiproof - depth 15, 4 requested leaves 3.9010 us/op 4.5710 us/op 0.85
packedRootsBytesToLeafNodes bytes 4000 offset 0 5.8290 us/op 5.7620 us/op 1.01
packedRootsBytesToLeafNodes bytes 4000 offset 1 5.7820 us/op 5.9510 us/op 0.97
packedRootsBytesToLeafNodes bytes 4000 offset 2 5.9350 us/op 6.2470 us/op 0.95
packedRootsBytesToLeafNodes bytes 4000 offset 3 5.8860 us/op 6.5230 us/op 0.90
subtreeFillToContents depth 40 count 250000 49.879 ms/op 51.450 ms/op 0.97
setRoot - gindexBitstring 20.881 ms/op 27.926 ms/op 0.75
setRoot - gindex 21.181 ms/op 27.176 ms/op 0.78
getRoot - gindexBitstring 2.3381 ms/op 2.8500 ms/op 0.82
getRoot - gindex 3.0084 ms/op 3.3816 ms/op 0.89
getHashObject then setHashObject 22.748 ms/op 24.123 ms/op 0.94
setNodeWithFn 20.188 ms/op 21.779 ms/op 0.93
getNodeAtDepth depth 0 x100000 280.00 us/op 280.07 us/op 1.00
setNodeAtDepth depth 0 x100000 2.5265 ms/op 2.6229 ms/op 0.96
getNodesAtDepth depth 0 x100000 373.62 us/op 312.08 us/op 1.20
setNodesAtDepth depth 0 x100000 759.07 us/op 767.40 us/op 0.99
getNodeAtDepth depth 1 x100000 342.23 us/op 343.08 us/op 1.00
setNodeAtDepth depth 1 x100000 8.4053 ms/op 9.7988 ms/op 0.86
getNodesAtDepth depth 1 x100000 498.65 us/op 436.13 us/op 1.14
setNodesAtDepth depth 1 x100000 6.9950 ms/op 7.5708 ms/op 0.92
getNodeAtDepth depth 2 x100000 746.90 us/op 742.14 us/op 1.01
setNodeAtDepth depth 2 x100000 16.023 ms/op 18.950 ms/op 0.85
getNodesAtDepth depth 2 x100000 19.844 ms/op 19.552 ms/op 1.01
setNodesAtDepth depth 2 x100000 23.893 ms/op 24.999 ms/op 0.96
tree.getNodesAtDepth - gindexes 8.4586 ms/op 9.8121 ms/op 0.86
tree.getNodesAtDepth - push all nodes 2.2817 ms/op 1.9273 ms/op 1.18
tree.getNodesAtDepth - navigation 311.50 us/op 311.56 us/op 1.00
tree.setNodesAtDepth - indexes 719.98 us/op 711.07 us/op 1.01
set at depth 8 829.00 ns/op 795.00 ns/op 1.04
set at depth 16 1.1750 us/op 1.2040 us/op 0.98
set at depth 32 2.0310 us/op 2.1040 us/op 0.97
iterateNodesAtDepth 8 256 15.117 us/op 14.214 us/op 1.06
getNodesAtDepth 8 256 4.2770 us/op 3.7510 us/op 1.14
iterateNodesAtDepth 16 65536 4.7272 ms/op 4.4323 ms/op 1.07
getNodesAtDepth 16 65536 2.1038 ms/op 1.6374 ms/op 1.28
iterateNodesAtDepth 32 250000 17.554 ms/op 16.168 ms/op 1.09
getNodesAtDepth 32 250000 5.7202 ms/op 4.5882 ms/op 1.25
iterateNodesAtDepth 40 250000 17.889 ms/op 15.618 ms/op 1.15
getNodesAtDepth 40 250000 5.7203 ms/op 4.4420 ms/op 1.29
250000 validators root getter 107.29 ms/op 116.60 ms/op 0.92
250000 validators batchHash() 89.861 ms/op 90.307 ms/op 1.00
250000 validators hashComputations 15.299 ms/op 14.267 ms/op 1.07
bitlist bytes to struct (120,90) 829.00 ns/op 1.0320 us/op 0.80
bitlist bytes to tree (120,90) 2.7460 us/op 3.8140 us/op 0.72
bitlist bytes to struct (2048,2048) 1.0750 us/op 1.1700 us/op 0.92
bitlist bytes to tree (2048,2048) 4.3140 us/op 4.5660 us/op 0.94
ByteListType - deserialize 8.5229 ms/op 8.3780 ms/op 1.02
BasicListType - deserialize 15.476 ms/op 18.521 ms/op 0.84
ByteListType - serialize 8.1225 ms/op 8.2961 ms/op 0.98
BasicListType - serialize 10.282 ms/op 11.094 ms/op 0.93
BasicListType - tree_convertToStruct 27.257 ms/op 30.512 ms/op 0.89
List[uint8, 68719476736] len 300000 ViewDU.getAll() + iterate 4.8366 ms/op 5.1116 ms/op 0.95
List[uint8, 68719476736] len 300000 ViewDU.get(i) 4.4292 ms/op 4.3844 ms/op 1.01
Array.push len 300000 empty Array - number 6.8610 ms/op 7.2562 ms/op 0.95
Array.set len 300000 from new Array - number 2.0372 ms/op 2.2219 ms/op 0.92
Array.set len 300000 - number 6.5431 ms/op 6.8323 ms/op 0.96
Uint8Array.set len 300000 494.13 us/op 512.42 us/op 0.96
Uint32Array.set len 300000 573.57 us/op 553.43 us/op 1.04
Container({a: uint8, b: uint8}) getViewDU x300000 25.437 ms/op 44.307 ms/op 0.57
ContainerNodeStruct({a: uint8, b: uint8}) getViewDU x300000 10.912 ms/op 12.499 ms/op 0.87
List(Container) len 300000 ViewDU.getAllReadonly() + iterate 223.37 ms/op 198.52 ms/op 1.13
List(Container) len 300000 ViewDU.getAllReadonlyValues() + iterate 267.11 ms/op 244.38 ms/op 1.09
List(Container) len 300000 ViewDU.get(i) 6.9790 ms/op 6.4275 ms/op 1.09
List(Container) len 300000 ViewDU.getReadonly(i) 7.1758 ms/op 6.5868 ms/op 1.09
List(ContainerNodeStruct) len 300000 ViewDU.getAllReadonly() + iterate 38.805 ms/op 37.865 ms/op 1.02
List(ContainerNodeStruct) len 300000 ViewDU.getAllReadonlyValues() + iterate 5.6370 ms/op 5.0735 ms/op 1.11
List(ContainerNodeStruct) len 300000 ViewDU.get(i) 6.5293 ms/op 6.2390 ms/op 1.05
List(ContainerNodeStruct) len 300000 ViewDU.getReadonly(i) 6.4986 ms/op 6.2559 ms/op 1.04
Array.push len 300000 empty Array - object 7.0275 ms/op 6.4447 ms/op 1.09
Array.set len 300000 from new Array - object 2.1097 ms/op 2.0458 ms/op 1.03
Array.set len 300000 - object 6.8786 ms/op 6.7783 ms/op 1.01
cachePermanentRootStruct no cache 5.6630 us/op 5.7670 us/op 0.98
cachePermanentRootStruct with cache 244.00 ns/op 211.00 ns/op 1.16
epochParticipation len 250000 rws 7813 3.2162 ms/op 2.2967 ms/op 1.40
BeaconState ViewDU hashTreeRoot() vc=200000 107.41 ms/op 111.76 ms/op 0.96
BeaconState ViewDU recursive hash - commit step vc=200000 5.0270 ms/op 4.5206 ms/op 1.11
BeaconState ViewDU validator tree creation vc=10000 41.116 ms/op 38.036 ms/op 1.08
BeaconState ViewDU batchHashTreeRoot vc=200000 97.943 ms/op 102.55 ms/op 0.96
BeaconState ViewDU hashTreeRoot - commit step vc=200000 87.208 ms/op 88.798 ms/op 0.98
BeaconState ViewDU hashTreeRoot - hash step vc=200000 14.665 ms/op 17.716 ms/op 0.83
deserialize Attestation - tree 3.7000 us/op 3.7050 us/op 1.00
deserialize Attestation - struct 2.0550 us/op 1.9470 us/op 1.06
deserialize SignedAggregateAndProof - tree 5.1120 us/op 4.9660 us/op 1.03
deserialize SignedAggregateAndProof - struct 3.2030 us/op 3.1100 us/op 1.03
deserialize SyncCommitteeMessage - tree 1.5210 us/op 1.4330 us/op 1.06
deserialize SyncCommitteeMessage - struct 1.0450 us/op 1.1130 us/op 0.94
deserialize SignedContributionAndProof - tree 3.0870 us/op 2.9250 us/op 1.06
deserialize SignedContributionAndProof - struct 2.5680 us/op 2.3670 us/op 1.08
deserialize SignedBeaconBlock - tree 292.42 us/op 273.24 us/op 1.07
deserialize SignedBeaconBlock - struct 130.53 us/op 119.44 us/op 1.09
BeaconState vc 300000 - deserialize tree 622.90 ms/op 662.96 ms/op 0.94
BeaconState vc 300000 - serialize tree 164.40 ms/op 163.96 ms/op 1.00
BeaconState.historicalRoots vc 300000 - deserialize tree 877.00 ns/op 926.00 ns/op 0.95
BeaconState.historicalRoots vc 300000 - serialize tree 718.00 ns/op 674.00 ns/op 1.07
BeaconState.validators vc 300000 - deserialize tree 608.14 ms/op 611.21 ms/op 0.99
BeaconState.validators vc 300000 - serialize tree 133.32 ms/op 109.11 ms/op 1.22
BeaconState.balances vc 300000 - deserialize tree 28.278 ms/op 27.243 ms/op 1.04
BeaconState.balances vc 300000 - serialize tree 4.8271 ms/op 3.9178 ms/op 1.23
BeaconState.previousEpochParticipation vc 300000 - deserialize tree 1.1166 ms/op 909.53 us/op 1.23
BeaconState.previousEpochParticipation vc 300000 - serialize tree 349.89 us/op 337.72 us/op 1.04
BeaconState.currentEpochParticipation vc 300000 - deserialize tree 1.1768 ms/op 910.20 us/op 1.29
BeaconState.currentEpochParticipation vc 300000 - serialize tree 349.18 us/op 342.43 us/op 1.02
BeaconState.inactivityScores vc 300000 - deserialize tree 28.490 ms/op 26.116 ms/op 1.09
BeaconState.inactivityScores vc 300000 - serialize tree 4.6003 ms/op 4.2558 ms/op 1.08
hashTreeRoot Attestation - struct 19.251 us/op 18.002 us/op 1.07
hashTreeRoot Attestation - tree 8.2000 us/op 9.0700 us/op 0.90
hashTreeRoot SignedAggregateAndProof - struct 23.603 us/op 27.115 us/op 0.87
hashTreeRoot SignedAggregateAndProof - tree 12.516 us/op 13.542 us/op 0.92
hashTreeRoot SyncCommitteeMessage - struct 6.0840 us/op 6.9330 us/op 0.88
hashTreeRoot SyncCommitteeMessage - tree 3.1380 us/op 3.9680 us/op 0.79
hashTreeRoot SignedContributionAndProof - struct 16.465 us/op 16.259 us/op 1.01
hashTreeRoot SignedContributionAndProof - tree 8.6310 us/op 9.1960 us/op 0.94
hashTreeRoot SignedBeaconBlock - struct 1.3401 ms/op 1.4076 ms/op 0.95
hashTreeRoot SignedBeaconBlock - tree 745.58 us/op 800.00 us/op 0.93
hashTreeRoot Validator - struct 8.3980 us/op 8.0410 us/op 1.04
hashTreeRoot Validator - tree 6.9800 us/op 6.8640 us/op 1.02
BeaconState vc 300000 - hashTreeRoot tree 2.2036 s/op 2.3003 s/op 0.96
BeaconState vc 300000 - batchHashTreeRoot tree 4.3312 s/op 4.1698 s/op 1.04
BeaconState.historicalRoots vc 300000 - hashTreeRoot tree 1.1140 us/op 998.00 ns/op 1.12
BeaconState.validators vc 300000 - hashTreeRoot tree 2.4402 s/op 2.4694 s/op 0.99
BeaconState.balances vc 300000 - hashTreeRoot tree 35.353 ms/op 34.638 ms/op 1.02
BeaconState.previousEpochParticipation vc 300000 - hashTreeRoot tree 4.3747 ms/op 4.2524 ms/op 1.03
BeaconState.currentEpochParticipation vc 300000 - hashTreeRoot tree 4.3761 ms/op 4.2329 ms/op 1.03
BeaconState.inactivityScores vc 300000 - hashTreeRoot tree 35.273 ms/op 34.725 ms/op 1.02
hash64 x18 9.5330 us/op 9.6140 us/op 0.99
hashTwoObjects x18 7.9390 us/op 8.0670 us/op 0.98
hash64 x1740 843.15 us/op 798.95 us/op 1.06
hashTwoObjects x1740 745.55 us/op 748.46 us/op 1.00
hash64 x2700000 1.3281 s/op 1.2288 s/op 1.08
hashTwoObjects x2700000 1.1631 s/op 1.1581 s/op 1.00
get_exitEpoch - ContainerType 280.00 ns/op 244.00 ns/op 1.15
get_exitEpoch - ContainerNodeStructType 263.00 ns/op 275.00 ns/op 0.96
set_exitEpoch - ContainerType 308.00 ns/op 276.00 ns/op 1.12
set_exitEpoch - ContainerNodeStructType 281.00 ns/op 262.00 ns/op 1.07
get_pubkey - ContainerType 1.1380 us/op 1.0490 us/op 1.08
get_pubkey - ContainerNodeStructType 278.00 ns/op 244.00 ns/op 1.14
hashTreeRoot - ContainerType 460.00 ns/op 378.00 ns/op 1.22
hashTreeRoot - ContainerNodeStructType 419.00 ns/op 349.00 ns/op 1.20
createProof - ContainerType 4.2610 us/op 3.6640 us/op 1.16
createProof - ContainerNodeStructType 23.768 us/op 20.192 us/op 1.18
serialize - ContainerType 1.9680 us/op 1.6440 us/op 1.20
serialize - ContainerNodeStructType 1.6130 us/op 1.3800 us/op 1.17
set_exitEpoch_and_hashTreeRoot - ContainerType 3.1190 us/op 2.5930 us/op 1.20
set_exitEpoch_and_hashTreeRoot - ContainerNodeStructType 7.7890 us/op 7.3570 us/op 1.06
Array - for of 8.9240 us/op 5.6860 us/op 1.57
Array - for(;;) 9.1050 us/op 5.5880 us/op 1.63
basicListValue.readonlyValuesArray() 4.3977 ms/op 4.2120 ms/op 1.04
basicListValue.readonlyValuesArray() + loop all 4.6258 ms/op 4.3320 ms/op 1.07
compositeListValue.readonlyValuesArray() 32.090 ms/op 27.013 ms/op 1.19
compositeListValue.readonlyValuesArray() + loop all 32.116 ms/op 31.819 ms/op 1.01
Number64UintType - get balances list 4.7645 ms/op 4.3351 ms/op 1.10
Number64UintType - set balances list 10.116 ms/op 9.9302 ms/op 1.02
Number64UintType - get and increase 10 then set 54.171 ms/op 44.843 ms/op 1.21
Number64UintType - increase 10 using applyDelta 17.582 ms/op 16.475 ms/op 1.07
Number64UintType - increase 10 using applyDeltaInBatch 17.435 ms/op 16.751 ms/op 1.04
tree_newTreeFromUint64Deltas 22.869 ms/op 22.391 ms/op 1.02
unsafeUint8ArrayToTree 37.648 ms/op 38.551 ms/op 0.98
bitLength(50) 251.00 ns/op 250.00 ns/op 1.00
bitLengthStr(50) 237.00 ns/op 231.00 ns/op 1.03
bitLength(8000) 235.00 ns/op 223.00 ns/op 1.05
bitLengthStr(8000) 277.00 ns/op 258.00 ns/op 1.07
bitLength(250000) 239.00 ns/op 235.00 ns/op 1.02
bitLengthStr(250000) 322.00 ns/op 293.00 ns/op 1.10
floor - Math.floor (53) 1.2435 ns/op 1.2476 ns/op 1.00
floor - << 0 (53) 1.2455 ns/op 1.2435 ns/op 1.00
floor - Math.floor (512) 1.2436 ns/op 1.2442 ns/op 1.00
floor - << 0 (512) 1.2438 ns/op 1.2451 ns/op 1.00
fnIf(0) 1.5575 ns/op 1.5543 ns/op 1.00
fnSwitch(0) 2.1744 ns/op 2.1771 ns/op 1.00
fnObj(0) 1.5566 ns/op 1.5612 ns/op 1.00
fnArr(0) 1.5547 ns/op 1.5542 ns/op 1.00
fnIf(4) 2.1759 ns/op 2.1744 ns/op 1.00
fnSwitch(4) 2.2024 ns/op 2.1900 ns/op 1.01
fnObj(4) 1.5580 ns/op 1.5607 ns/op 1.00
fnArr(4) 1.5564 ns/op 1.5567 ns/op 1.00
fnIf(9) 3.1103 ns/op 3.1105 ns/op 1.00
fnSwitch(9) 2.1760 ns/op 2.1769 ns/op 1.00
fnObj(9) 1.5604 ns/op 1.5777 ns/op 0.99
fnArr(9) 1.5580 ns/op 1.5544 ns/op 1.00
Container {a,b,vec} - as struct x100000 126.82 us/op 124.57 us/op 1.02
Container {a,b,vec} - as tree x100000 566.53 us/op 559.89 us/op 1.01
Container {a,vec,b} - as struct x100000 156.41 us/op 156.41 us/op 1.00
Container {a,vec,b} - as tree x100000 560.00 us/op 560.39 us/op 1.00
get 2 props x1000000 - rawObject 311.45 us/op 311.32 us/op 1.00
get 2 props x1000000 - proxy 73.087 ms/op 74.039 ms/op 0.99
get 2 props x1000000 - customObj 313.02 us/op 311.95 us/op 1.00
Simple object binary -> struct 613.00 ns/op 947.00 ns/op 0.65
Simple object binary -> tree_backed 1.7470 us/op 2.4820 us/op 0.70
Simple object struct -> tree_backed 2.3410 us/op 2.8430 us/op 0.82
Simple object tree_backed -> struct 1.6360 us/op 2.4990 us/op 0.65
Simple object struct -> binary 978.00 ns/op 1.2110 us/op 0.81
Simple object tree_backed -> binary 1.4510 us/op 1.7360 us/op 0.84
aggregationBits binary -> struct 511.00 ns/op 678.00 ns/op 0.75
aggregationBits binary -> tree_backed 2.1690 us/op 2.7350 us/op 0.79
aggregationBits struct -> tree_backed 2.6460 us/op 3.1540 us/op 0.84
aggregationBits tree_backed -> struct 1.0520 us/op 1.2780 us/op 0.82
aggregationBits struct -> binary 799.00 ns/op 835.00 ns/op 0.96
aggregationBits tree_backed -> binary 943.00 ns/op 1.1010 us/op 0.86
List(uint8) 100000 binary -> struct 1.7320 ms/op 1.7192 ms/op 1.01
List(uint8) 100000 binary -> tree_backed 297.84 us/op 275.31 us/op 1.08
List(uint8) 100000 struct -> tree_backed 1.4626 ms/op 1.3975 ms/op 1.05
List(uint8) 100000 tree_backed -> struct 1.1587 ms/op 1.1459 ms/op 1.01
List(uint8) 100000 struct -> binary 1.1303 ms/op 1.1435 ms/op 0.99
List(uint8) 100000 tree_backed -> binary 116.73 us/op 111.57 us/op 1.05
List(uint64Number) 100000 binary -> struct 1.4128 ms/op 1.3440 ms/op 1.05
List(uint64Number) 100000 binary -> tree_backed 4.6868 ms/op 4.4901 ms/op 1.04
List(uint64Number) 100000 struct -> tree_backed 6.7498 ms/op 6.5066 ms/op 1.04
List(uint64Number) 100000 tree_backed -> struct 2.5831 ms/op 2.6367 ms/op 0.98
List(uint64Number) 100000 struct -> binary 1.7381 ms/op 1.6063 ms/op 1.08
List(uint64Number) 100000 tree_backed -> binary 1.0384 ms/op 1.2282 ms/op 0.85
List(Uint64Bigint) 100000 binary -> struct 4.4246 ms/op 4.4331 ms/op 1.00
List(Uint64Bigint) 100000 binary -> tree_backed 4.4830 ms/op 4.8654 ms/op 0.92
List(Uint64Bigint) 100000 struct -> tree_backed 6.9107 ms/op 7.9153 ms/op 0.87
List(Uint64Bigint) 100000 tree_backed -> struct 5.5219 ms/op 5.1174 ms/op 1.08
List(Uint64Bigint) 100000 struct -> binary 2.1262 ms/op 2.0749 ms/op 1.02
List(Uint64Bigint) 100000 tree_backed -> binary 1.3893 ms/op 1.4173 ms/op 0.98
Vector(Root) 100000 binary -> struct 41.762 ms/op 39.591 ms/op 1.05
Vector(Root) 100000 binary -> tree_backed 37.118 ms/op 43.458 ms/op 0.85
Vector(Root) 100000 struct -> tree_backed 53.611 ms/op 54.542 ms/op 0.98
Vector(Root) 100000 tree_backed -> struct 55.463 ms/op 52.560 ms/op 1.06
Vector(Root) 100000 struct -> binary 2.9066 ms/op 2.7957 ms/op 1.04
Vector(Root) 100000 tree_backed -> binary 7.3076 ms/op 6.2213 ms/op 1.17
List(Validator) 100000 binary -> struct 103.94 ms/op 107.68 ms/op 0.97
List(Validator) 100000 binary -> tree_backed 375.55 ms/op 376.74 ms/op 1.00
List(Validator) 100000 struct -> tree_backed 399.05 ms/op 397.50 ms/op 1.00
List(Validator) 100000 tree_backed -> struct 228.24 ms/op 225.28 ms/op 1.01
List(Validator) 100000 struct -> binary 29.924 ms/op 29.560 ms/op 1.01
List(Validator) 100000 tree_backed -> binary 113.83 ms/op 113.67 ms/op 1.00
List(Validator-NS) 100000 binary -> struct 108.72 ms/op 120.94 ms/op 0.90
List(Validator-NS) 100000 binary -> tree_backed 167.82 ms/op 181.62 ms/op 0.92
List(Validator-NS) 100000 struct -> tree_backed 206.89 ms/op 213.35 ms/op 0.97
List(Validator-NS) 100000 tree_backed -> struct 174.72 ms/op 170.59 ms/op 1.02
List(Validator-NS) 100000 struct -> binary 29.906 ms/op 28.769 ms/op 1.04
List(Validator-NS) 100000 tree_backed -> binary 36.023 ms/op 34.762 ms/op 1.04
get epochStatuses - MutableVector 109.20 us/op 115.09 us/op 0.95
get epochStatuses - ViewDU 210.43 us/op 212.71 us/op 0.99
set epochStatuses - ListTreeView 2.2175 ms/op 2.1502 ms/op 1.03
set epochStatuses - ListTreeView - set() 442.52 us/op 472.51 us/op 0.94
set epochStatuses - ListTreeView - commit() 785.74 us/op 830.74 us/op 0.95
bitstring 520.86 ns/op 514.25 ns/op 1.01
bit mask 13.938 ns/op 13.867 ns/op 1.01
struct - increase slot to 1000000 934.64 us/op 932.63 us/op 1.00
UintNumberType - increase slot to 1000000 27.701 ms/op 28.312 ms/op 0.98
UintBigintType - increase slot to 1000000 172.05 ms/op 172.44 ms/op 1.00
UintBigint8 x 100000 tree_deserialize 5.4260 ms/op 5.8397 ms/op 0.93
UintBigint8 x 100000 tree_serialize 1.1304 ms/op 1.1299 ms/op 1.00
UintBigint16 x 100000 tree_deserialize 5.3760 ms/op 5.5272 ms/op 0.97
UintBigint16 x 100000 tree_serialize 1.3776 ms/op 1.3855 ms/op 0.99
UintBigint32 x 100000 tree_deserialize 5.5998 ms/op 5.6201 ms/op 1.00
UintBigint32 x 100000 tree_serialize 1.7678 ms/op 1.8839 ms/op 0.94
UintBigint64 x 100000 tree_deserialize 6.3882 ms/op 6.0277 ms/op 1.06
UintBigint64 x 100000 tree_serialize 1.8179 ms/op 2.5647 ms/op 0.71
UintBigint8 x 100000 value_deserialize 436.88 us/op 435.37 us/op 1.00
UintBigint8 x 100000 value_serialize 781.06 us/op 789.63 us/op 0.99
UintBigint16 x 100000 value_deserialize 466.23 us/op 467.59 us/op 1.00
UintBigint16 x 100000 value_serialize 826.66 us/op 839.45 us/op 0.98
UintBigint32 x 100000 value_deserialize 497.35 us/op 497.67 us/op 1.00
UintBigint32 x 100000 value_serialize 867.93 us/op 869.33 us/op 1.00
UintBigint64 x 100000 value_deserialize 561.34 us/op 561.69 us/op 1.00
UintBigint64 x 100000 value_serialize 1.0800 ms/op 1.0797 ms/op 1.00
UintBigint8 x 100000 deserialize 3.6638 ms/op 3.6284 ms/op 1.01
UintBigint8 x 100000 serialize 1.5381 ms/op 1.8198 ms/op 0.85
UintBigint16 x 100000 deserialize 3.8995 ms/op 3.1410 ms/op 1.24
UintBigint16 x 100000 serialize 1.5735 ms/op 1.5117 ms/op 1.04
UintBigint32 x 100000 deserialize 3.8037 ms/op 3.1881 ms/op 1.19
UintBigint32 x 100000 serialize 2.9947 ms/op 2.8694 ms/op 1.04
UintBigint64 x 100000 deserialize 4.4657 ms/op 4.1369 ms/op 1.08
UintBigint64 x 100000 serialize 1.6613 ms/op 1.6342 ms/op 1.02
UintBigint128 x 100000 deserialize 5.9836 ms/op 5.3990 ms/op 1.11
UintBigint128 x 100000 serialize 16.573 ms/op 14.347 ms/op 1.16
UintBigint256 x 100000 deserialize 9.1242 ms/op 8.0526 ms/op 1.13
UintBigint256 x 100000 serialize 47.185 ms/op 43.221 ms/op 1.09
Slice from Uint8Array x25000 1.4511 ms/op 1.3258 ms/op 1.09
Slice from ArrayBuffer x25000 17.070 ms/op 16.751 ms/op 1.02
Slice from ArrayBuffer x25000 + new Uint8Array 19.122 ms/op 16.154 ms/op 1.18
Copy Uint8Array 100000 iterate 2.7005 ms/op 2.6558 ms/op 1.02
Copy Uint8Array 100000 slice 111.17 us/op 108.81 us/op 1.02
Copy Uint8Array 100000 Uint8Array.prototype.slice.call 115.01 us/op 110.74 us/op 1.04
Copy Buffer 100000 Uint8Array.prototype.slice.call 112.35 us/op 107.64 us/op 1.04
Copy Uint8Array 100000 slice + set 229.03 us/op 218.60 us/op 1.05
Copy Uint8Array 100000 subarray + set 112.19 us/op 106.86 us/op 1.05
Copy Uint8Array 100000 slice arrayBuffer 115.76 us/op 106.16 us/op 1.09
Uint64 deserialize 100000 - iterate Uint8Array 2.0145 ms/op 1.9314 ms/op 1.04
Uint64 deserialize 100000 - by Uint32A 1.9548 ms/op 1.9477 ms/op 1.00
Uint64 deserialize 100000 - by DataView.getUint32 x2 2.1730 ms/op 2.0050 ms/op 1.08
Uint64 deserialize 100000 - by DataView.getBigUint64 5.2330 ms/op 5.0519 ms/op 1.04
Uint64 deserialize 100000 - by byte 40.867 ms/op 40.703 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