Skip to content
This repository has been archived by the owner on Jul 5, 2024. It is now read-only.

Metrics

Tom Lichtenstein edited this page Apr 5, 2018 · 8 revisions

Metrics

The metrics are used to illustrate the properties of different blockchain technologies. They can be used to compare different chains with more comprehensible indicators.

Parameters

Parameters are values that can be measured simulating the blockchain.

Blocktime

The blocktime defines the time it takes to mine or confirm a block. This parameter can only be read.

Blocksize

The blocksize describes the size of the block stored in the blockchain.

Hashrate

The hashrate describes the number of hashes that can be calculated in a certain time span (1 sec).

Difficulty

The difficulty describes the difficulty to mine a block. It varies over time to keep the average blocktime constant. The difficulty can be set but only in the genesis block.

Transactions / Block

The number of transactions that can be stored in one block.

Chain specific overtake factor

Metrics

The metrics are values that combine parameters to be more comprehensible.

Mining Time

Depends on:

  • Blocktime

Mining Time describes the average time a block needs to be confirmed / integrated into the Blockchain. To calculate the Mining Time we will average the Blocktimes over a certain time span. The Mining Time is directly proportional to the result.

Mining Time ~ avgBlocktime

Seconds

Stability

Depends on:

  • Blocktime

Stability describes the fluctuations of the blocktime. A higher deviation between the blocktimes leads to a worse stability. The stability refers to the standard deviation of the blocktimes indirectly proportional.

Stability ~ (1 / StandardDeviation( Blocktimes ))

Seconds

Throughput

Depends on:

  • Transactions/Block

Throughput describes how many data can be processed by the blockchain within a certain time.

Throughput = (Transactions/Block) / timespan

1 / Second

OR

Depends on:

  • Blocktime
  • Blocksize

Throughput = Avg(Blocksize) / Avg(Blocktime)

KB / S

Latency

(Security)

Depends on:

  • Hashrate
  • Costs / Hash
  • Chain specific overtake factor

Security describes the difficulty to overtake the blockchain. It depends on the computing power you have to provide in combination with the percentage of nodes / computing power in the network you have to control to manipulate the chain.

Security = SpecificOvertakeValue * Avg( Hashrate ) * (costs / hash) / time

Energy consumption

Depends on:

  • Hashrate
  • Number of Miners
  • Cost per Hash = 0,098 nanoJoule/Hash

Energy consumption describes the power that is needed to run the blockchain for a specific time span.

EnergyConsumption = (Avg( Hashrate ) * NumberOfMiners) * cost/hash

Joule

Source: http://bitcoinbro.com/resources/bitcoin-mining-and-power-consumption.pdf

Latency

Depends on:

  • Deployment time
  • Completion Time

Latency = Avg(CompletionTime - DeploymentTime)

Seconds

Comparison of different blockchain technologies

Ethereum based chains

Multichain

Transaction focused chains

Metrics framework

Metrics

Other Ideas

Time to consensus

Depends on:

  • Fork length
  • Blocktime

Time to consensus describes the time it needs until everyone knows about a new information stored in the blockchain. To calculate the time to consensus we multiply the average fork length with the average blocktime, because if the blocktime increases, the time to validate your transaction in the block increases. Consensus is only possible if a block is valid. To ensure this we add the fork length dependency. If the fork length increases, the number of blocks that have to be confirmed increases.

TimeToConsensus = Avg( ForkLength ) * Avg( Blocktime )

Transactions / min

Depends on:

  • Blocktime
  • Price / Transaction
  • Reward / Confirmation

Transaction / min describes how many transactions can be stored within a minute according to the available currency, price and time to store.