LINUX.ORG.RU

zswap — новые параметры по-умолчанию: zsmalloc, zstd (linux >= 6.3; archlinux)

 ,


1

2
CONFIG_ZSWAP_ZPOOL_DEFAULT="zsmalloc"
CONFIG_ZSWAP_COMPRESSOR_DEFAULT="zstd"

https://wiki.archlinux.org/title/zswap

Это только в Arch Linux?

Вот что показал zswap-monitor2.py:

pool: 138.8 MiB (3.6% MemTotal) | stored: 886.2 MiB (98.3% SwapUsed) | compr_ratio: 6.4

А вот здесь Zram vs Zswap. Часть 1: практика @kirill_rrr пишет

«zsmalloc должен максимально компактно располагать сжатые страницы в памяти… и не сбрасывать их на диск!»

Может в ядрах >= 6.3 другое поведение?

Ну и ещё вопрос:

Сейчас swapon показывет сжатые страницы в zswap так, как будто они занимают место на swap device.

$ swapon
NAME      TYPE SIZE   USED PRIO
/swapfile file   4G 901,5M   -2

А как на самом деле?

★★★★★

Последнее исправление: greenman (всего исправлений: 4)

Сейчас swapon показывет сжатые страницы в zswap так, как будто они занимают место на swap device.

Так будет всегда, вне зависимости от аллокатора страниц. Frontswap в корне представляет собой именно механизм перехвата страниц, уже отправляющихся в своп. Поэтому для всего, что попадает в frontswap, резервируется место в настоящем свопе, чтобы при необходимости было куда вытеснить страницу.

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 1)

Не знаю, очень любопытно, но разбираться времени нет.

Может они решили активировать его по умолчанию в малозаметном режиме, типа пусть экономит сколько получится вместо zram, а если что пользователь поправит?

kirill_rrr ★★★★★
()
Ответ на: комментарий от hakavlad

выхло такой

$ sudo python3 zswap-monitor2
[sudo] пароль для user: 
pool: 0.0 MiB (0.0% MemTotal) | stored: 0.0 MiB (0.0% SwapUsed) | compr_ratio: 0.0
pool: 0.0 MiB (0.0% MemTotal) | stored: 0.0 MiB (0.0% SwapUsed) | compr_ratio: 0.0
pool: 0.0 MiB (0.0% MemTotal) | stored: 0.0 MiB (0.0% SwapUsed) | compr_ratio: 0.0
pool: 0.0 MiB (0.0% MemTotal) | stored: 0.0 MiB (0.0% SwapUsed) | compr_ratio: 0.0
pool: 0.0 MiB (0.0% MemTotal) | stored: 0.0 MiB (0.0% SwapUsed) | compr_ratio: 0.0
^C
hakavlad ★★★
()
Ответ на: комментарий от kirill_rrr

А получается столько и занято, раз место логически зарезервировано.

Если сбрасывать нули в своп (своп на HDD), то SwapUsed БЫСТРО растет (значит диск не используется - SwapUsed означает в этом случае размер несжатых страниц). То есть да, размер занятого свопа с случае с zswap означет размер несжатых страниц, как если б zswap не использовался.

hakavlad ★★★
()