summaryrefslogtreecommitdiffstats
path: root/src/test/memuse/test_written_pool_memuse_tcmalloc.sh
blob: 3453aabdddb53a9ec54be559c14a1b8c4cf46200 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
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