]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
tools: Don't delete, recreate and re-fill buffers in rados bench. 4690/head
authorPiotr Dałek <piotr.dalek@ts.fujitsu.com>
Tue, 19 May 2015 11:44:21 +0000 (13:44 +0200)
committerPiotr Dałek <piotr.dalek@ts.fujitsu.com>
Tue, 19 May 2015 11:44:21 +0000 (13:44 +0200)
commitb894fc7acf7dee7f7ec8c5c280e7a6be41133328
tree8b2b4fbc3aa064b7f455fda25675f970cee97b35
parent55a6f9efbee041d041742810ca4fa8874b6191a7
tools: Don't delete, recreate and re-fill buffers in rados bench.

Fixes the high CPU usage and corrects rados bench scores on fast SSDs
and ramdisks/memstore.
For bench run on SSD, on Intel(R) Xeon(R) CPU E5-2640 v2 @ 2.00GHz
before this patch, times are:
write: real 5m0.169s, user 2m33.565s, sys 4m39.791s
seq: real 4m28.642s, user 1m35.250s, sys 6m42.948s
rand: real 5m0.258s, user 1m19.656s, sys 6m47.145s

After this patch:
write: real 5m1.162s, user 0m27.788s, sys 3m11.707s
seq: real 5m1.149s, user 2m23.278s, sys 4m14.427s
rand: real 5m1.021s, user 2m30.514s, sys 4m20.347s

Bench run: rados -p ssd bench 300 write|seq|read --no-cleanup

Note the increase in user time cpu on seq/read tests,
along with decreased sys cpu time; this is because there's
additional memcmp() that compares read objects with expected
contents. With less time spent memory juggling, more time is
spent performing more reads per second, increasing memcmp call
count and increasing amount of user cpu time used.

Signed-off-by: Piotr Dałek <piotr.dalek@ts.fujitsu.com>
src/common/obj_bencher.cc