68 lines
1.9 KiB
Bash
Executable File
68 lines
1.9 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
prog=profile-zpios-post.sh
|
|
. ../.script-config
|
|
|
|
RUN_POST=${0}
|
|
RUN_PHASE=${1}
|
|
RUN_LOG_DIR=${2}
|
|
RUN_ID=${3}
|
|
RUN_POOL=${4}
|
|
RUN_CHUNK_SIZE=${5}
|
|
RUN_REGION_SIZE=${6}
|
|
RUN_THREAD_COUNT=${7}
|
|
RUN_REGION_COUNT=${8}
|
|
RUN_OFFSET=${9}
|
|
RUN_REGION_NOISE=${10}
|
|
RUN_CHUNK_NOISE=${11}
|
|
RUN_THREAD_DELAY=${12}
|
|
RUN_FLAGS=${13}
|
|
RUN_RESULT=${14}
|
|
|
|
PROFILE_ZPIOS_PIDS_BIN=${TOPDIR}/scripts/profile-zpios-pids.sh
|
|
PROFILE_ZPIOS_PIDS_LOG=${RUN_LOG_DIR}/${RUN_ID}/pids-summary.csv
|
|
|
|
PROFILE_ZPIOS_DISK_BIN=${TOPDIR}/scripts/profile-zpios-disk.sh
|
|
PROFILE_ZPIOS_DISK_LOG=${RUN_LOG_DIR}/${RUN_ID}/disk-summary.csv
|
|
|
|
PROFILE_ZPIOS_ARC_LOG=${RUN_LOG_DIR}/${RUN_ID}/arcstats
|
|
PROFILE_ZPIOS_VDEV_LOG=${RUN_LOG_DIR}/${RUN_ID}/vdev_cache_stats
|
|
|
|
KERNEL_BIN="/lib/modules/`uname -r`/kernel/"
|
|
SPL_BIN="${SPLBUILD}/modules/spl/"
|
|
ZFS_BIN="${ZFSBUILD}/lib/"
|
|
|
|
OPROFILE_SHORT_ARGS="-a -g -l -p ${KERNEL_BIN},${SPL_BIN},${ZFS_BIN}"
|
|
OPROFILE_LONG_ARGS="-d -a -g -l -p ${KERNEL_BIN},${SPL_BIN},${ZFS_BIN}"
|
|
|
|
OPROFILE_LOG=${RUN_LOG_DIR}/${RUN_ID}/oprofile.txt
|
|
OPROFILE_SHORT_LOG=${RUN_LOG_DIR}/${RUN_ID}/oprofile-short.txt
|
|
OPROFILE_LONG_LOG=${RUN_LOG_DIR}/${RUN_ID}/oprofile-long.txt
|
|
PROFILE_PID=${RUN_LOG_DIR}/${RUN_ID}/pid
|
|
|
|
if [ "${RUN_PHASE}" != "post" ]; then
|
|
exit 1
|
|
fi
|
|
|
|
# opcontrol --stop >>${OPROFILE_LOG} 2>&1
|
|
# opcontrol --dump >>${OPROFILE_LOG} 2>&1
|
|
|
|
kill -s SIGHUP `cat ${PROFILE_PID}`
|
|
rm -f ${PROFILE_PID}
|
|
|
|
# opreport ${OPROFILE_SHORT_ARGS} >${OPROFILE_SHORT_LOG} 2>&1
|
|
# opreport ${OPROFILE_LONG_ARGS} >${OPROFILE_LONG_LOG} 2>&1
|
|
|
|
# opcontrol --deinit >>${OPROFILE_LOG} 2>&1
|
|
|
|
cat /proc/spl/kstat/zfs/arcstats >${PROFILE_ZPIOS_ARC_LOG}
|
|
cat /proc/spl/kstat/zfs/vdev_cache_stats >${PROFILE_ZPIOS_VDEV_LOG}
|
|
|
|
# Summarize system time per pid
|
|
${PROFILE_ZPIOS_PIDS_BIN} ${RUN_LOG_DIR} ${RUN_ID} >${PROFILE_ZPIOS_PIDS_LOG}
|
|
|
|
# Summarize per device performance
|
|
${PROFILE_ZPIOS_DISK_BIN} ${RUN_LOG_DIR} ${RUN_ID} >${PROFILE_ZPIOS_DISK_LOG}
|
|
|
|
exit 0
|