Archives


- Beowulf
- Beowulf Announce
- Scyld-users
- Beowulf on Debian

Scyld: memory leak or just caching?

Many of your questions may have already been answered in earlier discussions or in the FAQ. The search results page will indicate current discussions as well as past list serves, articles, and papers.

Search

Mike Weller weller at zyvex.com
Wed Jun 27 15:33:35 PDT 2001


Ok, this makes sense.  I found that looking in /proc/meminfo provides
more useful information about the buffer and cache memory.  I reran my
test using /proc/meminfo instead of "free", and I'm curious as to why
the "buffer/cache" #s were unchanged after running the "test app":

[root at beowulf ~]# bpsh 2 egrep "total|^Mem:" /proc/meminfo
        total:    used:    free:  shared: buffers:  cached:
Mem:  1610125312 1004892160 605233152        0 872271872 18092032

...ok, 872M buffered, 18M cached, 114M actually used...
  (perhaps beostatus could have another column for  non-buffered/cached ram)

[root at beowulf ~]# bpsh 2 /home/malloc &
[1] 23276

root at beowulf /root # bpsh 2 ps -wleaf|grep -i malloc
040 T root       193    15  0  64   0    - 25871 109ec7 Jul12 ?        00:00:00 /home/malloc

... ok, 100M is allocated.

[root at beowulf ~]# bpsh 2 egrep "total|^Mem:" /proc/meminfo
        total:    used:    free:  shared: buffers:  cached:
Mem:  1610125312 1004965888 605159424        0 872271872 18092032

... it didn't drop. let me try another node:

[root at beowulf ~]# bpsh 3 egrep "total|^Mem:" /proc/meminfo
        total:    used:    free:  shared: buffers:  cached:
Mem:  1610125312 107184128 1502941184        0 52342784 18288640
 
[root at beowulf ~]# ( bpsh 3 /home/malloc ) &
[1] 23422

[root at beowulf ~]# bpsh 3 egrep "total|^Mem:" /proc/meminfo
        total:    used:    free:  shared: buffers:  cached:
Mem:  1610125312 107286528 1502838784        0 52342784 18288640

...again, used went up 100k. i expected buffered to drop 100000000.

-Mike 

Sean wrote:
> On Wed, 27 Jun 2001, Mike Weller wrote:
> 
> > Sean wrote:
> > > Sounds like just caching to me.  However, if you want to double check,
> > > write a simple program that malloc()'s about 100M, bpsh it over there
> > > and see what happens.
> > 
> > Ok, I wrote a program to allocate 100M of RAM.  "ps -leaf" reports
> > 100M used by the program (taking SZ * 4096k/page).  However, "free"
> > reports an increase of only 100k, and no swap was used.  Does the

> This indicates that the usage you were seeing was just disk cache.  The
> kernel automatically caches data that you read off the disk into ram so
> that the next time you make the request, you don't actually have to use
> the disk and thus get it much faster.  As part of this, when you need to
> use more ram, it automagically shrinks the size of the cache its using
> so that there will be enough space for the memory you want to allocate.

-- 
Michael J. Weller, M.Sc.               office: (972) 235-7881 x.242
weller at zyvex.com                         cell: (214) 616-6340
Zyvex Corp., 1321 N Plano           facsimile: (972) 235-7882    
Richardson, TX 75081                      icq: 6180540





More information about the Beowulf mailing list