Skip to content

Commit 0d86175

Browse files
Weekly Update 2025-03-10 (#258)
* site: weekly update
1 parent 7069ee8 commit 0d86175

File tree

1 file changed

+49
-0
lines changed

1 file changed

+49
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
---
2+
title: Weekly Summary – March 10, 2025
3+
authors:
4+
- will
5+
tags: [progress, update, weekly]
6+
---
7+
8+
This week saw significant progress in simulation capabilities with the successful comparison of Rust and Haskell simulations across **[90 scenarios](https://github.com/input-output-hk/ouroboros-leios/blob/weekly-update-2025-03-10/analysis/sims/2025w11/analysis.ipynb)**. We conducted our **first mainnet-scale [analysis](https://github.com/input-output-hk/ouroboros-leios/blob/weekly-update-2025-03-10/analysis/sims/2025w11xl/analysis.ipynb) of Leios** on a [mainnet-scale network](https://github.com/input-output-hk/ouroboros-leios/blob/leios-2025w11/sim-rs/test_data/realistic.yaml) of 3000 nodes, revealing unexpected performance benefits from network topology. **[Sharding performance analysis](https://github.com/input-output-hk/ouroboros-leios/blob/weekly-update-2025-03-10/analysis/shard-performance.ipynb)** provided important insights into optimization strategies. Both simulation implementations received improvements to enhance realism and comparability, while our formal methods team developed initial trace verification tools for Short Leios.
9+
10+
## Simulation comparison
11+
12+
- Compared [90 scenarios](https://github.com/input-output-hk/ouroboros-leios/blob/weekly-update-2025-03-10/analysis/sims/2025w11/analysis.ipynb) between Rust and Haskell simulations at tag [`leios-2025w11`](https://github.com/input-output-hk/ouroboros-leios/releases/tag/leios-2025w11)
13+
- Recent fixes and adjustments enabled meaningful comparison between simulations
14+
- Identified [issues](https://github.com/input-output-hk/ouroboros-leios/issues?q=is%3Aissue%20state%3Aopen%20label%3Aquestion) requiring further investigation.
15+
16+
### Analysis of mainnet-scale simulation
17+
18+
- Completed first [analysis](https://github.com/input-output-hk/ouroboros-leios/blob/weekly-update-2025-03-10/analysis/sims/2025w11xl/analysis.ipynb) of Leios on a mainnet-scale network simulation using Rust simulator
19+
- Discovered 3000-node mainnet-scale network transports IBs faster than artificial 100-node network
20+
- Identified "shortcut" edges in larger networks as likely reason for improved transport speed.
21+
22+
![In-flight time for Input Blocks (IBs)](https://github.com/input-output-hk/ouroboros-leios/blob/weekly-update-2025-03-10/analysis/sims/2025w11xl/plots/elapsed-IB-rust.png?raw=true)
23+
24+
### Performance analysis of sharding
25+
26+
- Created [computational models](https://github.com/input-output-hk/ouroboros-leios/blob/weekly-update-2025-03-10/analysis/shard-performance.ipynb) showing relationship between fraction of shards without an IB and expected number of extra IBs
27+
- Evaluated performance characteristics of the simplest sharding scheme.
28+
29+
![Performance analysis of simple sharding](https://github.com/input-output-hk/ouroboros-leios/raw/weekly-update-2025-03-10/analysis/shard-performance.svg)
30+
31+
## Haskell simulation
32+
33+
- Fixed bug in Relay protocol preventing full diffusion of votes
34+
- Changed priority of certified EB to be included in RB
35+
- Added support for output log format sharing a common subset with the Rust sim
36+
- Analyzed TCP realism in comparison to idealized diffusion
37+
- Found higher IB rate and size leads to better diffusion times
38+
- Identified ledger state access as significant source of latency.
39+
40+
## Rust simulation
41+
42+
- Added more information to logs (total size of IB, parent id of RB)
43+
- Implemented same EB selection strategy as Haskell
44+
- Added validation of IB headers before propagation to neighbors
45+
- Investigating why the simulation doesn't encounter as much congestion as Haskell.
46+
47+
## Formal methods
48+
49+
- Developed initial trace verifier for Short Leios simulation traces in `leios-trace-verifier`.

0 commit comments

Comments
 (0)