From a2f0cd0d7b8370315e34b550a927fae5c8e1096a Mon Sep 17 00:00:00 2001 From: Greg Farnum Date: Wed, 16 Feb 2011 13:01:34 -0800 Subject: [PATCH] test: Add new memory tests, move to own subdir. Signed-off-by: Greg Farnum --- src/test/{ => memuse}/test_pool_memuse.sh | 2 +- src/test/memuse/test_pool_memuse_tcmalloc.sh | 25 +++++++++ src/test/memuse/test_written_pool_memuse.sh | 12 +++++ .../test_written_pool_memuse_tcmalloc.sh | 54 +++++++++++++++++++ 4 files changed, 92 insertions(+), 1 deletion(-) rename src/test/{ => memuse}/test_pool_memuse.sh (75%) create mode 100755 src/test/memuse/test_pool_memuse_tcmalloc.sh create mode 100755 src/test/memuse/test_written_pool_memuse.sh create mode 100755 src/test/memuse/test_written_pool_memuse_tcmalloc.sh diff --git a/src/test/test_pool_memuse.sh b/src/test/memuse/test_pool_memuse.sh similarity index 75% rename from src/test/test_pool_memuse.sh rename to src/test/memuse/test_pool_memuse.sh index 6ef3940aa4686..878cc6175c3d5 100755 --- a/src/test/test_pool_memuse.sh +++ b/src/test/memuse/test_pool_memuse.sh @@ -7,7 +7,7 @@ set -e -CEPH_NUM_MON=1 CEPH_NUM_MDS=1 CEPH_NUM_OSD=1 ./vstart.sh -n -d --valgrind_osd 'massif' +CEPH_NUM_MON=1 CEPH_NUM_MDS=1 CEPH_NUM_OSD=$2 ./vstart.sh -n -d --valgrind_osd 'massif' for i in `seq 0 $1`; do for j in `seq 0 9`; do diff --git a/src/test/memuse/test_pool_memuse_tcmalloc.sh b/src/test/memuse/test_pool_memuse_tcmalloc.sh new file mode 100755 index 0000000000000..d5e7ccdc00934 --- /dev/null +++ b/src/test/memuse/test_pool_memuse_tcmalloc.sh @@ -0,0 +1,25 @@ +#! /bin/sh -x + +# +# Create a bunch of pools in parallel +# This test isn't very smart -- run it from your src dir. +# + +set -e + +CEPH_NUM_MON=1 CEPH_NUM_MDS=1 CEPH_NUM_OSD=$2 ./vstart.sh -n -d + +num_osd=$2 +maxosd=$((num_osd-1)) +for osd_num in `seq 0 $maxosd`; do + ./ceph osd tell $osd_num start_profiler +done + +for i in `seq 0 $1`; do + for j in `seq 0 9`; do + poolnum=$((i*10+j)) + poolname="pool$poolnum" + ./rados mkpool $poolname & + done + wait +done diff --git a/src/test/memuse/test_written_pool_memuse.sh b/src/test/memuse/test_written_pool_memuse.sh new file mode 100755 index 0000000000000..db5ece7317786 --- /dev/null +++ b/src/test/memuse/test_written_pool_memuse.sh @@ -0,0 +1,12 @@ +#! /bin/sh -x + +set -e + +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 \ No newline at end of file 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 0000000000000..3453aabdddb53 --- /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 + -- 2.39.5