Virtual memory consumption (both user and kernel) in modern
CURRENT
Dmitry Pryanishnikov
dmitry at atlantis.dp.ua
Thu Feb 16 04:16:04 PST 2006
Hello!
On Wed, 15 Feb 2006, David Xu wrote:
>> 1) Is it normal that virtual memory size for almost every non-kernel
>> process
>> is close to 50Mb now:
>>
>> ftp://external.atlantis.dp.ua/FreeBSD/CURRENT/top.txt
>>
>> Is it miscalculation or real growth of virtual address space?
>>
>>
> I believe this is the new malloc code in libc, I am seeing this on my
> Athlon64 machine, now it likes swap memory, in the old days, it seldom
> touched it.
I've just compiled a sample program under week-old CURRENT:
#include <stdio.h>
main()
{
putchar('\n');
for(;;);
}
Without putchar() call my program's virtual address space isn't so big:
PID USERNAME THR PRI NICE SIZE RES STATE TIME WCPU COMMAND
52126 root 1 127 0 1244K 440K RUN 0:31 43.97% a.out
But with putchar() it gives us
PID USERNAME THR PRI NICE SIZE RES STATE TIME WCPU COMMAND
58959 root 1 130 0 50100K 632K RUN 0:03 47.19% a.out
What't the reason of so terrible virtual memory consumption? I don't believe
that just plain stdio buffering requires 50 Mbytes (!) of virtual address
space.
Sincerely, Dmitry
--
Atlantis ISP, System Administrator
e-mail: dmitry at atlantis.dp.ua
nic-hdl: LYNX-RIPE
More information about the freebsd-current
mailing list