Skip to content

Commit eb1c1a6

Browse files
Merge pull request #14 from cardano-scaling/bwbush/leios-figures
Regenerated CIP simulation results
2 parents 263392d + 44db860 commit eb1c1a6

16 files changed

+13916
-16152
lines changed

CIP-0164/README.md

Lines changed: 25 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1750,7 +1750,7 @@ with a set of protocol parameters suitable for running Leios at 200 kB/s of
17501750
transactions, which corresponds to approximately 150 tx/s of transactions of
17511751
sizes typical on the Cardano mainnet. The maximum size of transactions
17521752
referenced by an EB is 12 MB and the stage lengths are
1753-
$3 \times L_\text{hdr} = 3$, $L_\text{vote} = 4$, and
1753+
$3 \times L_\text{hdr} = 3 \text{ slots}$, $L_\text{vote} = 4$, and
17541754
$L_\text{diff} = 7 \text{ slots}$. In order to illustrate the minimal
17551755
infrastructure resources used by Leios at these throughputs, we have limited
17561756
nodes to 4 virtual CPUs each and limited inter-node bandwidth to 10 Mb/s. We
@@ -1761,7 +1761,7 @@ effects of clearing the memory pool are apparent. The table below summarizes the
17611761
results of the simulation experiment. We see that a transaction at the front of
17621762
the memory pool can become referenced by an EB in as few as 20 seconds when the
17631763
system is lightly or moderately loaded and that it can reach certification on
1764-
the ledger in about one minute. These times can double under congested
1764+
the ledger in about one minute. These times more than double under congested
17651765
conditions. In all cases there is little overhead, relative to the total bytes
17661766
of transactions, in data that must be stored permanently as the ledger history.
17671767

@@ -1770,11 +1770,11 @@ of transactions, in data that must be stored permanently as the ledger history.
17701770

17711771
| Throughput [TxMB/s] | TPS at 1500 B/tx | Conditions | Mempool to EB [s] | Mempool to ledger [s] | Space efficiency [%] |
17721772
| ------------------: | ---------------: | --------------- | ----------------: | --------------------: | -------------------: |
1773-
| 0.100 | 66.7 | light load | 19.6 | 48.0 | 94.2 |
1774-
| 0.150 | 100.0 | moderate load | 21.6 | 51.2 | 96.3 |
1775-
| 0.200 | 142.9 | heavy load | 31.3 | 57.7 | 96.4 |
1776-
| 0.250 | 166.7 | some congestion | 51.6 | 81.9 | 96.6 |
1777-
| 0.300 | 200.0 | much congestion | 146.6 | 173.2 | 97.2 |
1773+
| 0.050 | 33.3 | light load | 17.5 | 54.0 | 93.9 |
1774+
| 0.100 | 66.7 | moderate load | 18.0 | 54.9 | 95.8 |
1775+
| 0.150 | 100.0 | heavy load | 21.1 | 58.9 | 96.3 |
1776+
| 0.200 | 142.9 | congestion | 130.1 | 171.6 | 95.7 |
1777+
| 0.250 | 166.7 | over capacity | 238.8 | 282.4 | 94.3 |
17781778

17791779
<em>Table 6: Leios efficiency at different throughputs</em>
17801780

@@ -1978,11 +1978,11 @@ block is being generated or validated. A more nuanced model of CPU usage in the
19781978
simulators would account for Plutus execution explicitly, but the linear models
19791979
described above are used to account for Plutus workloads implicitly. The
19801980
following plot of simulation results limit each node to 4 vCPU cores and suggest
1981-
that workloads of 2e13 Plutus execution steps per EB may be feasible: this is
1982-
1000 times the current Cardano mainnet limit of 2e10 steps for Praos blocks. The
1981+
that workloads of 10<sup>13</sup> Plutus execution steps per EB may be feasible: this is
1982+
500 times the current Cardano mainnet limit of 2×10<sup>10</sup> steps for Praos blocks. The
19831983
subsequent plot shows the 4 vCPUs becoming progressively more saturated with
1984-
heavier Plutus execution. Although these results suggest that Leios'
1985-
_block-level_ Plutus budget can safely be 5000 billion steps or more, it is
1984+
heavier Plutus execution. Although these results suggest that Leios's
1985+
_block-level_ Plutus budget can safely be 2000 billion steps, it is
19861986
important to remember that this is for conditions where honest nodes faithfully
19871987
and promptly diffuse the transactions requiring the relatively expensive phase 2
19881988
(Plutus) validation: adversarial nodes could attempt to delay diffusion of
@@ -2170,16 +2170,20 @@ pricing of ten common hyperscale and discount cloud providers. The cost of a
21702170
10,000-node Leios network can be computed from the cost per node. Storage costs
21712171
increase each month as the ledger becomes larger.
21722172

2173+
Throughput Average-size transactions Small transactions Per-node operation Per-node storage 10k-node network<br/>(first year) 10k-node network<br/>(first year)
2174+
<chr> <chr> <chr> <chr> <chr> <chr> <chr>
2175+
2176+
21732177
<div align="center">
21742178
<a name="table-8" id="table-8"></a>
21752179

21762180
| Throughput | Average-size transactions | Small transactions | Per-node operation | Per-node storage | 10k-node network<br/>(first year) | 10k-node network<br/>(first year) |
21772181
| ---------: | ------------------------: | -----------------: | -----------------: | ---------------: | --------------------------------: | --------------------------------: |
2178-
| 100 TxkB/s | 67 Tx/s | 333 Tx/s | $112.99/month | $17.85/month² | $14.6M | $200k/epoch |
2179-
| 150 TxkB/s | 100 Tx/s | 500 Tx/s | $119.51/month | $26.80/month² | $15.9M | $218k/epoch |
2180-
| 200 TxkB/s | 133 Tx/s | 667 Tx/s | $128.35/month | $38.35/month² | $17.7M | $242k/epoch |
2181-
| 250 TxkB/s | 167 Tx/s | 833 Tx/s | $133.07/month | $44.61/month² | $18.6M | $255k/epoch |
2182-
| 300 TxkB/s | 200 Tx/s | 1000 Tx/s | $139.18/month | $53.20/month² | $19.9M | $272k/epoch |
2182+
| 50 TxkB/s | 33 Tx/s | 167 Tx/s | $105.97/month | $8.89/month² | $13.2M | $181k/epoch |
2183+
| 100 TxkB/s | 67 Tx/s | 333 Tx/s | $112.68/month | $17.79/month² | $14.6M | $200k/epoch |
2184+
| 150 TxkB/s | 100 Tx/s | 500 Tx/s | $119.44/month | $26.71/month² | $15.9M | $218k/epoch |
2185+
| 200 TxkB/s | 133 Tx/s | 667 Tx/s | $128.01/month | $37.91/month² | $17.6M | $241k/epoch |
2186+
| 250 TxkB/s | 167 Tx/s | 833 Tx/s | $132.56/month | $44.01/month² | $18.5M | $254k/epoch |
21832187

21842188
<em>Table 8: Operating Costs by Transaction Throughput</em>
21852189

@@ -2197,11 +2201,11 @@ listed in the table.
21972201

21982202
| Infrastructure cost | Required ADA<br/>@ $0.45/ADA | Required transactions<br/>(average size)<br/>@ $0.45/ADA | Required transactions<br/>(small size)<br/>@ $0.45/ADA |
21992203
| ------------------: | ---------------------------: | -------------------------------------------------------: | -----------------------------------------------------: |
2200-
| $14.6M/year | 444k ADA/epoch | 4.75 Tx/s | 6.19 Tx/s |
2201-
| $15.9M/year | 485k ADA/epoch | 5.17 Tx/s | 6.75 Tx/s |
2202-
| $17.7M/year | 537k ADA/epoch | 5.74 Tx/s | 7.49 Tx/s |
2203-
| $18.6M/year | 566k ADA/epoch | 6.05 Tx/s | 7.89 Tx/s |
2204-
| $19.9M/year | 605k ADA/epoch | 6.45 Tx/s | 8.42 Tx/s |
2204+
| $13.2M/year | 403k ADA/epoch | 4.30 Tx/s | 5.61 Tx/s |
2205+
| $14.6M/year | 444k ADA/epoch | 4.73 Tx/s | 6.17 Tx/s |
2206+
| $15.9M/year | 485k ADA/epoch | 5.17 Tx/s | 6.74 Tx/s |
2207+
| $17.6M/year | 536k ADA/epoch | 5.72 Tx/s | 7.46 Tx/s |
2208+
| $18.5M/year | 564k ADA/epoch | 6.02 Tx/s | 7.85 Tx/s |
22052209

22062210
<em>Table 9: Required TPS for Infrastructure Cost Coverage</em>
22072211

0 commit comments

Comments
 (0)