Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: Странности с использованием памяти  (Прочитано 1317 раз)

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

Оффлайн jel

  • Автор темы
  • Активист
  • *
  • Сообщений: 828
    • Просмотр профиля
Хочется отучить систему свопиться без неоходимости. А то уж больно интересная картина получается:

jel@minibuntu:~$ free
             total       used       free     shared    buffers     cached
Mem:        125724      94544      31180          0       2660      42944
-/+ buffers/cache:      48940      76784
Swap:       265064      39720     225344
jel@minibuntu:~$ sudo swapoff -a
jel@minibuntu:~$ sudo swapon -a
jel@minibuntu:~$ free
             total       used       free     shared    buffers     cached
Mem:        125724     114416      11308          0       2836      83048
-/+ buffers/cache:      28532      97192
Swap:       265064          0     265064

То есть изначально занято 48 метров памяти и почти сорок метров свопа. Отключаем своп, подключаем снова и вуаля - оказывается реально системе нужно было только 28 метров. А остальные 60 - это она так, дурака валяла. Про swappiness читал и крутил его до полного изнеможения. Может я чего-то не понимаю, но в моем случае эффекта не наблюдается. При куче свободной оперативки система все равно лезет в своп. Отключить своп совсем не могу, памяти всего 128 метров, своп жизненно необходим.

А вот как бы все-таки отучить систему лазить в своп без нужды? Система - Hardy со всеми обновлениями.

Оффлайн ende_neu

  • Старожил
  • *
  • Сообщений: 2473
    • Просмотр профиля
Re: Странности с использованием памяти
« Ответ #1 : 19 Апреля 2009, 20:21:13 »
А зачем?Чем вам своп мешает?Туда складывается то,что не нужно в конкретный момент,но может понадобится.А с вашим обьёмом озу ничего удивительного в использовании свопа нет.

Оффлайн jel

  • Автор темы
  • Активист
  • *
  • Сообщений: 828
    • Просмотр профиля
Re: Странности с использованием памяти
« Ответ #2 : 19 Апреля 2009, 21:01:00 »
Мешает как водится ненеужными тормозами. Я понимаю, что браузер при таком объеме памяти без свопа работать не будет, но когда я его закрываю сброшенное в своп не освобождается и при открытии других программ своп продолжает расти, а следовательно растут и тормоза. В моем первом сообщении как раз приведено состоянине системы после закрытия браузера. После "передергивания" свопа выясняется, что системе нужно чуть ли не втрое меньше памяти, что несколько смущает.

Понимаю, что система скорее всего держит в памяти последние загруженные библиотеки, по принципу "а вдруг еще пригодятся". И что самое печальное не торопится их выгружать. Вопрос собственно в том, как сказать системе "однозначно не пригодятся, смело выгружай по завершению приложения" ибо в данном конкретном случае такое поведение на мой взгляд уместнее, нежели используемое по дефолту.

Lifewalker

  • Гость
Re: Странности с использованием памяти
« Ответ #3 : 19 Апреля 2009, 21:20:15 »
Скажем прямо, на 128 мегах своп будет всегда. Либо смириться либо добавить памяти. Хотя второе судя по всему проблематично, потому что либо слотов нет либо модули такие не раздобыть...

Оффлайн jel

  • Автор темы
  • Активист
  • *
  • Сообщений: 828
    • Просмотр профиля
Re: Странности с использованием памяти
« Ответ #4 : 19 Апреля 2009, 21:55:17 »
Все верно и насчет памяти и насчет свопа. Только хочется этот своп контролировать, пусть за счет замедления запуска программ но уменьшить бессмысленные судороги системы которая сначала забивает своп библиотеками а потом долго вытрясает оттуда все ненужное (причем уже давно ненужное) когда очередная программа просит еще памяти. Это же linux и по идее настроить можно все, разобраться бы только как. :) Идеальный вариант - после завершения приложения выгружать из памяти все загруженные им библиотеки не рассчитывая, что они снова могут понадибиться. Понадобятся - подожду пока загрузятся, ведь подождать нужно будет только один раз при старте приложения.

Оффлайн redddragon

  • Любитель
  • *
  • Сообщений: 56
    • Просмотр профиля
Re: Странности с использованием памяти
« Ответ #5 : 20 Апреля 2009, 00:34:28 »
вообщето сам Линус торвальдс придерживается того, что лучше всё скидывать в swap, а свободное место в оперативе держать под внезапно возникшие задачи, я с этим не согласен, поэтому отключил его и купил 4 гига оперативы. насчёт вашего случая, есть настройка приоритетности для файла подкачки, на форуме есть howto по настройке, думаю более детальное изучение гугла поможет!
AMD Athlon 64 X2 4200+ | ASUS M2N-VM-DH | 4Gb DDR2 (2X600Mhz, 2X800Mhz) | ATI Radeon Sapphire X1650 Pro (GPU 600MGhz, 512Mb DDR2 400Mhz, 128 bit) | 320Gb HDD SATA2 | Ubuntu 8.10 x64

Оффлайн Nebulosa

  • Активист
  • *
  • Сообщений: 397
    • Просмотр профиля
Re: Странности с использованием памяти
« Ответ #6 : 20 Апреля 2009, 07:40:39 »
У меня основным потребителем свапа был FF ветки 3.0.х, залезал в свап по самые уши и тормозил. При закрытии свап не освобождался. А вот ветка FF3.1 и выше уже практически не использует свап. Может попробовать сменить браузер?..

Потом при загрузке другие программы гнома (панели и прочие) все равно скидывали мегабайт 5-7 при совершенно свободной оперативке.

Оффлайн jel

  • Автор темы
  • Активист
  • *
  • Сообщений: 828
    • Просмотр профиля
Re: Странности с использованием памяти
« Ответ #7 : 20 Апреля 2009, 09:10:30 »
есть настройка приоритетности для файла подкачки

Можно об этом подробнее?

Все что мне удалось найти на эту тему крутится вокруг параметра swappiness, но его изменение не оказывает видимого результата на использование свопа.

Оффлайн NetFox

  • Активист
  • *
  • Сообщений: 316
  • 10.04 zentyal & 11.10 unity
    • Просмотр профиля
Re: Странности с использованием памяти
« Ответ #8 : 20 Апреля 2009, 10:12:03 »
Не знаю насчет тормозов со свопом, но у меня было с точностью до наоборот на тачке с 512 метрами мозгов. Изначально своп в 8.04  не подключался автоматом - пригодилось его вбивать силком. Заметил это так - работает-работает а потом - тормоза-ааа-а... Волшебные кнопки ctrl-alt-back space, ключаю монитор - своп в нуляк, оперативка отжирается и-и.... бряк! - система в ауте. Привинтил своп - ауты исчезли.  :)
Опыт растет вместе с количеством выведенного из строя оборудования.

Oni-chan

  • Гость
Re: Странности с использованием памяти
« Ответ #9 : 20 Апреля 2009, 10:21:19 »
приоритет использования свопа /proc/sys/vm/swappiness
изменить на значение поменьше. Только осторожно
echo 10> /proc/sys/vm/swappiness

для того, чтобы автоматом грузить при каждой загрузке
"vm.swappiness = 10" в /etc/sysctl.conf,

Lifewalker

  • Гость
Re: Странности с использованием памяти
« Ответ #10 : 20 Апреля 2009, 10:28:50 »
Чтобы закрыть тему, давайте кое-что вспомним. Не будучи глубоким знатоком архитектуры ОС, но начитавшись Таненбаума и всякого разного другого, могу изложить кое-что.
Политика управления подкачкой (шире - виртуальной памятью) зарыта глубоко в ядре системы и является одной из фундаментальных частей любой ОС. Управлять этой политикой если и можно, то в очень узких пределах. Потому что эта часть накрепко связана с планировщиком, менеджером памяти и прочим что там внутре ОС есть. Например во ФриБСД незадействованные страницы вытесняются на диск безотносительно есть свободная память или нет, в Винде страницы по большей части дублируются в подкачке чтобы быть освобождёнными в любой момент, в Linuxе занятые страницы вытесняются в подкачку чтобы освободить место для новых программ и данных.
Отсюда вывод. Практически ничего поделать с существующим поведением компьютера нельзя. Разве что переписать пол-ядра, отвечающего за политику управления памятью.

Оффлайн alecsartania

  • Старожил
  • *
  • Сообщений: 1565
  • УМка.
    • Просмотр профиля
Re: Странности с использованием памяти
« Ответ #11 : 20 Апреля 2009, 10:55:51 »
нужно использовать проги с нетекущей памятью. вот тоже вспоминается - одна и таже ос 8.04 - и на одной
в своп кто-то гадит,  на другой нет - просто на той которая 0 использкеть своп  стоит файрфокс 2.0(давно стоит) а на той гп которй в свопе несмотря на2 гига что-то бывает файрфокс 3.0.
Дома Linux Mint 21.1 / 22.00

Оффлайн jel

  • Автор темы
  • Активист
  • *
  • Сообщений: 828
    • Просмотр профиля
Re: Странности с использованием памяти
« Ответ #12 : 20 Апреля 2009, 12:10:11 »
приоритет использования свопа /proc/sys/vm/swappiness
изменить на значение поменьше. Только осторожно
echo 10> /proc/sys/vm/swappiness

Сами пробовали? У меня на ядре 2.6.24-23-generic никакого эффекта не наблюдается. Хоть 0 туда пиши, хоть 100, хоть оставляй дефолтные 60 - как свопилась так и свопится, разницы не увидел.

нужно использовать проги с нетекущей памятью.

Не тот случай. Если бы имела место утечка памяти передергивание свопа не уменьшало бы занятую память. Спасала бы только перезагрузка системы.

Склоняюсь все-таки к мнению Lifewalker. Похоже, что политика управления памятью действительно дана нам "свыше" и серьезно повлиять на нее не удастся.

 

Страница сгенерирована за 5.051 секунд. Запросов: 24.