LINUX.ORG.RU

Почему zram не используют везде?

 , ,


0

2

Почитал по zram, мол мастхэв для убогих компьютеров, поставил, настроил, пока своего мнения ещё не заимел на этот счёт. Но вот вопрос возник, если zram по сути жмёт данные в части памяти и алгоритмы там не прожорливые, почему его советуют только для слабых устройств, а не засунут в ядро по дефолту? Ведь памяти никогда не бывает много, ну и жать он начинает, когда значительная часть уже забита?

Deleted

Потому что zram/zswap - не серебряная пуля и имеет свои недостатки. На системах со слабым процом он скорее в минус чем в плюс.

Например, у меня на ноутбуке (с Celeron N2840) с включенным zram/zswap + lz4 во время игры начинаются микрофризы, когда память заканчивается и начинается ее сжатие, ибо проц и так на максимум загружен, а тут еще и доп. нагрузка в виде сжатия. Зато с обычным дисковым swap'ом без сжатия никаких фризов нет.

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

Потому что не везде он нужен.

Ну как же? Ведь жмёт данные (экономит память) и делает это быстро? Чем плохо делать это по-дефолту? Всяко быстрее, чем сброс данных в своп.

Deleted
()
Ответ на: комментарий от Kron4ek

На системах со слабым процом он скорее в минус чем в плюс.

Я могу ошибаться, но мне кажется, что обычно ситуация диаметрально противоположная - проц нормальный, а вот память выжрала какая-нибудь джава или электрон.

Например, у меня на ноутбуке (с Celeron N2840) с включенным zram/zswap + lz4 во время игры начинаются микрофризы, когда память заканчивается и начинается ее сжатие, ибо проц и так на максимум загружен, а тут еще и доп. нагрузка в виде сжатия. Зато с обычным дисковым swap'ом без сжатия никаких фризов нет.

А как так то? Ведь, по идее, со свопом должны быть не микро-, а макрофризы.

Deleted
()
Ответ на: комментарий от Deleted

Если проц нормальный и обычно не загружен полностью, то zram/zswap будет в пользу. А иначе эта лишняя нагрузка в виде сжатия памяти будет приводить к фризам. Мы же не магию используем, а всего лишь понижаем дисковое I/O в обмен на повышенную нагрузку на проц.

Ведь, по идее, со свопом должны быть не микро-, а макрофризы.

Зависит от того, насколько сильно своп используется. В своп в первую очередь выгружаются неиспользуемые данные и никаких фризов он не создает, пока к ним не начнется обращение. Конечно, если дисковый своп начнет интенсивно использоваться, то система зависнет на N минут.

Как я говорю, на ноутбуке у меня во время игры никаких фризов обычный дисковый своп не создает, в отличие от zram/zswap. После выхода из игры, да, DE и программы, которые были выгружены в своп, медленно достаются оттуда, но они мне во время игры и не были нужны.

Kron4ek ★★★★★
()
Последнее исправление: Kron4ek (всего исправлений: 1)
Ответ на: комментарий от Deleted

проц нормальный, а вот память выжрала какая-нибудь джава или электрон.

Если у тебя так, то тебе сжатие памяти явно поможет.

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

во время игры начинаются микрофризы, когда память заканчивается и начинается ее сжатие

Ну фиг знает. Я давно использую комбо KSM+zRam и особых проблем не вижу.
Правда у меня шедулер BFS.

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

Зато с обычным дисковым swap’ом без сжатия никаких фризов нет.

Значит своп не используется в этот момент, потому что если бы память кончилась и он начал использоваться, вся система бы встала раком.

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

Потому что у тебя явно не Celeron N2840. Ну или у тебя проц просто не загружен на максимум в моменты сжатия.

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

Kron4ek ★★★★★
()
Последнее исправление: Kron4ek (всего исправлений: 1)
Ответ на: комментарий от Im_not_a_robot

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

Ясное дело, что она встала бы раком, если бы он начал интенсивно использоваться. Я об этом и написал.

А так у меня туда просто выгрузились неиспользуемые данные (около 400 Мб).

Kron4ek ★★★★★
()
Последнее исправление: Kron4ek (всего исправлений: 1)
Ответ на: комментарий от Kron4ek

у меня он как раз на максимум загружен и не может принять доп. нагрузку.

Проблемы шедулера. Хотя этого двухядерного калеку только могила исправит.

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

Хотя этого двухядерного калеку только могила исправит.

Именно. Шедуеры на таком днищенском железе не помогают особо, я пробовал PDS-mq.

Kron4ek ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.