tendermint/tm-bench
ValarDragon 3b461bfbe9 tmbench: Update dependencies to use tendermint's master 2018-06-24 22:40:55 +04:00
..
Dockerfile different way to get stats (#90) 2018-05-04 16:13:42 +04:00
Dockerfile.dev [monitor/bench] fix Dockerfile.dev 2018-04-03 13:19:21 +02:00
Gopkg.lock tmbench: Update dependencies to use tendermint's master 2018-06-24 22:40:55 +04:00
Gopkg.toml tmbench: Update dependencies to use tendermint's master 2018-06-24 22:40:55 +04:00
LICENSE [tm-bench] update Makefile 2017-12-07 13:25:35 -06:00
Makefile [bench] update Makefile 2018-04-03 12:39:58 +02:00
README.md tmbench: Make tx size configurable 2018-06-23 08:26:11 +04:00
main.go tm-bench: Update dependencies, add total metrics 2018-06-23 08:26:11 +04:00
transacter.go tmbench: Make tx size configurable 2018-06-23 08:26:11 +04:00

README.md

tm-bench

Tendermint blockchain benchmarking tool:

For example, the following:

tm-bench -T 10 -r 1000 localhost:26657

will output:

Stats             Avg        Stdev      Max
Txs/sec           833        427        1326     
Blocks/sec        0.900      0.300      1

These stats are derived by sending transactions at the specified rate for the specified time. After the specified time, it iterates over all of the blocks that were created in that time. The average and stddev per second are computed based off of that, by grouping the data by second.

Quick Start

Install Tendermint

then run:

tendermint init
tendermint node --proxy_app=kvstore

tm-bench localhost:26657

with the last command being in a seperate window.

Usage

tm-bench [-c 1] [-T 10] [-r 1000] [-s 250] [endpoints]

Examples:
        tm-bench localhost:26657
Flags:
  -T int
        Exit after the specified amount of time in seconds (default 10)
  -c int
        Connections to keep open per endpoint (default 1)
  -r int
        Txs per second to send in a connection (default 1000)
  -s int
        Size per tx in bytes
  -v    Verbose output

Development

make get_vendor_deps
make test