Performance metrics of blockchain
Overall vs detailed performance
Overall performance (e.g., throughput, latency) can be employed to select the optimal blockchain system to fit the actual application scenario so that it is valuable for users. 1
The detailed performance provides more detailed information of the whole process which is valuable for blockchain developers to know the performance bottlenecks. 1
Overall performance metrics of blockchain
Transactions per second
Used for monitor the throughput in a period of time, which is the number of transactions per second.
During the period of time from to , the transaction per second of a peer can be calculated as followed:
The transaction throughput of N peers can be calculated by taking average as follows:
Average Response Delay
This measurement captures the gap between the time when transaction is firstly sent into the network and the time when it is confirmed (i.e., be commited in a block and the block is accepted by all peers). The average transaction response delay of a peer can be calculated by the following equation:
Transactions per CPU
This metric monitor the utilisation of the CPU when running the smart contracts. During the period of time from to , the transaction per CPU of a peer can be calculated as followed:
Where F is the frequency of a single CPU core and CPU(t) is the CPU usage of the blockchain program at the time t.
Transaction Per Memory Second
This metrics represent the utilization of memory. It is calculated by the following equation:
RMEM(t) and VMEM(t) are the real and virtual memory usage by the blockchain program at the time t.
Transactions per disk I/O
Transaction per disk I/O represents the utilization of I/O by the following equation:
Transactions per network data
The transactions per network data monitors the consumption of network flow during a period of operation of a blockchain application:
Detailed performance metrics of blockchain
Peer discovery rate
TBA
RPC Response Rate
TBA
Transaction Propagation Rate
TBA
Contract Execution Time
TBA
State Updating Time
TBA
Consensus-Cost Time
TBA
- A detailed and real-time performance monitoring framework for blockchain systems; Proceedings - International Conference on Software Engineering; 2018↩