Back to News
CardanoJune 25, 20266 min read

I ran a Leios node in my homelab: this is what Cardano's throughput future feels like

Hands-on with Ouroboros Leios: setup, real throughput measurement, and the experiment of pushing my own node to its limit.

I ran a Leios node in my homelab: this is what Cardano's throughput future feels like

Cardano has carried a sticky reputation for years: "secure but slow." Ouroboros Leios is IOG's answer to the "slow" part, and there's now a public testnet to play with it — "Musashi Dōjō." I spun one up in my homelab. Here's what I saw.

What Leios is, in one sentence

Praos (Cardano's current consensus) leaves bandwidth and compute unused between blocks. Leios puts that idle capacity to work: producers create endorser blocks (EBs) — secondary blocks referencing lots of extra transactions — in parallel with the standard Praos blocks. A committee validates them with BLS cryptography before ledger inclusion. The result: far more throughput, without touching Praos's security.

The setup

One container on my Proxmox: 4 cores, 4 GB RAM, 30 GB disk. The node is a special cardano-node build (version 11.0.1.164, network magic 164). It synced in a few hours — identical to running any Cardano node. The interesting part started in the logs.

218 TPS, with 2,184-transaction blocks

I measured throughput passively, parsing the endorser blocks as they arrived (each carries a bitmap of which transactions it includes → counting bits gives the exact tx count). The peak curve:

WindowPeak TPS
10 s218 TPS
1 min73 TPS
5–10 min25–33 TPS

For comparison: the most Cardano has ever processed on mainnet (Praos) is ~12 TPS, with a theoretical ceiling near 18 and a real average below 1 TPS (source: Chainspect). The largest endorser block I saw carried 2,184 transactions at once. That's the Leios thesis working: transactions ride parallel EBs instead of trickling into 20-second blocks.

(To be honest: that load is generated by IOG's load generators, not me. The "dojo" exists precisely to stress the protocol in public.)

I became a block producer

With the faucet (10,000 testnet ADA) I registered a stake pool and restarted the node in producing mode. In ~2 days, once the stake snapshot activates, my home node will start forging endorser blocks itself. Zero cost, zero risk: it's a testnet.

I tried to push it to the limit (and failed in the interesting way)

Here's the fun part. I tried to saturate the system with my own load. Three experiments:

  • 200 transactions at once → they waited in the mempool ~34 s and a single endorser block swept them all together.
  • 1,000 at once → too many for one cycle: they spread across several EBs, and the chain absorbed them while I was still sending.
  • Max flood (2,000 txs, 80 in parallel) → I hit 557 tx/s of submission… and then something broke. But it wasn't Leios.

The node sat at 47% CPU. The mempool never even filled. What failed was my own client: at 80 parallel connections, cardano-cli exhausted local sockets and rejected 327 of the 2,000.

The takeaway: I didn't beat Leios. I beat my own laptop. The network absorbed everything I threw at it without breaking a sweat. To actually stress Leios you'd need an industrial submitter, not a home node firing one binary per transaction.

What I'm taking away

Leios isn't a paper promise: it's a node you can run today, packing thousands of transactions into secondary blocks and peaking more than an order of magnitude above Praos — with sustained throughput still above mainnet's ceiling. And it's over-provisioned for what a normal participant can throw at it. When this reaches mainnet, the ecosystem's bottleneck won't be the protocol — it'll be the tooling around it. "Slow" Cardano is on borrowed time.

Full data, scripts and methodology: github.com/amvs0122/leios-homelab-loadtest — a node in my homelab, on the Musashi Dōjō testnet, June 2026.

Share this article

Newsletter

Stay in the loop

Get the latest Cardano & Midnight news delivered to your inbox. No spam, unsubscribe anytime.