Nano Stress Tests - Measuring BPS, CPS, & TPS in the real world

Here is a dedicated forum post for keeping track of Nano stress tests.

Year Month Day Peak Avg Env Other Src
2019 Nov 26 48 CPS 40 CPS Prod 0.4 avg conf time [1] [2]
2019 Oct 28 400 CPS 89 CPS Beta N/A [1] [2] [3]
2019 Sept 3 N/A 300 CPS Beta 170ms median conf time [1] [2]
2019 Aug 1-5 N/A 8 CPS Prod 4 day test [1] [2]
2019 Aug 3 25 CPS N/A Prod 0.5-0.7 conf times [1]
2019 Jul 10 150 CPS 138 CPS Beta N/A [1]
2019 May 24 80 TPS* N/A Beta N/A [1]
2019 April 13 N/A 40 TPS* Prod N/A [1]
2018 Aug 23 919 TPS* N/A Beta Single node peak [1] [2]
2018 Aug 17 756 TPS* 75 TPS* Beta N/A [1]
2018 Feb 2 40 TPS* N/A Prod N/A [1] [2]
2018 Jan N/A 120 TPS* 35 TPS* Prod N/A [1]
2018 Jan N/A 306 TPS* 105 TPS* Prod N/A [1]
2017 N/A N/A 7000 7000 Paper/Lab Theoretical profile [1] [2]

BPS vs CPS vs TPS

It is important to note that the CPS measurement in Nano is not the exact same thing as the TPS measurement from other cryptocurrencies; CPS/2 is a closer comparison. While Nano transactions do not require a corresponding receive transaction to be considered confirmed (irreversible), there must be a corresponding receive transaction before received funds can be spent again. From the Nano glossary:

  • BPS - Blocks Per Second, the transmission rate of unconfirmed blocks (transactions) on the network
  • CPS - Confirmations Per Second, the rate of confirmed blocks (send or receive)
  • TPS - Transactions Per Second, often used to refer to the rate of complete transactions between two parties (i.e. a send with a corresponding receive, aka CPS/2)

*In the past, TPS was a per-node measurement that represented the perceived network-level transmission rate (BPS), but this measurement was found to be somewhat inaccurate due to peering and propagation differences between nodes. The older stress tests listed in the table don't have CPS data, only the original TPS measurement (aka perceived BPS).

Additional information

While some of the weaker nodes dropped offline (as expected) during some of these stress tests, the Nano network itself stayed online and functional. One of the biggest issue with testing the production environment is typically generating enough blocks (PoW) to actually stress the network.

Remember that even just 50 TPS (100 CPS) is 4,320,000 transactions per day, and Nano can do that pretty comfortably:

Nano is doing really well imo, and I wouldn't be surprised to see a 1,000+ TPS stress test in the next few years.

5 Likes

I'll link my other post to this.

@Qwahzi Can you make an edit to the second citation link of 2019-11? It is currently scaled down and has lots of compression artifacts. The link below makes it more readable. Cheers.

https://i.imgur.com/e5sXH0a_d.jpg?maxwidth=2048&fidelity=high

2 Likes

Done, thank you for the better link!

2 Likes

Thank you for providing such a very useful summary with all the references!

2 Likes