]> git.proxmox.com Git - mirror_zfs-debian.git/commitdiff
Add lustre zpios-test workload
authorBrian Behlendorf <behlendorf1@llnl.gov>
Fri, 5 Nov 2010 19:29:58 +0000 (12:29 -0700)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Mon, 8 Nov 2010 22:03:36 +0000 (14:03 -0800)
The lustre zpios-test simulates a reasonable lustre workload.  It will
create 128 threads, the same as a Lustre OSS, and then 4096 individual
objects.  Each objects is 16MiB in size and will be written/read in 1MiB
from a random thread.  This is fundamentally how we expect Lustre to behave
for large IO intensive workloads.

scripts/zpios-test/Makefile.am
scripts/zpios-test/Makefile.in
scripts/zpios-test/lustre.sh [new file with mode: 0644]

index 07fd3e279c36520cc2b9b395833714c112727286..54935b4f81f9d9dcd7e5c8089eb66d5397940f9b 100644 (file)
@@ -1,15 +1,16 @@
 pkglibexecdir = $(libexecdir)/@PACKAGE@/zpios-test
 dist_pkglibexec_SCRIPTS = \
-        $(top_srcdir)/scripts/zpios-test/16th-8192rc-4rs-1cs-4off.sh \
-        $(top_srcdir)/scripts/zpios-test/1th-16rc-4rs-1cs-4off.sh \
-        $(top_srcdir)/scripts/zpios-test/1x256th-65536rc-4rs-1cs-4off.sh \
-        $(top_srcdir)/scripts/zpios-test/256th-65536rc-4rs-1cs-4off.sh \
-        $(top_srcdir)/scripts/zpios-test/4th-1024rc-4rs-1cs-4off.sh \
-        $(top_srcdir)/scripts/zpios-test/large.sh \
-        $(top_srcdir)/scripts/zpios-test/large-thread-survey.sh \
-        $(top_srcdir)/scripts/zpios-test/medium.sh \
-        $(top_srcdir)/scripts/zpios-test/small.sh \
-        $(top_srcdir)/scripts/zpios-test/tiny.sh
+       $(top_srcdir)/scripts/zpios-test/16th-8192rc-4rs-1cs-4off.sh \
+       $(top_srcdir)/scripts/zpios-test/1th-16rc-4rs-1cs-4off.sh \
+       $(top_srcdir)/scripts/zpios-test/1x256th-65536rc-4rs-1cs-4off.sh \
+       $(top_srcdir)/scripts/zpios-test/256th-65536rc-4rs-1cs-4off.sh \
+       $(top_srcdir)/scripts/zpios-test/4th-1024rc-4rs-1cs-4off.sh \
+       $(top_srcdir)/scripts/zpios-test/large.sh \
+       $(top_srcdir)/scripts/zpios-test/large-thread-survey.sh \
+       $(top_srcdir)/scripts/zpios-test/medium.sh \
+       $(top_srcdir)/scripts/zpios-test/small.sh \
+       $(top_srcdir)/scripts/zpios-test/tiny.sh \
+       $(top_srcdir)/scripts/zpios-test/lustre.sh
 
 all:
        @list='$(dist_pkglibexec_SCRIPTS)'; \
index 4101feb85bb40a19b55985c0be8b45a3cefe1394..dcd0fcaccc2d35219168f49a5742c5e3f1cc967b 100644 (file)
@@ -273,16 +273,17 @@ top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
 dist_pkglibexec_SCRIPTS = \
-        $(top_srcdir)/scripts/zpios-test/16th-8192rc-4rs-1cs-4off.sh \
-        $(top_srcdir)/scripts/zpios-test/1th-16rc-4rs-1cs-4off.sh \
-        $(top_srcdir)/scripts/zpios-test/1x256th-65536rc-4rs-1cs-4off.sh \
-        $(top_srcdir)/scripts/zpios-test/256th-65536rc-4rs-1cs-4off.sh \
-        $(top_srcdir)/scripts/zpios-test/4th-1024rc-4rs-1cs-4off.sh \
-        $(top_srcdir)/scripts/zpios-test/large.sh \
-        $(top_srcdir)/scripts/zpios-test/large-thread-survey.sh \
-        $(top_srcdir)/scripts/zpios-test/medium.sh \
-        $(top_srcdir)/scripts/zpios-test/small.sh \
-        $(top_srcdir)/scripts/zpios-test/tiny.sh
+       $(top_srcdir)/scripts/zpios-test/16th-8192rc-4rs-1cs-4off.sh \
+       $(top_srcdir)/scripts/zpios-test/1th-16rc-4rs-1cs-4off.sh \
+       $(top_srcdir)/scripts/zpios-test/1x256th-65536rc-4rs-1cs-4off.sh \
+       $(top_srcdir)/scripts/zpios-test/256th-65536rc-4rs-1cs-4off.sh \
+       $(top_srcdir)/scripts/zpios-test/4th-1024rc-4rs-1cs-4off.sh \
+       $(top_srcdir)/scripts/zpios-test/large.sh \
+       $(top_srcdir)/scripts/zpios-test/large-thread-survey.sh \
+       $(top_srcdir)/scripts/zpios-test/medium.sh \
+       $(top_srcdir)/scripts/zpios-test/small.sh \
+       $(top_srcdir)/scripts/zpios-test/tiny.sh \
+       $(top_srcdir)/scripts/zpios-test/lustre.sh
 
 all: all-am
 
diff --git a/scripts/zpios-test/lustre.sh b/scripts/zpios-test/lustre.sh
new file mode 100644 (file)
index 0000000..e02df22
--- /dev/null
@@ -0,0 +1,66 @@
+#!/bin/bash
+#
+# Usage: zpios
+#        --threadcount       -t    =values
+#        --threadcount_low   -l    =value
+#        --threadcount_high  -h    =value
+#        --threadcount_incr  -e    =value
+#        --regioncount       -n    =values
+#        --regioncount_low   -i    =value
+#        --regioncount_high  -j    =value
+#        --regioncount_incr  -k    =value
+#        --offset            -o    =values
+#        --offset_low        -m    =value
+#        --offset_high       -q    =value
+#        --offset_incr       -r    =value
+#        --chunksize         -c    =values
+#        --chunksize_low     -a    =value
+#        --chunksize_high    -b    =value
+#        --chunksize_incr    -g    =value
+#        --regionsize        -s    =values
+#        --regionsize_low    -A    =value
+#        --regionsize_high   -B    =value
+#        --regionsize_incr   -C    =value
+#        --load              -L    =dmuio|ssf|fpp
+#        --pool              -p    =pool name
+#        --name              -M    =test name
+#        --cleanup           -x
+#        --prerun            -P    =pre-command
+#        --postrun           -R    =post-command
+#        --log               -G    =log directory
+#        --regionnoise       -I    =shift
+#        --chunknoise        -N    =bytes
+#        --threaddelay       -T    =jiffies
+#        --verify            -V
+#        --zerocopy          -z
+#        --nowait            -O
+#        --human-readable    -H
+#        --verbose           -v    =increase verbosity
+#        --help              -?    =this help
+
+ZPIOS_CMD="${ZPIOS}                                              \
+       --load=dmuio,fpp                                         \
+       --pool=${ZPOOL_NAME}                                     \
+       --name=${ZPOOL_DESC}                                     \
+       --threadcount=128                                        \
+       --regioncount=4096                                       \
+       --regionsize=16M                                         \
+       --chunksize=1M                                           \
+       --offset=0M                                              \
+       --threaddelay=0                                          \
+       --cleanup                                                \
+       --human-readable                                         \
+       ${ZPIOS_OPTIONS}"
+
+zpios_start() {
+       if [ ${VERBOSE} ]; then
+               ZPIOS_CMD="${ZPIOS_CMD} --verbose"
+               echo ${ZPIOS_CMD}
+       fi
+
+       ${ZPIOS_CMD} || exit 1
+}
+
+zpios_stop() {
+       [ ${VERBOSE} ] && echo
+}