이것zswap 문서설명하다:
Zswap seeks to be simple in its policies. Sysfs attributes allow for one user controlled policy: * max_pool_percent - The maximum percentage of memory that the compressed pool can occupy.
이는 다음을 지정합니다.최고압축 풀이 차지할 수 있는 메모리 비율입니다.
내가 어떻게 알아:
- 이것현재의압축 풀이 차지하는 메모리 비율
- 이 풀에서 사용 중인 공간의 양
- 압축률, 적중률 및 기타 유용한 정보
답변1
현재 통계:
# grep -R . /sys/kernel/debug/zswap/
압축 비율:
# cd /sys/kernel/debug/zswap
# perl -E "say $(cat stored_pages) * 4096 / $(cat pool_total_size)"
현재 설정:
$ grep -R . /sys/module/zswap
답변2
만들다/usr/local/bin/zswap콘텐츠:
#!/bin/bash
MDL=/sys/module/zswap
DBG=/sys/kernel/debug/zswap
PAGE=$[`cat $DBG/stored_pages`*4096]
POOL=$[`cat $DBG/pool_total_size`]
Show(){
printf "========\n$1\n========\n"
grep -R . $2 2>&1 | sed 's|.*/||'
}
Show Settings $MDL
Show Stats $DBG
printf "\nCompression ratio: "
[ $POOL -gt 0 ] && {
echo "scale=3;$PAGE/$POOL" | bc
} || echo zswap disabled
파일을 실행 가능하게 만듭니다(# chmod 755 /usr/local/bin/zswap) 그리고 시작하세요. 예:
# zswap
========
Settings
========
uevent: Permission denied
same_filled_pages_enabled:Y
enabled:Y
max_pool_percent:20
compressor:zstd
zpool:zbud
accept_threshold_percent:90
========
Stats
========
same_filled_pages:72227
stored_pages:394760
pool_total_size:660660224
duplicate_entry:0
written_back_pages:0
reject_compress_poor:345
reject_kmemcache_fail:0
reject_alloc_fail:0
reject_reclaim_fail:0
pool_limit_hit:0
Compression ratio: 2.447