Re: mergemem: announce & design issues

Philipp Reisner (e9525415@student.tuwien.ac.at)
Tue, 17 Mar 1998 21:10:46 +0100


> > > Do you have some statistics on the saving with some programs you know
> > > benefit from that ?
> > It's hard to forecast the benefit for a program...
> > But some examples:
> > (intel, two instances of the named program)
> >
> > bash 104KB ( ! )
>
> Are you telling me that each bash process have 104k (around that) of
> unshared stuff that is identical in each process ?
>
> What are those anonymous mmap btw ?
>
Last first:
anonymous mapings are all mapings, that where not mapped with mmap.
For example: the stack, memory returned from malloc().

You can see the mappings of a process by typing: cat /proc/xx/maps

I just checked it again, if the bashes are runned by diffrent users
I get only 20KB.
For 2 bashes of root I get 88KB.
For 2 bashes of philipp I (running in two kvts (xterm replacement)) I
get 240KB.
For 2 bashes of philipp running in one kvt I get 80KB.

Why are you not trying it yourself. The installation of mergemem ist
quite easy!

The intresting number, is free + buffers:

philipp@phil:/home/philipp/src/uni/mergemem > free
total used free shared buffers cached
Mem: 63244 52720 10524 32672 5508 23228
-/+ buffers: 23984 39260
Swap: 35544 0 35544
philipp@phil:/home/philipp/src/uni/mergemem > bash
philipp@phil:/home/philipp/src/uni/mergemem > free
total used free shared buffers cached
Mem: 63244 53192 10052 33376 5508 23236
-/+ buffers: 24448 38796
Swap: 35544 0 35544
philipp@phil:/home/philipp/src/uni/mergemem > mergemem -n bash
mergemem started
bash is running as 1660,1705
loading maps for process 1705
process has 6 anonymous and 16 file mappings
loading maps for process 1660
process has 6 anonymous and 16 file mappings
comparing mapping 80ad000-80fc000 (79 pages, 316 KB)
pid 1705: 16p merged, 0p shared, 10p misses, 53p not merged
pid 1660: 16p merged, 0p shared, 10p misses, 53p not merged
comparing mapping 40007000-40008000 (1 pages, 4 KB)
pid 1705: 1p merged, 0p shared, 0p misses, 0p not merged
pid 1660: 1p merged, 0p shared, 0p misses, 0p not merged
comparing mapping 4004a000-4004d000 (3 pages, 12 KB)
pid 1705: 1p merged, 0p shared, 0p misses, 2p not merged
pid 1660: 1p merged, 0p shared, 0p misses, 2p not merged
comparing mapping 400d8000-4010a000 (50 pages, 200 KB)
pid 1705: 1p merged, 0p shared, 1p misses, 48p not merged
pid 1660: 1p merged, 0p shared, 1p misses, 48p not merged
comparing mapping 40112000-40113000 (1 pages, 4 KB)
increasing vm_end to 40114000
pid 1705: 1p merged, 0p shared, 0p misses, 1p not merged
pid 1660: 1p merged, 0p shared, 0p misses, 1p not merged
comparing mapping bfffd000-c0000000 (3 pages, 12 KB)
pid 1705: 0p merged, 0p shared, 0p misses, 3p not merged
pid 1660: 0p merged, 0p shared, 0p misses, 3p not merged
==> pid 1705: 20p merged, 0p shared, 11p misses, 107p not merged
==> pid 1660: 20p merged, 0p shared, 11p misses, 107p not merged
** Saved Pages: 20 is 80 KB
** check runs: 6
** sum runs: 0
mergemem stopped
philipp@phil:/home/philipp/src/uni/mergemem > free
total used free shared buffers cached
Mem: 63244 53120 10124 33452 5508 23236
-/+ buffers: 24376 38868
Swap: 35544 0 35544

------------------------------------------------------------------------
Want to try something new? Are you a Linux hacker?
Volunteer in testing mergemem!
(Get it from http://www.mondoshawan.ml.org/mergemem)
-----
Philipp Reisner E-Mail mailto:e9525415@student.tuwien.ac.at

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu