Голосование

Чему равен размер SWAP?

двойному ОЗУ
одинарному ОЗУ
половинному ОЗУ
тройному ОЗУ
дестярному ОЗУ
SWAP - это зло!
Не знаю

Автор Тема: Swap-раздел. Оперативная память. Общие вопросы свопа и оперативки.  (Прочитано 75907 раз)

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
4 гига оперативы - нафиг нужен как тоже выключить

Выяснить про swap, что за устройство и uuid
# cat /etc/fstab |grep swap
UUID=1131150c-e131-4271-8d0b-7fbf29bf9082 swap swap defaults 0 0
# ls -l /dev/disk/by-uuid/|grep 1131150c
lrwxrwxrwx 1 root root 10 окт 31 06:41 1131150c-e131-4271-8d0b-7fbf29bf9082 -> ../../sda3
# swapoff --help

Usage:
 swapoff [options] [<spec>]

Options:
 -a, --all              disable all swaps from /proc/swaps
...
The <spec> parameter:
 -L <label>             LABEL of device to be used
 -U <uuid>              UUID of device to be used
 LABEL=<label>          LABEL of device to be used
 UUID=<uuid>            UUID of device to be used
 <device>               name of device to be used
...

Далее выключить как файл-устройства или через UUID
# swapoff /dev/sda3
# swapoff -U 1131150c-e131-4271-8d0b-7fbf29bf9082

Или проще и без всей писанины выше - отключить все swap (временное отключение до перезагрузки системы):
# swapoff -a
Если засвоплено много, операцию не прерывать - идёт перемещение содержимого swap в память.
Далее закомментировать строку для swap в /etc/fstab чтоб боле не взлетал при старте системы.


Приоритет использования swap

Великолепнейшее объяснение что такое swappiness:
http://askubuntu.com/questions/103915/how-do-i-configure-swappiness
http://en.wikipedia.org/wiki/Swappiness

В нескольких словах:

Значение vm.swappiness может принимать от 100 до 0
При 100 страницы памяти будут откачиваться в swap мгновенно, вне зависимости от занятой памяти.
При 0 сброс в swap будет только тогда, когда это реально необходимо при исчерпании памяти.
При значение 15 для vm.swappiness, сброс страниц в своп будет происходить только тогда, когда память будет заполнена более чем на 85%.
Значение vm.swappiness хранится:
# cat /proc/sys/vm/swappiness
60

Посмотреть можно также:
# sysctl -a|grep vm.swapp
vm.swappiness = 60

Установить новое значение vm.swappiness для постоянного использования системой:
# echo 'vm.swappiness = 15' >> cat /etc/sysctl.conf

Временно переопределить (до перезагрузки):
# echo 15 > /proc/sys/vm/swappiness
# sysctl -w vm.swappiness=15
# sysctl vm.swappiness=15

« Последнее редактирование: 31.10.2014 08:51:43 от Speccyfighter »

mvk

  • Гость
4 гига оперативы - нафиг нужен как тоже выключить
Далее закомментировать строку для swap в /etc/fstab чтоб боле не взлетал при старте системы.
А если просто закоментироавть получиться? Просто малоли я память выну тогда swap понадобиться. Если так можно сделать самый простой и удобный способ.

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Дополнил материал по swap и swappiness постом выше.

Изменение заполнения swap - между выбросами запуск какого-нибудь приложения:
# cat /proc/sys/vm/swappiness
15
# swapoff -a
# swapon -a
# free -m
             total       used       free     shared    buffers     cached
Mem:           997        974         22          0          7        213
-/+ buffers/cache:        754        243
Swap:         1944          0       1944
# free -m
             total       used       free     shared    buffers     cached
Mem:           997        984         13          0          4        189
-/+ buffers/cache:        789        207
Swap:         1944          0       1944
# free -m
             total       used       free     shared    buffers     cached
Mem:           997        982         14          0          4        182
-/+ buffers/cache:        796        201
Swap:         1944          0       1944
# free -m
             total       used       free     shared    buffers     cached
Mem:           997        981         15          0          3        178
-/+ buffers/cache:        799        197
Swap:         1944          0       1944
# free -m
             total       used       free     shared    buffers     cached
Mem:           997        982         14          0          0         84
-/+ buffers/cache:        898         99
Swap:         1944          3       1941

Для компьютеров с малым объёмом памяти скорее будет полезным значение с более агрессивным использованием swap.
Но второй винчестер лишним не будет.
Если разбросать систему по трём винчестерам, производительность увеличится.
Вот почему приколачивание всего и вся в /usr считаю крайне вредным делом.

« Последнее редактирование: 31.10.2014 09:30:51 от Speccyfighter »

Оффлайн МИНЗДРАВ

  • Странник_
  • *
  • Сообщений: 3 045
  • ALWK8 х64 Branch sysd & server-light_1.9.3sysV noX
    • http://yx-kak.ru/linux.htm
Установить новое значение vm.swappiness для постоянного использования системой:
что-то не получается:
[root@host-242 log]# swapoff -a
[root@host-242 log]# sysctl -a|grep vm.swapp
vm.swappiness = 60
[root@host-242 log]# echo 'vm.swappiness = 20' >> cat /etc/sysctl.conf
[root@host-242 log]# sysctl -a|grep vm.swapp
vm.swappiness = 60
[root@host-242 log]# cat /proc/sys/vm/swappiness
60
[root@host-242 log]#

Оффлайн МИНЗДРАВ

  • Странник_
  • *
  • Сообщений: 3 045
  • ALWK8 х64 Branch sysd & server-light_1.9.3sysV noX
    • http://yx-kak.ru/linux.htm
Если разбросать систему по трём винчестерам, производительность увеличится.
Много про расброс разделов, советов написано, но прям чтоб на три винчестера...

Подскажите в данном контексте, что на какой винчестер (по скорости), по вашему, надо раскидывать?

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
что-то не получается:
[root@host-242 log]# swapoff -a

Зачем?


что-то не получается:
[root@host-242 log]# sysctl -a|grep vm.swapp
vm.swappiness = 60
[root@host-242 log]# echo 'vm.swappiness = 20' >> cat /etc/sysctl.conf
[root@host-242 log]# sysctl -a|grep vm.swapp
vm.swappiness = 60
[root@host-242 log]# cat /proc/sys/vm/swappiness
60

:-)
Засунули в /etc/sysctl.conf, а смотрели в /proc/sys/vm/swappiness?
Это вы интересно придумали.
Из /etc/sysctl.conf  возьмётся после перезагрузки, а из /proc/sys/vm/swappiness почти сразу же без перезагрузки.
Первое для постоянного хранения выборочное умолчальное, второе, временное, используемое системой.
« Последнее редактирование: 31.10.2014 10:20:01 от Speccyfighter »

Оффлайн МИНЗДРАВ

  • Странник_
  • *
  • Сообщений: 3 045
  • ALWK8 х64 Branch sysd & server-light_1.9.3sysV noX
    • http://yx-kak.ru/linux.htm
а после отключения своп, в моём случае, должны показатели iostat улучшиться?

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
а после отключения своп, в моём случае, должны показатели iostat улучшиться?

Если свободной памяти много, iowait будет меньше: память-память более высокоскоростной канал передачи данных, чем память-винчестер-память. Меньшая нагруженность процессора. Но при нехватке памяти и отключенном свопе, вплоть до падения приложений.
Есть такая поговорка: большой памяти и больших винчестеров не бывает.
Их нет в природе. Есть отсутствие денег на них.
Но при том есть понятие сбалансированности железа.

Мне есть смысл отключать на LGA1155: занятая память редко выходит за пределы 5Gb при ~7.7Gb на std-pae.
Но я не отключаю.

Ну вот: гуляй - не хочу!
$ free -m
             total       used       free     shared    buffers     cached
Mem:          7777       1440       6336          0         59        561
-/+ buffers/cache:        820       6957
Swap:        20481          0      20481
$ who
user     :0           2014-10-31 10:44
user     pts/0        2014-10-31 10:44 (:0)
user     pts/1        2014-10-31 10:44 (:0)
user2    :1           2014-10-31 10:44
$ iostat
Linux 3.14.18-std-pae-alt1      31.10.2014      _i686_  (4 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
          11,59    0,00    1,50    2,30    0,00   84,61

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
sda              22,57       687,72       321,07     417850     195076
sdb               4,74        18,19         0,57      11055        344
При потоковом кино с stream.1tv.ru/live
И куче всякого барахла.
« Последнее редактирование: 31.10.2014 10:57:33 от Speccyfighter »

Оффлайн МИНЗДРАВ

  • Странник_
  • *
  • Сообщений: 3 045
  • ALWK8 х64 Branch sysd & server-light_1.9.3sysV noX
    • http://yx-kak.ru/linux.htm
По моей проблеме, значит, если память уменьшить, вырастет производительность?

Оффлайн stanukih

  • Завсегдатай
  • *
  • Сообщений: 560
память в смысле озу? пролистал 2 последние страницы не нашел вывода fdisk -l (в смысле где своп). Блока питания хватает?

Оффлайн МИНЗДРАВ

  • Странник_
  • *
  • Сообщений: 3 045
  • ALWK8 х64 Branch sysd & server-light_1.9.3sysV noX
    • http://yx-kak.ru/linux.htm
память в смысле озу? fdisk -l .
да ОЗУ - 8гБ[root@host-242 log]# fdisk -l

Disk /dev/sda: 1000.2 GB, 1000204886016 bytes, 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000b5f48

Устр-во Загр     Начало       Конец       Блоки   Id  Система
/dev/sda1            4096    32772095    16384000   82  Linux своп / Solaris
/dev/sda2   *    32776192   466952191   217088000   83  Linux
/dev/sda3       466956288  1953521663   743282688   83  Linux
[root@host-242 log]
Блока питания хватает?
По мануальным инструкциям, должно хватать - 450w, а как узнать в реале? Не знаю.

Оффлайн YYY

  • Мастер
  • ***
  • Сообщений: 5 969
По моей проблеме, значит, если память уменьшить, вырастет производительность?

нет :)

Оффлайн МИНЗДРАВ

  • Странник_
  • *
  • Сообщений: 3 045
  • ALWK8 х64 Branch sysd & server-light_1.9.3sysV noX
    • http://yx-kak.ru/linux.htm
А откуда такие тормоза могут быть?

Оффлайн stanukih

  • Завсегдатай
  • *
  • Сообщений: 560
При всей озу что top выдает? Есть ли свободная озу и как загружен процессор? Если озу пустая есть (по логике должна быть) то убирать есть смысл только есть питания не хватает.

Оффлайн akarp

  • Завсегдатай
  • *
  • Сообщений: 226
    • Email
Если озу пустая есть (по логике должна быть) то убирать есть смысл только есть питания не хватает.
Типа шутка? Лень искать, но потребление ВСЕЙ RAM системы наверняка лежит в районе 10-20Вт, не больше, и постоянно. У него, если бы такое значение было проблемой, винчестер при раскрутке все уронил бы, первая парковка и пробуждение винчестера - привет, перезагрузка.