Как можно загрузить swap в оперативную память?
Доброго времени суток.
Опишу ситуацию: есть несколько десятков запущеных программ, в данный момент почти не используемые, затем есть необходимость запустить прожорливую программу (виртуалку, например), из-за нехватки ОЗУ его часть списывается в раздел подкачки. Затем надобность в виртуалке отпадает. И результат - занято реальной оперативной памяти чуть-чуть (а свободно много) и занятый наполовину (+/-) раздел подкачки.
Как можно информацию из свопа обратно в ОЗУ загрузить, т.к. программа, чья память находиться в свопе, подтормаживает если с ней начать работать (при том может не тормозить пока не начнешь использовать определенные функции, которые потребуют доступ к памяти, которая находится в свопе), и при том - каждую программу надо "обойти" чтобы она потом не тормозила?
И, кстати - решение противоположной задачи тоже интересно: как можно выгрузить память в своп программы, использование которой в ближайшее время не планируется?
- Для комментирования войдите или зарегистрируйтесь
ась?
swapoff -a && swapon -a
по-другому никак, емнип
Здесь были линки но пришла Larry и их слизнула =)
Данный аккаунт забанен так как его владелец не умеет себя культурно вести на форуме. /// WBR alexxy
Да ну? Выгрузить память (в
Да ну? Выгрузить память (из ОЗУ в своп) (в переделах возможного) даже на виндах можно... А тут-то уж подавно должно быть что-то подобное...
можно костылём типа создания
можно
костылём типа создания tmpfs и забивания оной
только зачем?
сделай своппинг в вин-стиле и наслаждайся
Здесь были линки но пришла Larry и их слизнула =)
Данный аккаунт забанен так как его владелец не умеет себя культурно вести на форуме. /// WBR alexxy
не, ну это уже точно
не, ну это уже точно костыль... тем более его использование не гарантирует решения поставленной задачи - выгружена будет память всех (почти) ппрограмм, а не одной конкретной.
А что за вин-стиль?
vm.swappiness же
выставляем в соточку и наслаждаемся агрессивным своппингом
Здесь были линки но пришла Larry и их слизнула =)
Данный аккаунт забанен так как его владелец не умеет себя культурно вести на форуме. /// WBR alexxy
но опять же это будет
но опять же
это будет применяться ко всему софту
так сказать per PID ничего не видел
Здесь были линки но пришла Larry и их слизнула =)
Данный аккаунт забанен так как его владелец не умеет себя культурно вести на форуме. /// WBR alexxy
1) Не очень понимаю смысл, но
1) Не очень понимаю смысл, но swapoff "диск" выключит выключит своп и соответственно перенесет все в оперативку.
2) Это уже совсем не понятно
И то, и то происходит автоматически, переход в "ручной" режим будет только отнимать время. И польза будет только если скорость отклика критичен, а в этом случае лучше докупить оперативки и/или быстрый винч/рейд.
согласен - происходит
согласен - происходит автоматически, согласен отнимает время, но! отнимает время постфактум - уже тогда когда требуется работать с программой, а я бы хотел чтобы данные подгружались тогда когда есть время у меня (пока я не использую эту программу, но, скажем через минут 5-10 начну)
p.s.: на счет оперативки - больше некуда, мать старая, на счет винтов - вариант, конечно, но все же решение не той задачи, которую я прошу.
Я намекал на: "стоит ли игра
Я намекал на: "стоит ли игра свеч", т.е. если настолько раздражает, то лучше улучшать на "железном" уровне. А так 99.9% рабочего времени проходит в состоянии, когда все подгружено и работает.
ps каждому свое
Ну.. Не в обиду, конечно - но
Ну.. Не в обиду, конечно - но если мне это решение нужно, то значит оно мне нужно.
Если бы мог решить по другому - решил бы, но в данный момент меня этот вариант устроит больше, т.к. в будущем он мне еще пригодится.
Ишо
Расхож среди кодеров скрипт на питоне, дампящий процесс. Как побочный эффект, он всегда его рассвопливает.
http://pastebin.com/cWbVzuLTВ
В качестве аргументов берёт список PID желаемых процессов.
Для вытряхивания всего swap его действительно лучше передёрнуть как в первом посте.
Может так же пригодиться echo 3 > /proc/sys/vm/drop_caches, что заставит ядро сбросить кеш файлов (после сложного процесса кеш будет забит в основном его файлами.) От пользования этой командой едет крыша у Preload.
наверное я поздно
наверное я поздно спохватился, но ссылка уже не рабочая.
И что означает последняя фраза (От пользования этой командой едет крыша у Preload.)?
>>echo 3 > /proc/sys/vm/drop_caches
а вот об этом я не знал, попробую, может как раз то что мне нужно.