C++ Mark's bench for Ceph
 
 
 
Go to file
Vitaliy Filippov 252e600e15 Fix "what(): map::at" for unknown osds 2022-01-24 15:33:33 +03:00
.gitignore cpp 2019-01-03 01:51:32 +05:00
LICENSE Add GPL 3.0 license 2022-01-18 11:25:28 +03:00
Makefile Add libradospp-dev 2022-01-18 01:14:57 +03:00
README.md Add GPL 3.0 license 2022-01-18 11:25:28 +03:00
main.cpp Fix "what(): map::at" for unknown osds 2022-01-24 15:33:33 +03:00
mysignals.cpp Format code 2022-01-18 01:13:03 +03:00
mysignals.h Format code 2022-01-18 01:13:03 +03:00
pool_clean.sh RBD pool cleaning command 2019-01-03 01:51:32 +05:00
radosutil.cpp Format code 2022-01-18 01:13:03 +03:00
radosutil.h Format code 2022-01-18 01:13:03 +03:00

README.md

C++ version of the "Mark's bench" for Ceph

This tool issues random writes to each OSD separately to determine random write performance of each specific OSD.

Usage

# Create a non-replicated pool named bench
# PG number (16) should be sufficient for each OSD to get at least 1 PG
ceph osd pool create bench 16 16 replicated
ceph osd pool set bench size 1

# Benchmark all OSDs which have at least 1 PG in that pool
./ceph-bench bench osd

# Benchmark hosts (print average result per host)
./ceph-bench bench host

# Benchmark a specific OSD
./ceph-bench bench osd 1

Building

git clone https://github.com/vitalif/ceph-bench

cd ceph-bench

apt-get install build-essential libradospp-dev libjsoncpp-dev libtcmalloc-minimal4

make

See Also

Authors and License

Authors:

  • Mark Korenberg (mark [at] ideco.ru)
  • Vitaliy Filippov (vitalif [at] yourcmc.ru)

License:

  • GNU GPL 3.0 or later (see LICENSE)