echo > swap_result.csv for dir in /sys/kernel/mm/transparent_hugepage/hugepages-*; do echo $dir $(cat $dir/enabled) >> swap_result.csv done echo swpoutbad,swpinbad,pagefaults,itlbmiss,dtlbmiss >> swap_result.csv for i in $(seq 1 10); do echo $i echo 3 > /proc/sys/vm/drop_caches simpleperf stat -e page-faults,dTLB-loads,dTLB-load-misses,iTLB-loads,iTLB-load-misses ./test_swap > result 2>&1 killall test_swap swpoutbad=$(cat result | grep "swp out" | awk '{print $4}' | sed 's/,//g') swpinbad=$(cat result | grep "swp in" | awk '{print $4}' | sed 's/,//g') pagefaults=$(cat result | grep page-faults | awk '{print $1}' | sed 's/,//g') itlbmiss=$(cat result | grep iTLB-load-misses | awk '{print $1}' | sed 's/,//g') dtlbmiss=$(cat result | grep dTLB-load-misses | awk '{print $1}' | sed 's/,//g') echo $pagefaults,$dtlbmiss,$itlbmiss,$swpoutbad,$swpinbad >> swap_result.csv done