39 lines
1.4 KiB
Bash
39 lines
1.4 KiB
Bash
|
|
echo always > /sys/kernel/mm/transparent_hugepage/hugepages-64kB/enabled
|
||
|
|
|
||
|
|
tmpfile=$(mktemp)
|
||
|
|
|
||
|
|
pgfault1=$(cat /proc/vmstat | grep pgfault | awk '{print $2}')
|
||
|
|
|
||
|
|
./test_swap > $tmpfile
|
||
|
|
|
||
|
|
pgfault2=$(cat /proc/vmstat | grep pgfault | awk '{print $2}')
|
||
|
|
|
||
|
|
swapout=$(head -n 1 $tmpfile | awk '{print $4}')
|
||
|
|
swapin=$(tail -n 1 $tmpfile | awk '{print $4}')
|
||
|
|
|
||
|
|
cat /sys/block/zram0/mm_stat > $tmpfile
|
||
|
|
|
||
|
|
total_size=$(cat $tmpfile | awk '{print $1}')
|
||
|
|
used_size=$(cat $tmpfile | awk '{print $2}')
|
||
|
|
comp_ratio=`echo "scale=4; $total_size / $used_size" | bc`
|
||
|
|
|
||
|
|
|
||
|
|
anon_fault_alloc=$(cat /sys/kernel/mm/transparent_hugepage/hugepages-64kB/stats/anon_fault_alloc)
|
||
|
|
anon_fault_fallback=$(cat /sys/kernel/mm/transparent_hugepage/hugepages-64kB/stats/anon_fault_fallback)
|
||
|
|
anon_total=$(($anon_fault_fallback + $anon_fault_alloc))
|
||
|
|
folio_alloc_success_ratio=`echo "scale=4; $anon_fault_alloc / $anon_total" | bc`
|
||
|
|
|
||
|
|
swpout_alloc=$(cat /sys/kernel/mm/transparent_hugepage/hugepages-64kB/stats/swpout)
|
||
|
|
swpout_fault_fallback=$(cat /sys/kernel/mm/transparent_hugepage/hugepages-64kB/stats/swpout_fallback)
|
||
|
|
swpout_total=$(($swpout_fault_fallback + $swpout_alloc))
|
||
|
|
swap_success_ratio=`echo "scale=4; $swpout_alloc / $swpout_total" | bc`
|
||
|
|
|
||
|
|
echo swapout $swapout
|
||
|
|
echo swapin $swapin
|
||
|
|
echo comp_ratio $comp_ratio
|
||
|
|
echo pagefault $((pgfault2-pgfault1))
|
||
|
|
echo folio_alloc_success_ratio $folio_alloc_success_ratio
|
||
|
|
echo swap_success_ratio $swap_success_ratio
|
||
|
|
|
||
|
|
killall test_swap
|