Оптимизация системы

Автор sidbar, 23 марта 2017, 20:57:38

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

sidbar

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

Пример Zram для Wheezy
модуль zram собран и доступен по умолчанию. В этом легко убедиться выполнив
modprobe -nv zram
sudo nano /etc/sysctl.conf

Дописываем в конец строку:

vm.swappiness = 40

сохраняем и выполняем:
sudo sysctl -p

Открываем терминал, вводим:

sudo nano /etc/init.d/zram

Вставляем следующий скрипт:

#!/bin/sh
### BEGIN INIT INFO
# Provides:          zram
# Required-Start:    $local_fs
# Required-Stop:     $local_fs
# Default-Start:     S
# Default-Stop:      0 1 6
# Short-Description: Use compressed RAM as in-memory swap
# Description:       Use compressed RAM as in-memory swap
### END INIT INFO

# Author: Antonio Galea <antonio.galea@gmail.com>
# Thanks to Przemysław Tomczyk for suggesting swapoff parallelization

FRACTION=50

MEMORY=`perl -ne'/^MemTotal:\s+(\d+)/ && print $1*1024;' < /proc/meminfo`
CPUS=`grep -c processor /proc/cpuinfo`
SIZE=$(( MEMORY * FRACTION / 100 / CPUS ))

case "$1" in
  "start")
    param=`modinfo zram|grep num_devices|cut -f2 -d:|tr -d ' '`
    modprobe zram $param=$CPUS
    for n in `seq $CPUS`; do
      i=$((n - 1))
      echo $SIZE > /sys/block/zram$i/disksize
      mkswap /dev/zram$i
      swapon /dev/zram$i -p 10
    done
    ;;
  "stop")
    for n in `seq $CPUS`; do
      i=$((n - 1))
      swapoff /dev/zram$i && echo "disabled disk $n of $CPUS" &
    done
    wait
    sleep .5
    modprobe -r zram
    ;;
  *)
    echo "Usage: `basename $0` (start | stop)"
    exit 1
    ;;
esac

Сохраняем. Далее даём права на исполнение:

sudo chmod +x /etc/init.d/zram

и активируем:

sudo insserv zram

Перезагружаемся и всё.
Devuan GNU/Linux 4 Chimaera x86_64

qupl

Если ресурсов недостаточно, то никак. Чудес не бывает.

sidbar

Цитата: qupl от 23 марта 2017, 21:00:33Чудес не бывает.
Спасибо за ответ, да я чудес не жду, что место для файлов само по себе сделается, но хоть что-то же можно сделать, это же debian.
Devuan GNU/Linux 4 Chimaera x86_64

qupl

Размер ОЗУ? Размер swap? Размер свободного места на диске (в % от размера диска)? Вывод free -m и top в момент максимальных тормозов.

sidbar

1 GB ОЗУ, swap раздел 4 GB. В системном мониторе, на загрузочном 68%, на остальных с файлами 98%. Тормоза когда качается что-то на забитые диски и броузер с вкладками, в основном от него интерфейс сильно фризит, заедает постоянно, может это логи пишутся на диск, как это проверить?
Посмотрел

# free -m
             total       used       free     shared    buffers     cached
Mem:          1009        927         81          0         25        530
-/+ buffers/cache:        371        637
Swap:         4095          0       4095
раньше смотрел по системному монитору, там совсем другие цифры, по идее если закешировано 530 мег должно все летать, ок как начнутся фризы, запущу как вы сказали, а в top что надо смотреть?
Devuan GNU/Linux 4 Chimaera x86_64

qupl

Кэш браузера может быть в /home, там  сколько места свободно? В top смотреть потребление памяти по процессам.
Память уже занята, если начнется ее активное потребление система уйдет в swap, начнутся тормоза (особенно если диск не быстрый). swappines имело бы смысл менять, если бы ситуация была обратной, преждевременное использование подкачки. Поэкспериментируйте, может немного даст растянуть момент ухода в swap.

Aalexeey

https://debianforum.ru/index.php?topic=6879 100% защиты от "Ааааа у меня всё поломалось"

qupl

#7
Цитата: sidbar от 25 марта 2017, 11:18:36Он у меня на загрузочном диске, я в нем не храню файлы.
Вы не храните, браузер хранит.
df -h

mrgoodvin

#8
Еще во времена lenny, при установке системы можно было выбрать приоритет между x-сервером и фоновыми процессами (службами). Если точнее задавался он для х-сов, в пределах 0 - 10. Сейчас такого нету. Может и путаю что-то, давно это было. Кто знает точно и если не сложно, проясните этот момент пожалуйста. Не понятно, почему ушли от этой концепции.

qupl

И  сейчас никто не мешает - nice/renice.

alsoijw

Цитата: qupl от 23 марта 2017, 22:23:23
Интересно что изменяя этот параметр swappines  система ощутимо ведет себя по другому, но свопится странно по 400 килобайт, но своп создается.
Указывается какое количество свободной памяти держать на всякий случай. Можно отложить перенос на жесткий до последнего момента и идти заваривать чай когда эта память будет нужн, можно попросить удерживать некоторый запас и тогда тормоза будут только при подгрузке сохранённых данных
Мало видеть нам начало - надо видеть и конец. Если видишь ты создание - значит где-то есть ТВОРЕЦ
Многие жалуются: геометрия в жизни не пригодилась. Ямб от хорея им приходится отличать ежедневно?

sidbar

#11
Цитата: qupl от 25 марта 2017, 13:03:19
Цитата: sidbar от 25 марта 2017, 11:18:36Он у меня на загрузочном диске, я в нем не храню файлы.
Вы не храните, браузер хранит.
df -h
$ df -h
Файловая система                                       Размер Использовано  Дост Использовано% Cмонтировано в
rootfs                                                    28G          18G  8,2G           69% /
udev                                                      10M            0   10M            0% /dev
tmpfs                                                    101M         412K  101M            1% /run
/dev/disk/by-uuid/ff9f5e2c-ec83-4997-aa32-2f8d9979444e    28G          18G  8,2G           69% /
tmpfs                                                    5,0M            0  5,0M            0% /run/lock
tmpfs                                                   1022M          12K 1022M            1% /run/shm
/dev/sdb9                                                466G         460G  6,0G           99% /mnt/data0
/dev/sdb3                                                369G         356G   14G           97% /mnt/data1
/dev/loop0                                               3,8G         3,8G     0          100% /mnt/apt1
/dev/loop1                                               4,4G         4,4G     0          100% /mnt/apt2
/dev/loop2                                               4,4G         4,4G     0          100% /mnt/apt3


Cообщение объединено 25 марта 2017, 18:31:41

Цитата: Aalexeey от 24 марта 2017, 15:58:14
zswap
С какого ядра он поддерживается? На wheezy можно запустить?
Devuan GNU/Linux 4 Chimaera x86_64

mrgoodvin

~/.config
~/.cache
zswap тут не поможет, имхо. Он будет пытаться забрасывать в оперативку, а ее мало, и как следствие обращение к диску.
Вот тут все расписывалось https://debianforum.ru/index.php?topic=9422.0. Доставлять планку(и), что еще тут поделаешь.
Для браузера(ов) я использую profile-sync-daemon, но это не сильно повлияло на работу, по крайней мере midori.

sidbar

Цитата: mrgoodvin от 25 марта 2017, 19:12:17zswap тут не поможет, имхо. Он будет пытаться забрасывать в оперативку, а ее мало, и как следствие обращение к диску.
Вот тут все расписывалось
cat /boot/config-`uname -r` | grep -i zswap Ничего не выводит, я и спросил про ядро. Все четыре слота памяти на метеринке заняты. Система, по гном-систем-монитору если смотреть, занимает при загрузке 100 мег, но вот заеды эти случаются от загрузки проца на 100%, когда браузер скрипты обрабатывает это понятно, я пользовался банером скриптов, если отключать загрузки скриптов на некоторых сайтах, тогда быстро открывает страницы. Но эти заеды с цпу и в файловом менеджере происходят.
Цитата: mrgoodvin от 25 марта 2017, 19:12:17~/.config
~/.cache
И что с ними сделать?
Devuan GNU/Linux 4 Chimaera x86_64

mrgoodvin

#14
Вот можно почитать https://wiki.archlinux.org/index.php/Maximizing%20performance%20(Русский).
Цитата: sidbar от 25 марта 2017, 21:16:30И что с ними сделать?
Просмотреть объем, почистить кэш браузеров.
cpu грузит в браузере, это бывает и нормално. Файловый менеджер не должен нагружать процессор, разве что со свободным местом системы вообще всё плохо.
В последнем пункте ссылки "Процессор" - VeryNice, - это то что в этой теме затрагивалось. Но такого пакета в нашей системы я не нашел. Есть мысли запускать фм (у меня thunar) с приоритетом к примеру 40. Большинство процессов с приоритетом 20. Так же xfdesktop, и xfwm4 с 30-м. В принципе это предпочтения, которые вытекает с вывода pstree, но можно еще что-то скорректировать по желанию.
В общем пока раздумываю над этим.

Cообщение объединено 25 Марта 2017, 21:47:48

Вт мой вывод:
~$ cat /boot/config-`uname -r` | grep -i zswap
CONFIG_ZSWAP=y

Наверно ядром не поддерживается в wheezy.

Cообщение объединено 25 Марта 2017, 23:47:16

Дополню. Есть пакет под интересным названием and - Auto Nice Daemon,  :). Вот его и можно использовать. А по поводу nice, приоритет задается параметром от -20(наибольший) до 19(наименьший). В общем можно пробовать настраивать.