LINUX.ORG.RU
ФорумTalks

Вышел low-memory-monitor 2.0

 


0

2

Вышел low-memory-monitor 2.0 - https://gitlab.freedesktop.org/hadess/low-memory-monitor/ - юзерспейсный обработчик нехватки памяти. Способен отправлять сигналы через dbus приложениям о нехватки памяти, чтобы те снизили использование памяти. Способен реагировать на метрики PSI и вызывать ядерного киллера.

Известные проблемы: убивает всё и сразу: https://gitlab.freedesktop.org/hadess/low-memory-monitor/issues/8 плюс там видео демо earlyoom vs LMM с безупречной победой earlyoom.

LMM доступен COPR https://copr.fedorainfracloud.org/coprs/atim/low-memory-monitor/ для пользователей Федора.

Напоминаю, что LMM конкурирует за возможность поставки в Федора по умолчанию: https://pagure.io/fedora-workstation/issue/98

★★★
Ответ на: комментарий от trynoval

Должно, но не занимается. - https://www.opennet.ru/opennews/art.shtml?num=51231

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

https://news.ycombinator.com/item?id=20622465

Юзерспейсные обработчики способны значительно улучшить ситуацию без особых усилий со стороны пользователя.

Менеджментом памяти должно заниматься ядро

Если у человека отсутствует здоровая и необходимая функциональность, например человек не может ходить - то пусть лучше ходит на костылях, чем беспомощно лежит. Костыли - это необходимое лекарство.

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

Linux просто не настольная операционная система

Linux это не ОС, это ядро - программа, которая инициализирует и управляет системными ресурсами, предоставляет пользователю возможность использования этих ресурсов в своих целях(гуи, звук, графика, 3д, бд, серверы приложений и т.д.).
набейте на своей жёпке набивку - «Linux is a kernel, not OS», «named Gnu/Linux distribution - kernel + software(GNU, in this case) = truly OS»

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

Ты как современные врачи - вместо того чтобы вылечить причину, продаем тонны таблеток от следствия.

Необходимое лекарство - звездюли разработчикам ядра, а скоро при сохранении нынешней тенденции и до необходимости пилить новое ядро дойдет.

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

Необходимое лекарство - звездюли разработчикам ядра

Все вы так говорите, но где результат? В 2019 нерутовый процесс может повесить систему просто потихоньку протекая.

Я не могу отвесить звездюлей ядерщикам, но в моих силах говнокодить на питоне. И этот говнокодинг на самом деле достаточно хорошо помогает решать проблему:

  • nohang prevents Out Of Memory with GUI notifications: https://youtu.be/ChTNu9m7uMU (just old demo without swap space).
  • nohang prevents Out Of Memory with GUI notifications: https://youtu.be/UCwZS5uNLu0 (running multiple fast memory hogs at the same time without swap space).
  • nohang prevents Out Of Memory with GUI notifications: https://youtu.be/PLVWgNrVNlc (opening multiple chromium tabs with 2.3 GiB memory and 1.8 GiB swap space on zram).
hakavlad ★★★
() автор топика
Ответ на: комментарий от hakavlad

Посмотрим правде в глаза, Linux просто не настольная операционная система.

Тем временем на винде зависает UI при большой нагрузке на проц. Так себе десктоп ОС.

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

Я не знач то там на дебиан и что за патч, но на моей генте всё ок.

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

Все вы так говорите, но где результат?

Разницу между говорить и делать знаешь?

Я не могу отвесить звездюлей ядерщикам, но в моих силах говнокодить на питоне. И этот говнокодинг на самом деле достаточно хорошо помогает решать проблему:

Только это не решение проблемы, а засирание системы ненужными костылями. Ты делаешь ровно то говно, которое хотят дяди сломавшие планировщик памяти в ядре. Ставь тогда сразу дрисняточку, там уже всё готовое.

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

засирание системы ненужными костылями

Это необходимые костыли в условиях невозможности установки бионического протеза.

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

Ты делаешь ровно то говно, которое хотят дяди сломавшие планировщик памяти в ядре

Я делаю ровно то, что решает проблему. Проблема состоит в неспособности системы вовремя отреагировать на нехвавтку памяти и не зависнуть. Юзерспейсный демон полностью проблему решил.

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

Это необходимые костыли в условиях невозможности установки бионического протеза.

Нет. Проблему в ядре решить можно, и достаточно легко. Но вопрос надо продолжать поднимать.

Как альтернативу дриснятки могу предложить поставить себе Федору вместо линукса. Тогда ты в полной мере осознаешь какой ГНОМ копрошапка из десктопного линукса делает.

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

нехвавтку памяти и не зависнуть.

Дебилы, блин. Вам уже вкорячили svchost-systemd вместо системы инициализации. В него же сейчас собираются впилить юзерспейсный планировщик памяти. Вместо того чтобы дерьмо с корнем выкинуть будем костылять парашу всякую.

Ещё раз спрашиваю: нафига тебе операционная система здорового человека, когда ты занимаешься костылестроением типичного вантузятника? В чем, спрашивается, отличие?

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

нафига тебе операционная система здорового человека

Не могу назвать здоровой операционную систему, которая повисает при нехватке памяти. Это не здоровая система, а глубоко больная. С костылями пользовательский опыт значительно лучше: это хотя бы позволяет скрыть наличие болезни вместо наслаждения ее симптомами в виде неотвечающей системы.

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

Не могу назвать здоровой операционную систему, которая повисает при нехватке памяти.

Я не понимаю, ты так тупо троллить пытаешься или что?

Раньше всё отлично работало, и есть абсолютно валидный открытый баг репорт с этой проблемой.

С костылями пользовательский опыт значительно лучше: это хотя бы позволяет скрыть наличие болезни вместо наслаждения ее симптомами в виде неотвечающей системы.

А потом мудак который скрывал симптомы болезни жаропонижающим и обезболивающим словил воспаление лёгких.

У тебя хорошая мотивация выкинуть всю вебню и говно на электроне из своей системы сегодня. Нет, не хочу, хочу ваять ненужные костыли.

trynoval
()

Показано 0 сообщений из 17.

Прикольно.

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

Я не понимаю, ты так тупо троллить пытаешься или что?

Here are the statements of some users:

"How do I prevent Linux from freezing when out of memory? Today I (accidentally) ran some program on my Linux box that quickly used a lot of memory. My system froze, became unresponsive and thus I was unable to kill the offender. How can I prevent this in the future? Can't it at least keep a responsive core or something running?"

— serverfault

"With or without swap it still freezes before the OOM killer gets run automatically. This is really a kernel bug that should be fixed (i.e. run OOM killer earlier, before dropping all disk cache). Unfortunately kernel developers and a lot of other folk fail to see the problem. Common suggestions such as disable/enable swap, buy more RAM, run less processes, set limits etc. do not address the underlying problem that the kernel's low memory handling sucks camel's balls."

— serverfault

"The traditional Linux OOM killer works fine in some cases, but in others it kicks in too late, resulting in the system entering a livelock for an indeterminate period."

— engineering.fb.com

  • Все эти люди тупо троллить пытаются, да?
hakavlad ★★★
() автор топика
Ответ на: комментарий от trynoval

А потом мудак который скрывал симптомы болезни жаропонижающим и обезболивающим словил воспаление лёгких.

Причем тут воспаление? Больной получил костыли и прекрасно ходит. Проблема фактически решена. - Симптомы полной невозможности ходить отсутствуют при наличии хороших костылей.

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

У тебя как у билл гейтса уже и страждущие домохозяйки возникли.

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

При том что ты человека вместо лечения на костыли посадил.

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

А что определяет «серверность» или «настольность» ОС? У ядра Линукс есть, например, такая фича, как «preemptive kernel», которая позволяет использовать вытесняющую многозадачность для ядреных потоков, что очень подходит для десктопа. На серверах эту опцию стараются отключать.

А тем временем вся прям десктопная ос Микросовт Виндовс всё ещё вешается намертво при высоком io.

Unicode4all ★★★★★
()

UPD

Известные проблемы: убивает всё и сразу: https://gitlab.freedesktop.org/hadess/low-memory-monitor/issues/8

Бастьен не считает это проблемой:

LMM killing all instances of gnome-terminal instead of just killing proper process.

low-memory-monitor doesn’t kill anything, it asks the kernel to do that.

This could lead into big troubles when you doing DNF update for example in one terminal and then LMM suddenly kill all opened terminal with DNF as well. In many cases you will receive dead system after this.

Which is why you should use offline updates. You might want to build the daemon with -Dtrigger_kernel_oom=false if you don’t want the kernel’s OOM killer to be called.

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