RHEL process memory allocation

Carlo Sogono <[email protected]> Wed, 19 Jul 2006 16:58:59 +1000
Newsgroups gmane.linux.redhat.devel,gmane.org.user-groups.slug.coders
Message-ID <[email protected]>
Does RHEL or Linux in general limit the amount of memory being used by a 
single process? If so, how do I get around this? After an application 
performing a lot of small mallocs (160 bytes each) nears about 1 GB 
worth of allocated memory, RHEL seems to be slowing down the allocation 
speed of the application. In the first maybe 5 million mallocs it can do 
about 100,000 mallocs per second, however after more than 1 GB worth it 
slows down to just a few thousand per second. CPU consumption also 
slowed down from ~12% (1 CPU full load) to just about 1-3%.

Is there something I can do on Linux or RHEL, or maybe something else I 
should do in my coding? Some stats...

  16:14:57  up 13 days,  4:56,  1 user,  load average: 1.00, 1.08, 0.99
169 processes: 168 sleeping, 1 running, 0 zombie, 0 stopped
CPU states:  cpu    user    nice  system    irq  softirq  iowait    idle
            total    0.4%    0.0%    0.2%   0.0%     0.0%   12.1%   87.0%
            cpu00    0.0%    0.0%    0.0%   0.0%     0.0%    0.0%  100.0%
            cpu01    0.9%    0.0%    0.0%   0.0%     0.0%    0.0%   99.0%
            cpu02    0.0%    0.0%    0.0%   0.0%     0.0%    0.0%  100.0%
            cpu03    0.0%    0.0%    1.9%   0.0%     0.0%    0.0%   98.0%
            cpu04    2.9%    0.0%    0.0%   0.0%     0.0%   97.0%    0.0%
            cpu05    0.0%    0.0%    0.0%   0.0%     0.0%    0.0%  100.0%
            cpu06    0.0%    0.0%    0.0%   0.0%     0.0%    0.0%  100.0%
            cpu07    0.0%    0.0%    0.0%   0.0%     0.0%    0.0%  100.0%
Mem:  9879976k av, 2391196k used, 7488780k free,       0k shrd,   35592k 
buff
                    2009064k actv,  134928k in_d,   83160k in_c
Swap: 2044072k av, 1022036k used, 1022036k free                  246204k 
cached

   PID USER     PRI  NI  SIZE  RSS SHARE STAT %CPU %MEM   TIME CPU COMMAND
16343 root      15   0 1942M 1.8G   348 D     0.3 19.6   5:51   4 tcluster
    19 root      15   0     0    0     0 SW    0.2  0.0   0:35   3 kswapd


Thanks in advance,
Carlo