LINUX.ORG.RU

Встает колом

 ,


1

4

Всем привет!

У меня достаточно старое оборудование (один ноут с 1 Гб памяти, другой - с 2 Гб), конечно, наблюдаются иногда притормаживания, особенно, из-за высокого I/O, но на старых Debian я всегда, в 100% случаев, мог вызвать консоль и посмотреть, что забивает ресурсы.

На последнем стабильном Debian я сделать этого уже не могу. Индикатор работы жесткого бесконечно горит (память в кэш уходит?), все тормозит. Вызывается консоль, ввожу логин, только это уже бесполезно, потому что через 1 минуту наступает таймаут и мне не дают залогиниться, а тормоза продолжаются по нескольку минут. Есть подозрение, что в последних Debian что-то намутили с OOM Killer и памятью. Кто знает, как решить?

ИМХО, это проблемы не дебиан, а ядра. И вам теперь можно долго подбирать значения типа vm.watermark_scale_factor, vm.swappiness=80, vm.page-cluster=0 и т.д., чтобы в вашем конкретном случае стало получше.

mky ★★★★★ ()

Вы знаете, как раз обсуждали — попробуйте другой планировщик ввода-вывода. Из простого, у вас есть место на диске?

fernandos ★★★ ()

Все ядра с 4 версии дёргают диск, но Линусу на это глубоко, так как в Шляпе крутят на шляпе твои бытовые HDD и SSD. Могу лишь посоветовать выставить commit побольше.

Владимир

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

попробуйте другой планировщик ввода-вывода

Спасибо, буду изучать вопрос. Нужны ли в данной ситуации какие-нибудь конкретные руководства по установке/настройке?

у вас есть место на диске

Почти 5 Гб свободно на root. Под swap выделен раздел в 2,93 Гб при ОЗУ в 2 Гб.

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

Это и есть изначально devuan ascii. Я просто указал дебиановские репы, чтобы не ждать выхода devuan - systemd все равно не будет устанавливаться. Вместо lxde использую еще более легкое сочетание openbox + tint2.

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

И вам теперь можно долго подбирать значения типа vm.watermark_scale_factor, vm.swappiness=80, vm.page-cluster=0 и т.д., чтобы в вашем конкретном случае стало получше.

Спасибо.

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

vm.swappiness=80

Ерунда какая, так он из подкачки не будет вылазить вообще

vm.swappiness=1 vm.vfs_cache_pressure=50 vm.dirty_writeback_centisecs=15000

В fstab попробуйте добавить:

noatime,nodiratime,nobarrier,commit=900

Владимир

anonymous ()

Поставьте ядро rt-kernel и примените к нему патч UKSM, а также включите preamp и 1000hz тикрейт таймера. После чего отключите huge pages.

Это заметрт повысит отзывчивость системы при большой нагрузке на процессор, а UKSM сэкономит оперативную память. В вашем случае экономия будет довольно большой.

poettering ()

The attached kernel patch (applied on top of 4.18.5) that I’ve tried, almost completely eliminates the disk thrashing(the constant reading of executable(and .so) files on every context switch) associated with freezing the OS and so, with this patch, the OOM-killer is triggered within a maxium of 1 second when it is needed, rather than, without this patch, freeze the OS for minutes(or just a long time, it may even auto reboot depending on your kernel .config options set to panic(reboot) on hang after xx seconds) with constant disk reading well before OOM-killer gets triggered.

https://github.com/hakavlad/le9-patch

hakavlad ★★★ ()

Индикатор работы жесткого бесконечно горит (память в кэш уходит?)

Кэш разделяемых библиотек выбрасывается из памяти. Для каждой операции необходимо повторное считывание либ с диска -> тормоза.

См Просто оставлю это здесь: Игра в supertux2 с множественными `tail /dev/zero` в фоне без зависаний

Без без патчинга ядра можно попробовать prelockd и memavaild.

hakavlad ★★★ ()

Индикатор работы жесткого бесконечно горит (память в кэш уходит?), все тормозит

см https://www.opennet.ru/opennews/art.shtml?num=51231

Решение описано выше - закрепление кода в памяти с помощью демона, либо патчинг ядпа для резервирования Active(file)

hakavlad ★★★ ()

Своп конечно лучше на zram.

Не слушай советующих низкий swappiness.

hakavlad ★★★ ()

Попробуй удалить Debian, они там намудрили. Кроме консоли ещё зачем-то графику подвезли. Так на любом компе тормозить будет. Все графоделы без исключения думают, что у всех компы как у них.

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

Ерунда какая, так он из подкачки не будет вылазить вообще

С чего вдруг? vm.swappiness — это предпочтение анонимной памяти к дисковому кешу. В дисковом кеше сидят библиотеки, если ядро будет всё время его освобождать, то программы работать вобще не смогут.

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

Ерунда какая, так он из подкачки не будет вылазить вообще

Ничего подобного

vm.swappiness=1

Это как раз услиливает тормоза при своппинге

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

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

Единственный нормальный выход при этом – вообще отключить своп и ловить оверкоммиты. Тогда границы дозволенного обозначат себя сами.

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

Ага, и при 1 гектаре оперативы подкачка будет начинаться как минимум с 200мб, то есть всегда. Предлагаю вариант, поставить Debian 8-32бит с openbox или подобным, links2 в качестве браузера, но конечно сейчас найдуться федорасты с доводами про обновления и «безопасность», канешна.

Владимир

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

при 1 гектаре оперативы подкачка будет начинаться как минимум с 200мб, то есть всегда

А со скольки будет начинаться подкачка при swappiness=200?

Вы несете феерическую ахинею. Свопинес не показывает уровень, с которого начинается своппинг.

При свопинес=100 подкачка может начинаться при почти полном исчерпании доступной памяти.

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

Ничего подбирать смысла нет. Нужно включать свап и выставлять vm.swappiness=100, если это не помогает - идти покупать кучу озу.

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

Ерунду ты написал. Если у него у уже фризит от нехватки озу, с твоими говно-настройками будет фризить раньше и хуже.

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

Херню пишешь. Во-первых, фризы при исчерпании памяти вообще не имеют никакого отношения к высокой нагрузке на процессор.

Во вторых, давным давно нет никаких проблем с отзывчивостью при нагрузке на процессор. Все твои говно-твики из времён 2.6-3.0 ядер.

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

И rt-ядро не для десктопа вообще.

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

О, кажется Вы не подписаны на рассылку linux!

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

Да, вы правы, вот что бывает, когда сидишь на старом ядре.

fernandos ★★★ ()

vm.overcommit_memory = 2 или юзерспейсный oom-killer. Уменьшай vm.dirty_bytes и dirty_background_bytes. Юзай zram. Пробуй другой планировщик ввода-вывода. Поставь юолее легковесное графическое окружение.

hateWin ★★ ()

Думаю, лучшим решением будет увеличить размер оперативной памяти.

anarquista ★★★★★ ()

Чем дальше, тем сложнее использовать подобное железо в роли десктопа. Странно вообще жаловаться.

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

Если у него у уже фризит от нехватки озу

то ему надо удалять говнософт, и до кучи мазилу с хромом, оперой, юзать только текстовые браузеры Или добавлять ОЗУ.
а не бежать на форум, в поисках чудо-плацебо советов магии линукса

ТС не локализовал проблему, вообще.

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

ты можешь:
а) уменьшить употребление цинка и сахара.
б) передёрнуть

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

Почему? Честно говоря, не очень понимаю, чем 1 отличается от 0. При 2 все понятно – оверкомит запрещен. При 1 оверкомит разрешен, как и при 0. В чем подвох?

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

у меня devuan ascii i686 установлен на атлоне с 1 гигом озу… ну как-бы даже если ФФ 78 использовать и на каком-нибудь ютубе начинается тормозня - в консоль пускает…

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

При 2 все понятно – оверкомит запрещен

Разрешен, в зависимости от overcommit ratio.

1 - разрешен всегда, можно выделять терабайты без ограниченй (на самом деле есть лимит терабайт в 30)

1 - дефолт - guess mode, в основном оверкоммит разрешен, зависит от нагрузки.

hakavlad ★★★ ()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.