Skip to content

Commit

Permalink
docs: no more broken images (#6708)
Browse files Browse the repository at this point in the history
* fix: no more broken images

* fix: incorrect paths
  • Loading branch information
jeluard authored Apr 25, 2024
1 parent a67b368 commit de3988d
Show file tree
Hide file tree
Showing 18 changed files with 13 additions and 14 deletions.
2 changes: 1 addition & 1 deletion RELEASE.md
Original file line number Diff line number Diff line change
Expand Up @@ -271,7 +271,7 @@ Historical context and reasons against valid alternatives to help future discuss

Lodestar used `master` as the single target for feature branches.

![lodestar-release](docs/images/lodestar-releases.png)
![lodestar-release](docs/static/images/lodestar-releases.png)

- Main branch = `master`
- Features merged to `master`
Expand Down
4 changes: 2 additions & 2 deletions docs/docusaurus.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import {themes as prismThemes} from "prism-react-renderer";
const config: Config = {
title: "Lodestar",
tagline: "TypeScript Implementation of Ethereum Consensus",
favicon: "img/favicon.ico",
favicon: "images/favicon.ico",

// Set the production url of your site here
url: "https://chainsafe.github.io/",
Expand Down Expand Up @@ -55,7 +55,7 @@ const config: Config = {
title: "Lodestar Documentation",
logo: {
alt: "Lodestar Logo",
src: "img/logo.png",
src: "images/logo.png",
},
items: [
{
Expand Down
14 changes: 7 additions & 7 deletions docs/pages/tools/flamegraphs.md
Original file line number Diff line number Diff line change
Expand Up @@ -108,11 +108,11 @@ yarn dev

Then navigate in a browser to `http://localhost:8080` and begin analyzing the data.

<img src="../images/flamescope/home-screen.png" alt="flamescope home screen" width="1024"/>
<img src="../images/flamescope/time-series-view.png" alt="flamescope home screen" width="1024"/>
<img src="../images/flamescope/selecting-series.png" alt="flamescope home screen" width="1024"/>
<img src="../images/flamescope/unfiltered-flamegraph.png" alt="flamescope home screen" width="1024"/>
<img src="../images/flamescope/zoom-in.png" alt="flamescope home screen" width="1024"/>
![flamescope home screen](/images/flamescope/home-screen.png)
![flamescope time series view](/images/flamescope/time-series-view.png)
![flamescope selecting series](/images/flamescope/selecting-series.png)
![flamescope unfiltered flamegraph](/images/flamescope/unfiltered-flamegraph.png)
![flamescope zoom in](/images/flamescope/zoom-in.png)

## Filtering Results

Expand All @@ -124,11 +124,11 @@ sed -r -e "/( __libc_start| uv_| LazyCompile | v8::internal::| node::| Builtins_

### Unfiltered

<img src="../images/flamescope/unfiltered-flamegraph.png" alt="flamescope home screen" width="1024"/>
![flamescope unfiltered flamegraph](/images/flamescope/unfiltered-flamegraph.png)

### Filtered

<img src="../images/flamescope/filtered-flamegraph.png" alt="flamescope home screen" width="1024"/>
![flamescope filtered flamegraph](/images/flamescope/filtered-flamegraph.png)

## References

Expand Down
6 changes: 3 additions & 3 deletions docs/pages/tools/heap-dumps.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,15 +34,15 @@ curl -X POST http://localhost:9596/eth/v1/lodestar/write_heapdump?dirpath=/some/

It is best to analyze on a local development machine so if Lodestar is running on a cloud instance download the dump to the local environment. Open Chrome, or any Chromium based browser (the example photos were taken using Brave). In the url bar type `chrome:://inspect` to bring up the DevTools menu (in brave the url will be rewritten to `brave://inspect`).

![DevTools](../../images/heap-dumps/devtools.png)
![DevTools](/images/heap-dumps/devtools.png)

Click on the `Open dedicated DevTools for Node` link to open the node specific window and click on the `Memory` tab as shown below.

![Memory Tab](../../images/heap-dumps/memory-tab.png)
![Memory Tab](/images/heap-dumps/memory-tab.png)

Load the profile by either right clicking on the left pane or by clicking the `Load` button at the bottom.

![Load Profile](../../images/heap-dumps/load-profile.png)
![Load Profile](/images/heap-dumps/load-profile.png)

### Analyzing a `V8` heap dump

Expand Down
File renamed without changes.
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
1 change: 0 additions & 1 deletion scripts/prepare-docs.sh
Original file line number Diff line number Diff line change
Expand Up @@ -17,4 +17,3 @@ cp -r packages/prover/README.md $DOCS_DIR/pages/lightclient-prover/prover.md
# Copy visual assets
rm -rf $DOCS_DIR/pages/assets $DOCS_DIR/pages/images
cp -r $ASSETS_DIR $DOCS_DIR/pages/assets
cp -r $DOCS_DIR/images $DOCS_DIR/pages/images

1 comment on commit de3988d

@github-actions
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Performance Alert ⚠️

Possible performance regression was detected for some benchmarks.
Benchmark result of this commit is worse than the previous benchmark result exceeding threshold.

Benchmark suite Current: de3988d Previous: aa17500 Ratio
forkChoice updateHead vc 600000 bc 64 eq 300000 75.831 ms/op 11.768 ms/op 6.44
Full benchmark results
Benchmark suite Current: de3988d Previous: aa17500 Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 822.00 us/op 1.0681 ms/op 0.77
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 60.006 us/op 92.340 us/op 0.65
BLS verify - blst-native 1.1126 ms/op 1.0740 ms/op 1.04
BLS verifyMultipleSignatures 3 - blst-native 2.1530 ms/op 2.1255 ms/op 1.01
BLS verifyMultipleSignatures 8 - blst-native 4.6756 ms/op 4.5618 ms/op 1.02
BLS verifyMultipleSignatures 32 - blst-native 16.956 ms/op 17.166 ms/op 0.99
BLS verifyMultipleSignatures 64 - blst-native 33.354 ms/op 34.271 ms/op 0.97
BLS verifyMultipleSignatures 128 - blst-native 66.218 ms/op 67.197 ms/op 0.99
BLS deserializing 10000 signatures 782.90 ms/op 787.21 ms/op 0.99
BLS deserializing 100000 signatures 7.9994 s/op 7.7623 s/op 1.03
BLS verifyMultipleSignatures - same message - 3 - blst-native 1.1408 ms/op 1.1258 ms/op 1.01
BLS verifyMultipleSignatures - same message - 8 - blst-native 1.2848 ms/op 1.2844 ms/op 1.00
BLS verifyMultipleSignatures - same message - 32 - blst-native 2.0333 ms/op 1.9906 ms/op 1.02
BLS verifyMultipleSignatures - same message - 64 - blst-native 3.0234 ms/op 2.9692 ms/op 1.02
BLS verifyMultipleSignatures - same message - 128 - blst-native 5.0201 ms/op 4.9056 ms/op 1.02
BLS aggregatePubkeys 32 - blst-native 25.053 us/op 24.380 us/op 1.03
BLS aggregatePubkeys 128 - blst-native 96.319 us/op 95.555 us/op 1.01
notSeenSlots=1 numMissedVotes=1 numBadVotes=10 46.069 ms/op 49.402 ms/op 0.93
notSeenSlots=1 numMissedVotes=0 numBadVotes=4 48.891 ms/op 49.223 ms/op 0.99
notSeenSlots=2 numMissedVotes=1 numBadVotes=10 27.930 ms/op 26.626 ms/op 1.05
getSlashingsAndExits - default max 298.26 us/op 171.78 us/op 1.74
getSlashingsAndExits - 2k 551.40 us/op 354.06 us/op 1.56
proposeBlockBody type=full, size=empty 4.2313 ms/op 4.3771 ms/op 0.97
isKnown best case - 1 super set check 417.00 ns/op 349.00 ns/op 1.19
isKnown normal case - 2 super set checks 468.00 ns/op 363.00 ns/op 1.29
isKnown worse case - 16 super set checks 516.00 ns/op 357.00 ns/op 1.45
InMemoryCheckpointStateCache - add get delete 4.7490 us/op 5.2580 us/op 0.90
validate api signedAggregateAndProof - struct 2.0121 ms/op 2.0512 ms/op 0.98
validate gossip signedAggregateAndProof - struct 1.9950 ms/op 2.0313 ms/op 0.98
validate gossip attestation - vc 640000 1.1479 ms/op 1.1504 ms/op 1.00
batch validate gossip attestation - vc 640000 - chunk 32 137.20 us/op 162.28 us/op 0.85
batch validate gossip attestation - vc 640000 - chunk 64 123.49 us/op 152.08 us/op 0.81
batch validate gossip attestation - vc 640000 - chunk 128 121.69 us/op 150.76 us/op 0.81
batch validate gossip attestation - vc 640000 - chunk 256 118.50 us/op 146.29 us/op 0.81
pickEth1Vote - no votes 962.10 us/op 1.8015 ms/op 0.53
pickEth1Vote - max votes 6.7686 ms/op 14.552 ms/op 0.47
pickEth1Vote - Eth1Data hashTreeRoot value x2048 14.400 ms/op 18.250 ms/op 0.79
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 19.379 ms/op 35.648 ms/op 0.54
pickEth1Vote - Eth1Data fastSerialize value x2048 429.94 us/op 517.67 us/op 0.83
pickEth1Vote - Eth1Data fastSerialize tree x2048 4.7909 ms/op 9.0436 ms/op 0.53
bytes32 toHexString 450.00 ns/op 677.00 ns/op 0.66
bytes32 Buffer.toString(hex) 325.00 ns/op 589.00 ns/op 0.55
bytes32 Buffer.toString(hex) from Uint8Array 425.00 ns/op 835.00 ns/op 0.51
bytes32 Buffer.toString(hex) + 0x 302.00 ns/op 472.00 ns/op 0.64
Object access 1 prop 0.19900 ns/op 0.34500 ns/op 0.58
Map access 1 prop 0.20700 ns/op 0.24200 ns/op 0.86
Object get x1000 5.0680 ns/op 5.3310 ns/op 0.95
Map get x1000 0.79200 ns/op 0.94900 ns/op 0.83
Object set x1000 27.242 ns/op 59.073 ns/op 0.46
Map set x1000 18.623 ns/op 48.350 ns/op 0.39
Return object 10000 times 0.24290 ns/op 0.26480 ns/op 0.92
Throw Error 10000 times 2.7895 us/op 3.0060 us/op 0.93
fastMsgIdFn sha256 / 200 bytes 1.9630 us/op 2.8090 us/op 0.70
fastMsgIdFn h32 xxhash / 200 bytes 300.00 ns/op 632.00 ns/op 0.47
fastMsgIdFn h64 xxhash / 200 bytes 440.00 ns/op 703.00 ns/op 0.63
fastMsgIdFn sha256 / 1000 bytes 6.5770 us/op 10.665 us/op 0.62
fastMsgIdFn h32 xxhash / 1000 bytes 471.00 ns/op 778.00 ns/op 0.61
fastMsgIdFn h64 xxhash / 1000 bytes 420.00 ns/op 711.00 ns/op 0.59
fastMsgIdFn sha256 / 10000 bytes 52.900 us/op 77.622 us/op 0.68
fastMsgIdFn h32 xxhash / 10000 bytes 1.8590 us/op 2.4020 us/op 0.77
fastMsgIdFn h64 xxhash / 10000 bytes 1.2450 us/op 1.5750 us/op 0.79
send data - 1000 256B messages 13.107 ms/op 22.906 ms/op 0.57
send data - 1000 512B messages 15.547 ms/op 23.058 ms/op 0.67
send data - 1000 1024B messages 22.493 ms/op 29.658 ms/op 0.76
send data - 1000 1200B messages 16.573 ms/op 45.947 ms/op 0.36
send data - 1000 2048B messages 37.701 ms/op 55.467 ms/op 0.68
send data - 1000 4096B messages 38.851 ms/op 48.950 ms/op 0.79
send data - 1000 16384B messages 99.264 ms/op 122.02 ms/op 0.81
send data - 1000 65536B messages 437.09 ms/op 427.68 ms/op 1.02
enrSubnets - fastDeserialize 64 bits 1.5700 us/op 1.2540 us/op 1.25
enrSubnets - ssz BitVector 64 bits 627.00 ns/op 614.00 ns/op 1.02
enrSubnets - fastDeserialize 4 bits 306.00 ns/op 303.00 ns/op 1.01
enrSubnets - ssz BitVector 4 bits 653.00 ns/op 653.00 ns/op 1.00
prioritizePeers score -10:0 att 32-0.1 sync 2-0 177.93 us/op 256.40 us/op 0.69
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 247.16 us/op 365.92 us/op 0.68
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 311.68 us/op 409.97 us/op 0.76
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 464.84 us/op 522.91 us/op 0.89
prioritizePeers score 0:0 att 64-1 sync 4-1 611.07 us/op 704.95 us/op 0.87
array of 16000 items push then shift 1.5156 us/op 1.5173 us/op 1.00
LinkedList of 16000 items push then shift 9.0970 ns/op 7.9280 ns/op 1.15
array of 16000 items push then pop 121.48 ns/op 119.83 ns/op 1.01
LinkedList of 16000 items push then pop 6.9930 ns/op 6.4590 ns/op 1.08
array of 24000 items push then shift 1.9921 us/op 2.4402 us/op 0.82
LinkedList of 24000 items push then shift 8.3560 ns/op 7.6740 ns/op 1.09
array of 24000 items push then pop 156.63 ns/op 201.83 ns/op 0.78
LinkedList of 24000 items push then pop 6.2030 ns/op 9.2740 ns/op 0.67
intersect bitArray bitLen 8 4.9210 ns/op 5.1010 ns/op 0.96
intersect array and set length 8 49.528 ns/op 115.39 ns/op 0.43
intersect bitArray bitLen 128 29.503 ns/op 47.118 ns/op 0.63
intersect array and set length 128 682.82 ns/op 1.2379 us/op 0.55
bitArray.getTrueBitIndexes() bitLen 128 1.2260 us/op 2.2140 us/op 0.55
bitArray.getTrueBitIndexes() bitLen 248 2.1080 us/op 3.0700 us/op 0.69
bitArray.getTrueBitIndexes() bitLen 512 5.2480 us/op 6.1610 us/op 0.85
Buffer.concat 32 items 1.0550 us/op 1.2800 us/op 0.82
Uint8Array.set 32 items 1.6390 us/op 2.9010 us/op 0.56
Set add up to 64 items then delete first 1.7849 us/op 2.0975 us/op 0.85
OrderedSet add up to 64 items then delete first 4.7230 us/op 3.7496 us/op 1.26
Set add up to 64 items then delete last 3.7687 us/op 2.6960 us/op 1.40
OrderedSet add up to 64 items then delete last 6.2658 us/op 5.3823 us/op 1.16
Set add up to 64 items then delete middle 4.1778 us/op 4.1153 us/op 1.02
OrderedSet add up to 64 items then delete middle 8.4672 us/op 6.2889 us/op 1.35
Set add up to 128 items then delete first 8.7006 us/op 6.0490 us/op 1.44
OrderedSet add up to 128 items then delete first 13.087 us/op 9.9325 us/op 1.32
Set add up to 128 items then delete last 8.5226 us/op 6.0822 us/op 1.40
OrderedSet add up to 128 items then delete last 13.420 us/op 9.4602 us/op 1.42
Set add up to 128 items then delete middle 8.6079 us/op 5.8425 us/op 1.47
OrderedSet add up to 128 items then delete middle 21.395 us/op 14.587 us/op 1.47
Set add up to 256 items then delete first 17.907 us/op 11.849 us/op 1.51
OrderedSet add up to 256 items then delete first 29.829 us/op 21.424 us/op 1.39
Set add up to 256 items then delete last 12.680 us/op 11.754 us/op 1.08
OrderedSet add up to 256 items then delete last 26.855 us/op 12.648 us/op 2.12
Set add up to 256 items then delete middle 14.458 us/op 7.8037 us/op 1.85
OrderedSet add up to 256 items then delete middle 45.634 us/op 37.190 us/op 1.23
transfer serialized Status (84 B) 2.3080 us/op 1.5480 us/op 1.49
copy serialized Status (84 B) 1.8300 us/op 1.2020 us/op 1.52
transfer serialized SignedVoluntaryExit (112 B) 2.8470 us/op 1.6320 us/op 1.74
copy serialized SignedVoluntaryExit (112 B) 2.1080 us/op 1.1800 us/op 1.79
transfer serialized ProposerSlashing (416 B) 4.0440 us/op 1.5920 us/op 2.54
copy serialized ProposerSlashing (416 B) 4.0680 us/op 1.6010 us/op 2.54
transfer serialized Attestation (485 B) 4.0010 us/op 1.7080 us/op 2.34
copy serialized Attestation (485 B) 3.3630 us/op 2.6140 us/op 1.29
transfer serialized AttesterSlashing (33232 B) 3.5450 us/op 3.0150 us/op 1.18
copy serialized AttesterSlashing (33232 B) 13.101 us/op 5.2540 us/op 2.49
transfer serialized Small SignedBeaconBlock (128000 B) 4.8870 us/op 2.6370 us/op 1.85
copy serialized Small SignedBeaconBlock (128000 B) 40.020 us/op 10.647 us/op 3.76
transfer serialized Avg SignedBeaconBlock (200000 B) 4.7100 us/op 2.4120 us/op 1.95
copy serialized Avg SignedBeaconBlock (200000 B) 40.806 us/op 18.960 us/op 2.15
transfer serialized BlobsSidecar (524380 B) 8.9980 us/op 2.6240 us/op 3.43
copy serialized BlobsSidecar (524380 B) 230.18 us/op 135.04 us/op 1.70
transfer serialized Big SignedBeaconBlock (1000000 B) 8.7290 us/op 2.7990 us/op 3.12
copy serialized Big SignedBeaconBlock (1000000 B) 318.65 us/op 132.75 us/op 2.40
pass gossip attestations to forkchoice per slot 4.6851 ms/op 2.8627 ms/op 1.64
forkChoice updateHead vc 100000 bc 64 eq 0 874.96 us/op 450.27 us/op 1.94
forkChoice updateHead vc 600000 bc 64 eq 0 3.6292 ms/op 2.9787 ms/op 1.22
forkChoice updateHead vc 1000000 bc 64 eq 0 6.2683 ms/op 4.5360 ms/op 1.38
forkChoice updateHead vc 600000 bc 320 eq 0 3.8145 ms/op 2.7001 ms/op 1.41
forkChoice updateHead vc 600000 bc 1200 eq 0 3.6223 ms/op 2.7245 ms/op 1.33
forkChoice updateHead vc 600000 bc 7200 eq 0 6.0723 ms/op 3.4607 ms/op 1.75
forkChoice updateHead vc 600000 bc 64 eq 1000 11.614 ms/op 9.8768 ms/op 1.18
forkChoice updateHead vc 600000 bc 64 eq 10000 11.772 ms/op 9.7193 ms/op 1.21
forkChoice updateHead vc 600000 bc 64 eq 300000 75.831 ms/op 11.768 ms/op 6.44
computeDeltas 500000 validators 300 proto nodes 4.7473 ms/op 3.0666 ms/op 1.55
computeDeltas 500000 validators 1200 proto nodes 4.7166 ms/op 2.9616 ms/op 1.59
computeDeltas 500000 validators 7200 proto nodes 4.2616 ms/op 2.9497 ms/op 1.44
computeDeltas 750000 validators 300 proto nodes 6.4645 ms/op 4.3487 ms/op 1.49
computeDeltas 750000 validators 1200 proto nodes 5.2062 ms/op 4.6312 ms/op 1.12
computeDeltas 750000 validators 7200 proto nodes 4.6188 ms/op 4.6299 ms/op 1.00
computeDeltas 1400000 validators 300 proto nodes 9.0023 ms/op 9.2858 ms/op 0.97
computeDeltas 1400000 validators 1200 proto nodes 8.9994 ms/op 10.027 ms/op 0.90
computeDeltas 1400000 validators 7200 proto nodes 8.5698 ms/op 9.5448 ms/op 0.90
computeDeltas 2100000 validators 300 proto nodes 13.190 ms/op 15.798 ms/op 0.83
computeDeltas 2100000 validators 1200 proto nodes 13.474 ms/op 19.472 ms/op 0.69
computeDeltas 2100000 validators 7200 proto nodes 13.449 ms/op 16.953 ms/op 0.79
altair processAttestation - 250000 vs - 7PWei normalcase 2.2966 ms/op 1.8609 ms/op 1.23
altair processAttestation - 250000 vs - 7PWei worstcase 3.4349 ms/op 3.1708 ms/op 1.08
altair processAttestation - setStatus - 1/6 committees join 82.634 us/op 235.35 us/op 0.35
altair processAttestation - setStatus - 1/3 committees join 294.96 us/op 236.23 us/op 1.25
altair processAttestation - setStatus - 1/2 committees join 389.75 us/op 310.49 us/op 1.26
altair processAttestation - setStatus - 2/3 committees join 311.49 us/op 394.21 us/op 0.79
altair processAttestation - setStatus - 4/5 committees join 461.57 us/op 537.38 us/op 0.86
altair processAttestation - setStatus - 100% committees join 515.56 us/op 625.47 us/op 0.82
altair processBlock - 250000 vs - 7PWei normalcase 9.5987 ms/op 11.678 ms/op 0.82
altair processBlock - 250000 vs - 7PWei normalcase hashState 34.994 ms/op 48.966 ms/op 0.71
altair processBlock - 250000 vs - 7PWei worstcase 37.983 ms/op 44.526 ms/op 0.85
altair processBlock - 250000 vs - 7PWei worstcase hashState 92.905 ms/op 124.81 ms/op 0.74
phase0 processBlock - 250000 vs - 7PWei normalcase 2.2330 ms/op 5.3993 ms/op 0.41
phase0 processBlock - 250000 vs - 7PWei worstcase 27.972 ms/op 40.886 ms/op 0.68
altair processEth1Data - 250000 vs - 7PWei normalcase 529.26 us/op 671.85 us/op 0.79
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 7.3710 us/op 21.573 us/op 0.34
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 49.794 us/op 75.237 us/op 0.66
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 22.347 us/op 42.132 us/op 0.53
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 10.869 us/op 19.272 us/op 0.56
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 133.94 us/op 163.94 us/op 0.82
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 1.2299 ms/op 1.1990 ms/op 1.03
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 917.31 us/op 1.2116 ms/op 0.76
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 1.0601 ms/op 1.3161 ms/op 0.81
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 2.4222 ms/op 5.5800 ms/op 0.43
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 2.2413 ms/op 2.8153 ms/op 0.80
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 4.4494 ms/op 8.7053 ms/op 0.51
Tree 40 250000 create 310.54 ms/op 383.61 ms/op 0.81
Tree 40 250000 get(125000) 119.85 ns/op 138.84 ns/op 0.86
Tree 40 250000 set(125000) 910.80 ns/op 822.60 ns/op 1.11
Tree 40 250000 toArray() 22.542 ms/op 18.336 ms/op 1.23
Tree 40 250000 iterate all - toArray() + loop 22.603 ms/op 27.939 ms/op 0.81
Tree 40 250000 iterate all - get(i) 53.739 ms/op 61.160 ms/op 0.88
MutableVector 250000 create 13.450 ms/op 17.545 ms/op 0.77
MutableVector 250000 get(125000) 5.7080 ns/op 6.6150 ns/op 0.86
MutableVector 250000 set(125000) 224.72 ns/op 599.92 ns/op 0.37
MutableVector 250000 toArray() 2.2647 ms/op 3.5672 ms/op 0.63
MutableVector 250000 iterate all - toArray() + loop 2.5664 ms/op 3.9370 ms/op 0.65
MutableVector 250000 iterate all - get(i) 1.3383 ms/op 1.4578 ms/op 0.92
Array 250000 create 2.1031 ms/op 2.6285 ms/op 0.80
Array 250000 clone - spread 1.1955 ms/op 1.2023 ms/op 0.99
Array 250000 get(125000) 1.0780 ns/op 1.3950 ns/op 0.77
Array 250000 set(125000) 1.2730 ns/op 1.3570 ns/op 0.94
Array 250000 iterate all - loop 153.95 us/op 168.45 us/op 0.91
effectiveBalanceIncrements clone Uint8Array 300000 14.712 us/op 18.041 us/op 0.82
effectiveBalanceIncrements clone MutableVector 300000 439.00 ns/op 435.00 ns/op 1.01
effectiveBalanceIncrements rw all Uint8Array 300000 185.52 us/op 256.42 us/op 0.72
effectiveBalanceIncrements rw all MutableVector 300000 66.755 ms/op 78.367 ms/op 0.85
phase0 afterProcessEpoch - 250000 vs - 7PWei 76.719 ms/op 127.31 ms/op 0.60
phase0 beforeProcessEpoch - 250000 vs - 7PWei 47.247 ms/op 82.913 ms/op 0.57
altair processEpoch - mainnet_e81889 388.15 ms/op 481.79 ms/op 0.81
mainnet_e81889 - altair beforeProcessEpoch 73.375 ms/op 78.832 ms/op 0.93
mainnet_e81889 - altair processJustificationAndFinalization 11.341 us/op 12.880 us/op 0.88
mainnet_e81889 - altair processInactivityUpdates 4.1120 ms/op 5.3992 ms/op 0.76
mainnet_e81889 - altair processRewardsAndPenalties 64.184 ms/op 66.876 ms/op 0.96
mainnet_e81889 - altair processRegistryUpdates 3.9500 us/op 2.2420 us/op 1.76
mainnet_e81889 - altair processSlashings 610.00 ns/op 624.00 ns/op 0.98
mainnet_e81889 - altair processEth1DataReset 862.00 ns/op 697.00 ns/op 1.24
mainnet_e81889 - altair processEffectiveBalanceUpdates 1.0573 ms/op 1.1151 ms/op 0.95
mainnet_e81889 - altair processSlashingsReset 5.2800 us/op 3.5830 us/op 1.47
mainnet_e81889 - altair processRandaoMixesReset 3.7450 us/op 5.5100 us/op 0.68
mainnet_e81889 - altair processHistoricalRootsUpdate 1.1300 us/op 1.1980 us/op 0.94
mainnet_e81889 - altair processParticipationFlagUpdates 3.6060 us/op 1.9400 us/op 1.86
mainnet_e81889 - altair processSyncCommitteeUpdates 790.00 ns/op 952.00 ns/op 0.83
mainnet_e81889 - altair afterProcessEpoch 84.951 ms/op 85.603 ms/op 0.99
capella processEpoch - mainnet_e217614 2.4311 s/op 1.9544 s/op 1.24
mainnet_e217614 - capella beforeProcessEpoch 511.81 ms/op 418.98 ms/op 1.22
mainnet_e217614 - capella processJustificationAndFinalization 20.344 us/op 16.218 us/op 1.25
mainnet_e217614 - capella processInactivityUpdates 22.777 ms/op 18.848 ms/op 1.21
mainnet_e217614 - capella processRewardsAndPenalties 520.06 ms/op 477.65 ms/op 1.09
mainnet_e217614 - capella processRegistryUpdates 25.650 us/op 22.135 us/op 1.16
mainnet_e217614 - capella processSlashings 778.00 ns/op 676.00 ns/op 1.15
mainnet_e217614 - capella processEth1DataReset 773.00 ns/op 622.00 ns/op 1.24
mainnet_e217614 - capella processEffectiveBalanceUpdates 3.9747 ms/op 5.8875 ms/op 0.68
mainnet_e217614 - capella processSlashingsReset 6.0270 us/op 2.7670 us/op 2.18
mainnet_e217614 - capella processRandaoMixesReset 7.6260 us/op 4.3600 us/op 1.75
mainnet_e217614 - capella processHistoricalRootsUpdate 993.00 ns/op 902.00 ns/op 1.10
mainnet_e217614 - capella processParticipationFlagUpdates 2.9260 us/op 1.5920 us/op 1.84
mainnet_e217614 - capella afterProcessEpoch 244.46 ms/op 216.18 ms/op 1.13
phase0 processEpoch - mainnet_e58758 525.41 ms/op 464.38 ms/op 1.13
mainnet_e58758 - phase0 beforeProcessEpoch 176.87 ms/op 131.06 ms/op 1.35
mainnet_e58758 - phase0 processJustificationAndFinalization 27.588 us/op 13.977 us/op 1.97
mainnet_e58758 - phase0 processRewardsAndPenalties 63.808 ms/op 59.237 ms/op 1.08
mainnet_e58758 - phase0 processRegistryUpdates 14.981 us/op 10.108 us/op 1.48
mainnet_e58758 - phase0 processSlashings 1.1500 us/op 853.00 ns/op 1.35
mainnet_e58758 - phase0 processEth1DataReset 1.1270 us/op 696.00 ns/op 1.62
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 938.96 us/op 1.4706 ms/op 0.64
mainnet_e58758 - phase0 processSlashingsReset 5.3230 us/op 4.2870 us/op 1.24
mainnet_e58758 - phase0 processRandaoMixesReset 8.5550 us/op 5.5330 us/op 1.55
mainnet_e58758 - phase0 processHistoricalRootsUpdate 1.0420 us/op 932.00 ns/op 1.12
mainnet_e58758 - phase0 processParticipationRecordUpdates 7.8330 us/op 6.4130 us/op 1.22
mainnet_e58758 - phase0 afterProcessEpoch 75.022 ms/op 71.271 ms/op 1.05
phase0 processEffectiveBalanceUpdates - 250000 normalcase 1.1755 ms/op 1.0626 ms/op 1.11
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 1.4923 ms/op 1.6819 ms/op 0.89
altair processInactivityUpdates - 250000 normalcase 35.452 ms/op 31.372 ms/op 1.13
altair processInactivityUpdates - 250000 worstcase 30.065 ms/op 29.536 ms/op 1.02
phase0 processRegistryUpdates - 250000 normalcase 17.108 us/op 7.3780 us/op 2.32
phase0 processRegistryUpdates - 250000 badcase_full_deposits 512.92 us/op 452.05 us/op 1.13
phase0 processRegistryUpdates - 250000 worstcase 0.5 153.02 ms/op 117.93 ms/op 1.30
altair processRewardsAndPenalties - 250000 normalcase 62.284 ms/op 73.737 ms/op 0.84
altair processRewardsAndPenalties - 250000 worstcase 62.555 ms/op 45.891 ms/op 1.36
phase0 getAttestationDeltas - 250000 normalcase 9.7674 ms/op 6.0568 ms/op 1.61
phase0 getAttestationDeltas - 250000 worstcase 6.9002 ms/op 7.0385 ms/op 0.98
phase0 processSlashings - 250000 worstcase 92.676 us/op 68.814 us/op 1.35
altair processSyncCommitteeUpdates - 250000 120.80 ms/op 104.50 ms/op 1.16
BeaconState.hashTreeRoot - No change 805.00 ns/op 430.00 ns/op 1.87
BeaconState.hashTreeRoot - 1 full validator 131.61 us/op 102.09 us/op 1.29
BeaconState.hashTreeRoot - 32 full validator 1.2179 ms/op 1.3707 ms/op 0.89
BeaconState.hashTreeRoot - 512 full validator 12.612 ms/op 13.633 ms/op 0.93
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 132.39 us/op 147.01 us/op 0.90
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 2.5676 ms/op 2.5883 ms/op 0.99
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 34.073 ms/op 29.629 ms/op 1.15
BeaconState.hashTreeRoot - 1 balances 145.12 us/op 131.94 us/op 1.10
BeaconState.hashTreeRoot - 32 balances 1.2697 ms/op 1.3282 ms/op 0.96
BeaconState.hashTreeRoot - 512 balances 13.432 ms/op 12.023 ms/op 1.12
BeaconState.hashTreeRoot - 250000 balances 178.67 ms/op 152.68 ms/op 1.17
aggregationBits - 2048 els - zipIndexesInBitList 25.751 us/op 46.420 us/op 0.55
byteArrayEquals 32 65.488 ns/op 63.204 ns/op 1.04
Buffer.compare 32 38.670 ns/op 38.376 ns/op 1.01
byteArrayEquals 1024 1.7847 us/op 1.7796 us/op 1.00
Buffer.compare 1024 48.208 ns/op 47.658 ns/op 1.01
byteArrayEquals 16384 29.095 us/op 29.131 us/op 1.00
Buffer.compare 16384 211.86 ns/op 205.51 ns/op 1.03
byteArrayEquals 123687377 211.28 ms/op 214.34 ms/op 0.99
Buffer.compare 123687377 6.7638 ms/op 4.2081 ms/op 1.61
byteArrayEquals 32 - diff last byte 64.900 ns/op 61.913 ns/op 1.05
Buffer.compare 32 - diff last byte 41.747 ns/op 38.628 ns/op 1.08
byteArrayEquals 1024 - diff last byte 1.7699 us/op 1.7604 us/op 1.01
Buffer.compare 1024 - diff last byte 46.026 ns/op 47.744 ns/op 0.96
byteArrayEquals 16384 - diff last byte 27.855 us/op 27.899 us/op 1.00
Buffer.compare 16384 - diff last byte 204.13 ns/op 220.27 ns/op 0.93
byteArrayEquals 123687377 - diff last byte 205.55 ms/op 202.53 ms/op 1.01
Buffer.compare 123687377 - diff last byte 6.4447 ms/op 5.8439 ms/op 1.10
byteArrayEquals 32 - random bytes 4.7830 ns/op 4.4570 ns/op 1.07
Buffer.compare 32 - random bytes 37.235 ns/op 36.392 ns/op 1.02
byteArrayEquals 1024 - random bytes 4.7920 ns/op 4.6590 ns/op 1.03
Buffer.compare 1024 - random bytes 35.343 ns/op 34.474 ns/op 1.03
byteArrayEquals 16384 - random bytes 4.6240 ns/op 4.3790 ns/op 1.06
Buffer.compare 16384 - random bytes 36.384 ns/op 33.905 ns/op 1.07
byteArrayEquals 123687377 - random bytes 8.0300 ns/op 8.2200 ns/op 0.98
Buffer.compare 123687377 - random bytes 40.130 ns/op 39.200 ns/op 1.02
regular array get 100000 times 40.697 us/op 42.022 us/op 0.97
wrappedArray get 100000 times 41.168 us/op 41.383 us/op 0.99
arrayWithProxy get 100000 times 9.1546 ms/op 11.433 ms/op 0.80
ssz.Root.equals 54.237 ns/op 61.594 ns/op 0.88
byteArrayEquals 53.740 ns/op 63.527 ns/op 0.85
Buffer.compare 10.192 ns/op 9.6650 ns/op 1.05
shuffle list - 16384 els 6.2070 ms/op 6.2968 ms/op 0.99
shuffle list - 250000 els 88.629 ms/op 84.410 ms/op 1.05
processSlot - 1 slots 19.709 us/op 15.701 us/op 1.26
processSlot - 32 slots 2.6665 ms/op 4.1744 ms/op 0.64
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 44.937 ms/op 56.596 ms/op 0.79
getCommitteeAssignments - req 1 vs - 250000 vc 2.4458 ms/op 2.3813 ms/op 1.03
getCommitteeAssignments - req 100 vs - 250000 vc 3.6741 ms/op 3.4341 ms/op 1.07
getCommitteeAssignments - req 1000 vs - 250000 vc 3.8804 ms/op 3.9175 ms/op 0.99
findModifiedValidators - 10000 modified validators 333.11 ms/op 299.37 ms/op 1.11
findModifiedValidators - 1000 modified validators 238.26 ms/op 156.77 ms/op 1.52
findModifiedValidators - 100 modified validators 189.42 ms/op 159.52 ms/op 1.19
findModifiedValidators - 10 modified validators 159.35 ms/op 142.88 ms/op 1.12
findModifiedValidators - 1 modified validators 181.39 ms/op 143.56 ms/op 1.26
findModifiedValidators - no difference 206.42 ms/op 173.25 ms/op 1.19
compare ViewDUs 4.4654 s/op 4.0522 s/op 1.10
compare each validator Uint8Array 1.8490 s/op 946.67 ms/op 1.95
compare ViewDU to Uint8Array 1.0553 s/op 900.28 ms/op 1.17
migrate state 1000000 validators, 24 modified, 0 new 671.77 ms/op 685.43 ms/op 0.98
migrate state 1000000 validators, 1700 modified, 1000 new 1.1495 s/op 1.0717 s/op 1.07
migrate state 1000000 validators, 3400 modified, 2000 new 1.8288 s/op 1.4988 s/op 1.22
migrate state 1500000 validators, 24 modified, 0 new 986.41 ms/op 780.89 ms/op 1.26
migrate state 1500000 validators, 1700 modified, 1000 new 1.2212 s/op 1.1284 s/op 1.08
migrate state 1500000 validators, 3400 modified, 2000 new 1.5738 s/op 1.3824 s/op 1.14
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 5.7900 ns/op 5.5800 ns/op 1.04
state getBlockRootAtSlot - 250000 vs - 7PWei 883.38 ns/op 914.75 ns/op 0.97
computeProposers - vc 250000 8.5925 ms/op 7.4769 ms/op 1.15
computeEpochShuffling - vc 250000 90.442 ms/op 94.302 ms/op 0.96
getNextSyncCommittee - vc 250000 126.89 ms/op 138.88 ms/op 0.91
computeSigningRoot for AttestationData 28.100 us/op 30.826 us/op 0.91
hash AttestationData serialized data then Buffer.toString(base64) 1.5042 us/op 1.3796 us/op 1.09
toHexString serialized data 1.7349 us/op 1.4642 us/op 1.18
Buffer.toString(base64) 229.00 ns/op 210.05 ns/op 1.09

Please sign in to comment.