ALT Linux Sisyphus discussions
 help / color / mirror / Atom feed
From: Yura Zotov <yz@altlinux.ru>
To: sisyphus@altlinux.ru
Subject: Re: [sisyphus] Статистика использования памяти
Date: Sun, 2 Nov 2003 22:03:04 +0300
Message-ID: <20031102190304.GA16869@home-pool4-91.com2com.ru> (raw)
In-Reply-To: <3FA4E811.5050107@unisoft.com.ua>

On Sun, Nov 02, 2003 at 01:18:41PM +0200, Eugene Ostapets wrote:
> Yura Zotov пишет:
> >Решил я собрать статистику использования памяти и понял, что
> >ничего не понимаю.
> >
> >Почему-то в /proc/meminfo нет параметра "использовано памяти",
> >зато есть куча других, из которых мне понятны только три
> >MemTotal, SwapTotal и SwapFree. Например сейчас показывается что
> >у меня из гигабайта свободно всего 300 мегабайт памяти, хотя все
> >запущенные приложения не могут столько занимать. При этом gkrellm
> >сообщает, что занято "на самом деле" всего 240 мегабайт. Откуда он
> >это берёт я тоже не понимаю.
> >
> >Если верить в свободные 300, то пора покупать память, если в
> >занятые 240, то не пора. Так как же это всё понимать? Как из
> >параметров в /proc/meminfo сделать правильные выводы? Где бы
> >почитать и разобраться?
> >
> >Заранее спасибо за помощь.
> >
> >--
> >Юрий А. Зотов
> >
> 
> В ядра 2.4 исповедуется Сановский принцип: свободная память - потерянная 
> память. Т.е. из вывода команды free:
> eugene@master ~ $ free
>              total       used       free     shared    buffers     cached
> Mem:        192400     187592       4808          0       9984      54948
> -/+ buffers/cache:     122660      69740
> Swap:       506008       7252     498756
> 
> Размер свободной памяти явлется суммой free+cached.

Что ж, спасибо. С этим, вроде бы, разобрался. Правда, не без
помощи исходников gkrellm. Непонятность заключалась в том, что
vmstat в колонке cache показывает значение, отличное от значения
в /proc/meminfo.

/proc/meminfo:
        total:    used:    free:  shared: buffers:  cached:
Mem:  1058619392 822013952 236605440        0 180596736 309510144
...
SwapCached:      29816 kB
....

Так вот, vmstat cache = cached - SwapCached. В gkrellm для
вычисления занятой памяти используют формулу (для значений в
/proc/meminfo) "использовано" = used - buffers - cached. Похоже,
что формула достаточно адекватно отражает статистику
использования памяти. Как влияет вычитание SwapCached я ещё не
определил, так как не было ситуации с активным использованием
свопа.

К тому же оказалось, что при периодическом режиме работы (с
ключом -n), vmstat показывает не
   procs                      memory      swap          io     system      cpu
 r  b  w   swpd   free   buff  cache   si   so    bi    bo   in    cs us sy id
 2  0  0 117128 226492 176444 274564    2    2    42    62    0    21  5  1 29

а

   procs                      memory      swap          io     system      cpu
 r  b  w   swpd   free  inact active   si   so    bi    bo   in    cs us sy id
 3  0  0 117128 226464 285700 479964    2    2    42    62    2    21  5  1 29
 4  0  0 117128 226472 285692 479964    0    0     0     0 146994  1416 52  2 46

т.е. появляются какие-то inact и active. Кто знает, что они
значат и как их использовать для вычисления использованной
памяти? Никакой комбинации из total, free, active и inactive я не
придумал, чтобы она была равна значению из вышеприведённой
формулы. А график то хочется построить!

Значения в одноимённых полях у программ top, free и vmstat
совпадают.


--
Юрий А. Зотов



  parent reply	other threads:[~2003-11-02 19:03 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-11-02  8:37 Yura Zotov
2003-11-02 11:18 ` Eugene Ostapets
2003-11-02 15:25   ` [sisyphus] Re: [JT] " Michael Shigorin
2003-11-02 21:13     ` Eugene Ostapets
2003-11-02 19:03   ` Yura Zotov [this message]
2003-11-02 23:24     ` [sisyphus] " Yura Zotov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20031102190304.GA16869@home-pool4-91.com2com.ru \
    --to=yz@altlinux.ru \
    --cc=sisyphus@altlinux.ru \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux Sisyphus discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/sisyphus/0 sisyphus/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 sisyphus sisyphus/ http://lore.altlinux.org/sisyphus \
		sisyphus@altlinux.ru sisyphus@altlinux.org sisyphus@lists.altlinux.org sisyphus@lists.altlinux.ru sisyphus@lists.altlinux.com sisyphus@linuxteam.iplabs.ru sisyphus@list.linux-os.ru
	public-inbox-index sisyphus

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.sisyphus


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git