Вот шапка top:
top - 09:35:17 up 9 days, 21:45, 20 users, load average: 0.31, 0.72, 1.16
Tasks: 212 total, 1 running, 211 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.3%us, 0.5%sy, 0.0%ni, 98.2%id, 0.7%wa, 0.2%hi, 0.2%si, 0.0%st
Mem: 4036296k total, 3482516k used, 553780k free, 21320k buffers
Swap: 4200956k total, 2114304k used, 2086652k free, 1888408k cached
видно, что 2gb в свопе, хотя 512mb свободно
можно ли узнать - кто "сидит" в свопе и "выгнать" его от туда в обычную память?
также 1888408k на дисковый кэш - не очень ли много? можно ли уменьшить? (опятьже чтобы из свопа программа вернулась в обычную память)
заниматся затем, что действительно когда часть нужного приложения там сидит - оно начинает медленно работать
если конкретно - говорю об eclipse
да это java, но для себя других альтернатив не вижу (C++)
есть еще набор убодных мне java-приложений
вот и хотел - все что касается нужного приложения выделить в RAM чтобы не тормозило изза свопа
в основном такие тормоза с утра - после просыпания из hibernate
также непонятно зачем такой дисковый кэш большой
Если я не ошибаюсь то оно меняется здесь
/proc/sys/vm/swappiness
значеня от 0 до 100, по умолчанию 60
If you want kernel to swap out more process memory and thus cache more file contents increase the value. Otherwise, if you would like kernel to swap less decrease it.
>также 1888408k на дисковый кэш - не очень ли много? можно ли уменьшить? (опятьже чтобы из свопа программа вернулась в обычную память)
В отличии от Windows, в Linux дисковый кэш динамический. Тоесть, по возможности, Linux пытается использовать почти всю свободную память под дисковый кэш. Как только какому-либо приложению потребуется память, дисковый кэш автоматически уменьшится. Если ты каким-то образом сможешь ограничить размер дискового кэша, это отрицательным образом скажется на производительности системы.
В твоём случае, hibernate сбросил всю память в swap, в после просыпания часть памяти осталась в свопе (так как к ней небыло обращений), а дисковый кэш вырос в размере, заняв неиспользуемую память.
> безопасно ли делать swapoff? а если памяти нехватит?
нет, не безопасно для приложений. swappines подбери. У меня оно вообще 0 стоит на девелоперской тачке, иначе линух свопился, отдавая память в пользу дискового кэша и это создавало очень большие тормоза. Вообще, это значение подбирать нужно индивидуально.