Neo SPCC has released the results from its final round of benchmarking for the N3 milestone release. The tests, following the same single and four node setups as before, reveal that both the core team’s C# node and Neo SPCC’s Go node have achieved significant throughput improvements since Preview4.

Hardware remained consistent since the last round of testing, using a Ryzen 9 5950X with 64GB RAM and an SSD. However, the neo-bench tool itself did receive some optimizations intended to reduce its impact on CPU resources, which were beginning to affect results.

The single-node test bench uses a one second block size, resulting in a maximum possible TPS of 50,000. Results from the benchmark showed significant performance increases for both the C# and Go nodes since Preview4.

Average TPS in single node tests (Source: Neo SPCC)

In Preview4, NeoGo achieved an average of 10,300 TPS, while C# achieved 3,100. With the upgrades in the final release, the nodes reached new heights of 30,300 and 7,900 respectively.

The four-node tests use five second blocks, resulting in a theoretical limit of 10k TPS at the maximum block size. In Preview4, the NeoGo and C# nodes reached an average of 1,750 and 600 TPS respectively.

Average TPS in four node test (Source: Neo SPCC)

With the final N3 release, both nodes demonstrate far improved throughput. The core client managed to achieve a peak of over 5,000 TPS, however issues in processing blocks of 50,000 transactions (the whole mempool) caused drops which brought the final average down to around 1,000, still doubling the relative performance since Preview4.

In contrast, after a brief delay at the start of the test run, the NeoGo network ramps up to almost the maximum 10,000 transactions per second, resulting in a stable average of 8,800 by the end of the test.

The full benchmarking report from Neo SPCC can be read at the following link:
https://neospcc.medium.com/benchmarking-neo-n3-final-4356af1ef4eb