summaryrefslogtreecommitdiffstats
path: root/src/test/memuse/test_written_pool_memuse_tcmalloc.sh
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/memuse/test_written_pool_memuse_tcmalloc.sh')
-rwxr-xr-xsrc/test/memuse/test_written_pool_memuse_tcmalloc.sh54
1 files changed, 54 insertions, 0 deletions
diff --git a/src/test/memuse/test_written_pool_memuse_tcmalloc.sh b/src/test/memuse/test_written_pool_memuse_tcmalloc.sh
new file mode 100755
index 000000000..3453aabdd
--- /dev/null
+++ b/src/test/memuse/test_written_pool_memuse_tcmalloc.sh
@@ -0,0 +1,54 @@
+#!/bin/sh -x
+
+set -e
+
+num_osd=$2
+maxosd=$((num_osd-1))
+
+eval "rm out/*.heap" || echo "no heap dumps to rm"
+
+mkdir -p out/pg_stable
+for osd_num in `seq 0 $maxosd`; do
+ ./ceph osd tell $osd_num heapdump
+ sleep 1
+ eval "mv out/*.heap out/pg_stable"
+done
+
+
+for i in `seq 0 $1`; do
+ for j in `seq 0 9`; do
+ poolnum=$((i*10+j))
+ poolname="pool$poolnum"
+ ./rados -p $poolname bench 1 write -t 1 &
+ done
+ wait
+done
+
+eval "rm out/*.heap" || echo "no heap dumps to rm"
+mkdir out/one_write
+
+for osd_num in `seq 0 $maxosd`; do
+ ./ceph osd tell $osd_num heapdump
+ sleep 1
+ eval "mv out/*.heap out/one_write"
+done
+
+
+for i in `seq 0 $1`; do
+ for j in `seq 0 9`; do
+ poolnum=$((i*10+j))
+ poolname="pool$poolnum"
+ ./rados -p $poolname bench 1 write -t 4 &
+ done
+ wait
+done
+
+eval "rm out/*.heap"
+mkdir out/five_writes
+
+for osd_num in `seq 0 $maxosd`; do
+ ./ceph osd tell $osd_num heapdump
+ sleep 1
+ eval "mv out/*.heap out/five_writes"
+done
+