Куда девается память?

Проблемы установки, настройки и работы Правильной Операционной Системы

Модератор: terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
djan
рядовой
Сообщения: 20
Зарегистрирован: 2009-06-18 11:23:59

Куда девается память?

Непрочитанное сообщение djan » 2009-09-22 23:12:43

есть FreeBSD 7.2-RELEASE x64. Ядро пересбранное. Устанвлено 512 mb оперативки. из запущеных демонов - mysql-server-5.1.38 и proftpd-1.3.2, но нагрузки практически никакой. Сразу после перезаргузки

Код: Выделить всё

last pid:   837;  load averages:  0.54,  0.26,  0.10    up 0+00:01:35  23:07:49
32 processes:  1 running, 31 sleeping
CPU:  0.0% user,  0.0% nice,  0.0% system,  0.0% interrupt,  100% idle
Mem: 26M Active, 11M Inact, 25M Wired, 112K Cache, 16M Buf, 358M Free
Swap: 1024M Total, 1024M Free
а через несколько дней получаю вот такую картинку

Код: Выделить всё

last pid:  7499;  load averages:  0.00,  0.00,  0.00    up 2+00:01:28  22:56:28
28 processes:  1 running, 27 sleeping
CPU:  0.0% user,  0.0% nice,  0.0% system,  0.0% interrupt,  100% idle
Mem: 26M Active, 211M Inact, 79M Wired, 156K Cache, 54M Buf, 112M Free
Swap: 1024M Total, 1024M Free
собственно вопрос, куда деваются ~200 метров свободной памяти?

зы: просьба сильно не пинать, изучением фри только начаинаю заниматься

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

paradox
проходил мимо
Сообщения: 11620
Зарегистрирован: 2008-02-21 18:15:41

Re: Куда девается память?

Непрочитанное сообщение paradox » 2009-09-22 23:17:30

а вы грохните ваших демонов итд
и посмотрите
осободиться через пару дней на голой системе или нет

и за одно top посмотрите
может sql и сьедает всю память

mediamag
лейтенант
Сообщения: 693
Зарегистрирован: 2008-10-02 20:49:21

Re: Куда девается память?

Непрочитанное сообщение mediamag » 2009-09-23 3:22:19

на виндовых серваках наблюдал как за неделю sql сервер сьедает под нагрузкой в 120 юзеров 500 мб оперативы...может и во фре таже картина...нужна оптимизация sql

arkan
ст. прапорщик
Сообщения: 559
Зарегистрирован: 2008-08-03 19:58:13
Откуда: Новосибирск
Контактная информация:

Re: Куда девается память?

Непрочитанное сообщение arkan » 2009-09-23 8:00:33

mediamag писал(а):на виндовых серваках наблюдал как за неделю sql сервер сьедает под нагрузкой в 120 юзеров 500 мб оперативы...может и во фре таже картина...нужна оптимизация sql
500 ??????
ну вы и везунчиг однако

Аватара пользователя
LMik
капитан
Сообщения: 1852
Зарегистрирован: 2007-07-17 9:14:39
Откуда: МО
Контактная информация:

Re: Куда девается память?

Непрочитанное сообщение LMik » 2009-09-23 8:25:18

Покажите топ полный. У вас вот 211M Inact стало, это тупо кэш софтаптейта диска скорее всего. Если кому то понадобится память он будет чиститься.
BSD... Join the dark side.
Виpус детям не игpушка, не товаpищ и не дpуг!

Аватара пользователя
Gamerman
капитан
Сообщения: 1723
Зарегистрирован: 2009-05-17 21:01:23
Откуда: Украина, Ужгород - Днепр
Контактная информация:

Re: Куда девается память?

Непрочитанное сообщение Gamerman » 2009-09-23 9:00:39

А разве это так плохо, что софт ест много свободной памяти? Главное, чтобы он освободил ее, если кто-то другой попросит.
Глюк глюком вышибают!

Аватара пользователя
FoxDW
мл. сержант
Сообщения: 106
Зарегистрирован: 2008-08-04 4:42:43
Откуда: Красноярск
Контактная информация:

Re: Куда девается память?

Непрочитанное сообщение FoxDW » 2009-09-23 10:41:48

да не заморачивайтесь вы по этому поводу это нормально, у всех так

Mem: 26M Active вот сколько активно, остальное не используется
Вот как то так

djan
рядовой
Сообщения: 20
Зарегистрирован: 2009-06-18 11:23:59

Re: Куда девается память?

Непрочитанное сообщение djan » 2009-09-23 12:35:25

LMik писал(а):Покажите топ полный.
top через 13 часов после запуска

Код: Выделить всё

last pid:  2701;  load averages:  0.00,  0.00,  0.00            up 0+13:08:12  12:14:26
28 processes:  1 running, 27 sleeping
CPU:  0.0% user,  0.0% nice,  0.0% system,  0.0% interrupt,  100% idle
Mem: 26M Active, 191M Inact, 80M Wired, 172K Cache, 53M Buf, 124M Free
Swap: 1024M Total, 1024M Free

  PID USERNAME  THR PRI NICE   SIZE    RES STATE    TIME   WCPU COMMAND
 2538 niko        1  44    0 33772K  4704K select   0:00  0.00% sshd
  643 root        1  44    0 10956K  2372K select   0:00  0.00% proftpd
  780 root        1   8    0  6748K  1428K nanslp   0:00  0.00% cron
  584 root        1  44    0  5692K  1376K select   0:00  0.00% syslogd
 2535 root        1   4    0 33772K  4644K sbwait   0:00  0.00% sshd
 2540 niko        1  20    0 10136K  2936K pause    0:00  0.00% csh
  707 mysql       1   8    0  7064K  1724K wait     0:00  0.00% sh
  773 root        1  44    0 22880K  3740K select   0:00  0.00% sshd
  819 root        1   5    0  5688K  1228K ttyin    0:00  0.00% getty
  820 root        1   5    0  5688K  1228K ttyin    0:00  0.00% getty
  824 root        1   5    0  5688K  1228K ttyin    0:00  0.00% getty
  825 root        1   5    0  5688K  1228K ttyin    0:00  0.00% getty
  822 root        1   5    0  5688K  1228K ttyin    0:00  0.00% getty
  821 root        1   5    0  5688K  1228K ttyin    0:00  0.00% getty
  823 root        1   5    0  5688K  1228K ttyin    0:00  0.00% getty
  826 root        1   5    0  5688K  1228K ttyin    0:00  0.00% getty
 2701 niko        1  44    0  8116K  2080K RUN      0:00  0.00% top
  142 root        1  20    0  2568K   924K pause    0:00  0.00% adjkerntz
  526 root        1  44    0  2180K   640K select   0:00  0.00% devd
  756 mysql       9  20    0 56452K 23084K sigwai   0:00  0.00% mysqld
LMik писал(а):У вас вот 211M Inact стало, это тупо кэш софтаптейта диска скорее всего. Если кому то понадобится память он будет чиститься.
на сколько я понимаю, из мана для top
Cache: number of clean pages caching data that are available for immediate reallocation
софт апдейт должен отображаться в Cache

strmaks
рядовой
Сообщения: 47
Зарегистрирован: 2008-04-23 15:58:59
Откуда: Minsk

Re: Куда девается память?

Непрочитанное сообщение strmaks » 2009-09-23 15:39:54

djan писал(а):
LMik писал(а):Покажите топ полный.
top через 13 часов после запуска
LMik писал(а):У вас вот 211M Inact стало, это тупо кэш софтаптейта диска скорее всего. Если кому то понадобится память он будет чиститься.
на сколько я понимаю, из мана для top
Cache: number of clean pages caching data that are available for immediate reallocation
софт апдейт должен отображаться в Cache
Расслабься все у тебя в порядке, смотрим :
Mem: 26M Active, 191M Inact, 80M Wired, 172K Cache, 53M Buf, 124M Free
26 + 191 + 80 + 53 +124 = 474М что с учетом погрешностей и дает твои 500М памяти
Inact - это кеш ФС чтения/записи т.е. если файл зачитался то он попадает в этот кеш и в последующем читается не с диска а из этого кеша. Легко проверить создай фалик размером метров так под 50 и сравни показания top до cat file > /dev/null и после. должны разойтись приблизительно на размер файла.

Код: Выделить всё

Mem: 209M Active, 4497M Inact, 619M Wired, 263M Cache, 399M Buf, 6286M Free

ll testfile.sql
-rw-------  1 root  wheel  2989064628 14 сен 13:59 testfile.sql

cat testfile.sql > /dev/null

Mem: 209M Active, 6427M Inact, 620M Wired, 22M Cache, 399M Buf, 4596M Free
насколько я помню Buf это и есть кеш софтапдейта.
А Cache это насколько я помню количество чистых страниц в памяти готовых под данные но которые в данный момент не могут быть освобождены например из-за фрагментации кеша. Обрати внимание на то как память перераспределилась

(6427 - 4497) Inctive с учетом погрешности равно (6286 - 4596) Free + (263 - 22) Cache
1930 ~ 1931
Не спрашивайте, по ком гудит трансформатор, он гудит сам по себе...

djan
рядовой
Сообщения: 20
Зарегистрирован: 2009-06-18 11:23:59

Re: Куда девается память?

Непрочитанное сообщение djan » 2009-09-23 18:54:07

что-то я ничего не понимаю :(
конфигурация диска ,

Код: Выделить всё

isrv#mount
/dev/ad2s1a on / (ufs, local)
devfs on /dev (devfs, local)
/dev/ad2s2d on /tmp (ufs, local, soft-updates) 
/dev/ad2s3d on /usr (ufs, local, soft-updates)
для корневого раздела софтапдейт не включен, логично пердположить что запись/чтение не должны ложиться к в кеш, для /tmp софтапдйт включен
запускаю два терминала, в одном крутится top, для наблюдения, во втором провожу эксперименты
до начала кспериметов

Код: Выделить всё

last pid: 14501;  load averages:  0.00,  0.00,  0.00            up 0+19:15:54  18:22:08
37 processes:  1 running, 36 sleeping
CPU:  0.0% user,  0.0% nice,  0.0% system,  0.0% interrupt,  100% idle
Mem: 40M Active, [b]203M Inact[/b], 55M Wired, 7580K Cache, 53M Buf, [b]115M Free[/b]
Swap: 1024M Total, 1024M Free
создаю какой нибуть файл, в корне, метров так на 50

Код: Выделить всё

dd if=/dev/random of=/testmem.rand count=102400
по показаниям top в результате имем

Код: Выделить всё

Mem: 40M Active, 203M Inact, 105M Wired, 7580K Cache, 53M Buf, 65M Free
тоесть примерно 50 мб памяти из свободной "переместилось" в Wired, удаляю файло rm /testmem.rand - память "возвращается" в исходное состояние

Код: Выделить всё

Mem: 40M Active, 203M Inact, 55M Wired, 7580K Cache, 53M Buf, 115M Free
проделываю аналогичные экспиримеры на разделе, со включёным софтапдейтами

Код: Выделить всё

dd if=/dev/random of=/tmp/testmem.rand count=102400
результат аналогичный

Код: Выделить всё

до создания файла
Mem: 40M Active, 203M Inact, 55M Wired, 7580K Cache, 53M Buf, 115M Free
после создания
Mem: 40M Active, 203M Inact, 105M Wired, 7580K Cache, 53M Buf, 65M Free
после удаления
Mem: 40M Active, 203M Inact, 55M Wired, 7580K Cache, 53M Buf, 115M Free
возникает вопрос, что всетаки показывает top в строке с памятью и куда "складыывется" кеш диска при включеных/отключеных софтапдейтах?

strmaks
рядовой
Сообщения: 47
Зарегистрирован: 2008-04-23 15:58:59
Откуда: Minsk

Re: Куда девается память?

Непрочитанное сообщение strmaks » 2009-09-24 10:32:17

djan писал(а):возникает вопрос, что всетаки показывает top в строке с памятью и куда "складыывется" кеш диска при включеных/отключеных софтапдейтах?
Как гласит закон мерфи все что можно понять неверно, будет понято неверно.
Не путайте софт-апдейт - отложенная запись метаинформации файловой системы на диск и кеш чтения с диска, это разные механизмы и назначение их абсолютно разное.
Если Вы обратили внимание в моем примере я ЧИТАЛ файл, а вы его пишете, естественно, у Вас выделение памяти происходит по другому.

По поводу куда что складывается я думаю стоит изучить man top, Вы узнаете что кешей в BSD много и работают они в разные моменты, по разному и с разными данными, там же внизу есть расшифровка что и какой элемент top означает.
Не спрашивайте, по ком гудит трансформатор, он гудит сам по себе...