Inspired to post by the latest testnet results there are 2 observations about performance.
1. Factomd seems to be IO bound, maxing out a network will never max out the CPU of a single node.
I take this to mean that there is still room to improve.
2. On mainnet - we don't see the expected # of duplicate messages (from the point of view of a single node).
Essentially this means the gossip protocol performs differently on a larger network.
Need to find the actual data again - it was somthing like we expected a given node to see 6 coppies of a message, but we only see 4 on mainnet.
While in simulation we see the 'expected' number.
Comparison to smaller networks:
In a very controlled environment - running a 5 Node network on underpowered (n1-standard1) nodes - stable performance peaks at40 61 TPS
If I boosted the same machines to 4 vcpus (n1-standard-4) - the network maxes out at 93 TPS
Test output https://gist.github.com/stackdump/07ed7ec0b8fb35a005e53f88417dad00 (from run with highest load)
1. Factomd seems to be IO bound, maxing out a network will never max out the CPU of a single node.
I take this to mean that there is still room to improve.
2. On mainnet - we don't see the expected # of duplicate messages (from the point of view of a single node).
Essentially this means the gossip protocol performs differently on a larger network.
Need to find the actual data again - it was somthing like we expected a given node to see 6 coppies of a message, but we only see 4 on mainnet.
While in simulation we see the 'expected' number.
Comparison to smaller networks:
In a very controlled environment - running a 5 Node network on underpowered (n1-standard1) nodes - stable performance peaks at
If I boosted the same machines to 4 vcpus (n1-standard-4) - the network maxes out at 93 TPS
Test output https://gist.github.com/stackdump/07ed7ec0b8fb35a005e53f88417dad00 (from run with highest load)
Last edited: