Главная страница


ru.unix.bsd

 
 - RU.UNIX.BSD ------------------------------------------------------------------
 From : Eugene Grosbein                      2:5006/1       22 Sep 2005  18:09:58
 To : Dmitry Miloserdov
 Subject : Re: malloc() overcommit bug
 -------------------------------------------------------------------------------- 
 
 22 сен 2005, четверг, в 13:38 KRAST, Dmitry Miloserdov написал(а):
 
  EG>> Работать "по свопу" - это использовать виртуальную память, как
  EG>> физическую, ни о чем не думая. Работать так обычно невозможно, уж очень
  EG>> медленно.
  EG>> А если думаешь, что делаешь с памятью, то read/write может быть и
  EG>> быстрее за счет того, что лучше системы знаешь, поверх чего писать то,
  EG>> что читаешь.
  DM> Угу заточить задачу под конкретное кол-во доступной памяти
 
 Под параметризованное количество.
 
  DM> а ее кол-во
  DM> меняется и вчера ты память неэффективно использовал - писал поверх
  DM> того что могло бы еще полежать а сегодня в своп полез.
 
 Дык жисть такая. Можно еще параметр этот определять динамически,
 если дадут, конечно.
 
  DM>>> И к тому же это был аргумент не в пользу такой работы а для
  DM>>> демонстрации того, что VSZ>>RSS не говорит о том что память
  DM>>> зааллоцированная процессом ему не нужна.
  EG>> Она ему далеко не факт, что нужна. Очень часто и не будет нужна до
  EG>> exit().
  DM> Согласен. Далеко не факт, что нужна. Вот только думать что она не нужна
  DM> пока тоже нет никаких оснований.
 
 SO говорил про практику, я тоже. Теория тут довольно сильно от практики
 отличается, в особенности потому что у каждого практика своя.
 
  EG>>>> И его прибьют при поднятии из свопа?
  DM>>> Хм... Hет. Hе понял перехода. Причем тут это?
  EG>> Если не прибьют, то и проблемы у него нет.
  DM> Так. Вспоминаем что хотели найти. своими словами:
  DM> В защиту позиции - "резервирование свапа - зло"  было сказано,
  DM> что весь современный софт аллоцирует памяти больше чем может
  DM> сожрать. Соответственно изначально ищем софт который зарезервировал
  DM> большое количество памяти и 1) не использовал ее ни разу (иначе под нее
  DM> уже все зарезервировано) и 2) не будет ее использовать при нормальной
  DM> эксплуатации (падение при ненормальной эксплуатации считается
  DM> оправданным).
  DM> Для поиска такого софта тобой был предложен критерий VSZ>>RSS
  DM> ( ну не верю я top'у а ps не знает SIZE и RES )
 
 А чей-то не веришь? SIZE и VSZ синонимы, как и RES и RSS - из манов.
 
  DM> В качестве аргумента несостоятельности твоего критерия я привел тебе
  DM> два примера процессов удовлетворяющих критерию но не являющимися
  DM> искомыми.
 
 Это не критерий. Это практика.
 
  DM>>> И ты уверен что это не ro mmap или не shared или не mlocked?
  EG>> Да. Hе ro однозначно, не shared (не с кем) и не mlocked - руки коротки.
  DM> Откуда уверенность? Про tomcat ничего не знаю но вот java очень любит все
  DM> нужные jar'ы mmap'нуть себе в адресное пространство - ты бы взглянул
  DM> lsof'ом
  DM> сколько там подмаплено. Еще она любит что-то слить во временный файл
  DM> и тоже его mmap'нуть r-o.
 
 Это все неважно, потому что ps -acx|grep -c java выдает единицу.
 
 Eugene
 -- 
 Choose no life
 --- slrn/0.9.8.0 (FreeBSD)
  * Origin: Svyaz Service JSC (2:5006/1@fidonet)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: malloc() overcommit bug   Eugene Grosbein   22 Sep 2005 18:09:58 
Архивное /ru.unix.bsd/260936e17727b.html, оценка 3 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional