Sponsored Content
Operating Systems Solaris Sudden rise in heap memory of a process Post 302897111 by Nidds on Friday 11th of April 2014 02:42:04 AM
Old 04-11-2014
Sudden rise in heap memory of a process

Hi,

There is a abrupt memory rise observed for a process on solaris.
When the process is started the memory is around 268 MB and is stable for a day. Then suddenly the memory increased to 4364 MB.

Below is the pmap -xs output for the process (only for heap)
Code:
         Address     Kbytes        RSS       Anon     Locked Pgsz Mode   Mapped File
000000010012A000         24         24         16          -   8K rwx--    [ heap ]
0000000100130000        192        192        128          -  64K rwx--    [ heap ]
0000000100160000        192          -          -          -    - rwx--    [ heap ]
0000000100190000       2496       2496        320          -  64K rwx--    [ heap ]
0000000100400000     163840     163840     147456          -   4M rwx--    [ heap ]
000000010A400000    4190208          -          -          -    - rwx--    [ heap ]
000000020A000000       4096       4096       4096          -   4M rwx--    [ heap ]

Can anyone please help me in understanding the reason of sudden allocation of heap as huge as 4190208 (4 GB). What is the significance of empty RSS and Anon as observed for adress space
Code:
0000000100160000        192          -          -          -    - rwx--    [ heap ]
and
000000010A400000    4190208          -          -          -    - rwx--    [ heap ]

I also observed a sudden rise in CPU utilization when the memory rise for the process. And after that CPU utilzation was normal.

Can this be linked to sudden memory rise !

Moderator's Comments:
Mod Comment Please use code tags next time for your code and data. Thanks

Last edited by vbe; 04-11-2014 at 10:35 AM..
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Memory used by a particular process

how to get memory used by a particular process in unix? (3 Replies)
Discussion started by: superprogrammer
3 Replies

2. UNIX for Dummies Questions & Answers

Memory used by a process

Hello all 'top' command shows the top 15 processes in terms of CPU usage. Is there any other command in UNIX ,that will show the top processes in terms of memory usage ? or is there a command, that will give me the memory usage of a particular process ,if I pass the process id as a... (3 Replies)
Discussion started by: luft
3 Replies

3. AIX

Process using the most memory

Hi:- Is there an easy way to find out which process is consuming the most memory on an AIX server? Thanks, (5 Replies)
Discussion started by: janet
5 Replies

4. AIX

AIX 5.3 Heap Memory with SAP

Any idea whether this parameter can be set / adjusted and where please? (3 Replies)
Discussion started by: johnf
3 Replies

5. AIX

lvm_queryvg call does not work properly and results in a sudden memory rise.

On AIX 5.3 host, the lvm_queryvg call does not work properly and results in a sudden memory rise. This is happening on one particular host and the call works fine on another host. Is this a known issue and is there any patch available for this? (0 Replies)
Discussion started by: sandiworld
0 Replies

6. Linux

copy_from_user does not copy from process-heap

Hello all, I need a positive reply from you. I want to copy the user-process-heap to the kernel space memory. For that, I wrote the following code but it does not copy. ---------------- code -------------- unsigned long length_of_heap_vma = < length of vma pointing to process-heap > ; void *... (2 Replies)
Discussion started by: najoshi
2 Replies

7. UNIX for Dummies Questions & Answers

Checking heap memory size for java app

Hi I have one Java application installed in my Solaris system. Is there a way to find out the heap memory allocated size/used size/free size for the particular Java process? If anyone knows the command, please let me know. Even I appreciate if I have any scripts to find out the same. ... (0 Replies)
Discussion started by: nthiruvenkatam
0 Replies

8. Emergency UNIX and Linux Support

CPU and memory utilization of a process, by process name

Can someone please help me with a script that will help in identifying the CPU & memory usage by a process name, rather than a process id.This is to primarily analyze the consumption of resources, for performance tweaking. G (4 Replies)
Discussion started by: ggayathri
4 Replies

9. Solaris

[DOUBT] Memory high in idle process on Solaris 10 (Memory Utilization > 90%)

Hi Experts, Our servers running Solaris 10 with SAP Application. The memory utilization always >90%, but the process on SAP is too less even nothing. Why memory utilization on solaris always looks high? I have statement about memory on solaris, is this true: Memory in solaris is used for... (4 Replies)
Discussion started by: edydsuranta
4 Replies

10. UNIX for Advanced & Expert Users

Troubleshooting sudden high memory usage

Hi, This morning there was an app that caused a sudden spike in I/O and memory usage in the server. We found the reason for the I/O, however the memory spike was something new, as it had never happened before. I figured out what caused the memory spike, however, how do I investigate why... (6 Replies)
Discussion started by: anaigini45
6 Replies
pmadvise(1)							   User Commands						       pmadvise(1)

NAME
pmadvise - applies advice about memory to a process SYNOPSIS
pmadvise -o option[,option] [-F] [-l] [-v] pid... DESCRIPTION
pmadvise applies advice about how memory is used in the specified process using madvise(3C). pmadvise allows users to apply advice to a specific sub-range at a specific instant in time. pmadvise differs from madv.so.1(1) in that madv.so.1(1) applies the advice throughout execution of the target program to all segments of a specified type. OPTIONS
The following options are supported: -F Force by grabbing the target process even if another process has control. You should exercise caution when using the -F option. See proc(1). -l Show unresolved dynamic linker map names. -o Specify advice to apply in the following form: private=advice shared=advice heap=advice stack=advice address[:length]=advice where the advice can be one of the following: normal random sequential willneed dontneed free access_lwp access_many access_default An address and length can be given to specify a subrange to apply the advice.The address should be hexadecimal and the length should be in bytes by default. If length is not specified and the starting address refers to the start of a segment, the advice is applied to that segment. length can be qualified by K, M, G, T, P, or E to specify kilobytes, megabytes, gigabytes, terabytes, or exabytes respectively as the unit of measure. -v Print verbose output. Display output as pmap(1) does, showing what advice is being applied where. This can be useful when the advice is being applied to a named region (for example, private, shared, and so forth) to get feedback on exactly where the advice is being applied. pmadvise tries to process all legal options. If an illegal address range is specified, an error message is printed and the offending option is skipped. pmadvise quits without processing any options and prints a usage message when there is a syntax error. If conflicting advice is given on a region, the order of precedence is from most specific advice to least, that is, most general. In other words, advice specified for a particuliar address range takes precedence over advice for heap and stack which in turn takes precedence over advice for private and shared memory. Moreover, the advice in each of the following groups are mutually exclusive from the other advice within the same group: MADV_NORMAL, MADV_RANDOM, MADV_SEQUENTIAL MADV_WILLNEED, MADV_DONTNEED, MADV_FREE MADV_ACCESS_DEFAULT, MADV_ACCESS_LWP, MADV_ACCESS_MANY OPERANDS
The following operands are supported: pid Process ID. EXAMPLES
Example 1 Applying Advice to a Segment at Specified Address The following example applies advice to a segment at a specified address: % pmap $$ 100666: tcsh 00010000 312K r-x-- /usr/bin/tcsh 0006C000 48K rwx-- /usr/bin/tcsh 00078000 536K rwx-- [ heap ] FF100000 856K r-x-- /lib/libc.so.1 FF1E6000 32K rwx-- /lib/libc.so.1 FF1EE000 8K rwx-- /lib/libc.so.1 FF230000 168K r-x-- /lib/libcurses.so.1 FF26A000 32K rwx-- /lib/libcurses.so.1 FF272000 8K rwx-- /lib/libcurses.so.1 FF280000 576K r-x-- /lib/libnsl.so.1 FF310000 40K rwx-- /lib/libnsl.so.1 FF31A000 24K rwx-- /lib/libnsl.so.1 FF364000 8K rwxs- [ anon ] FF370000 48K r-x-- /lib/libsocket.so.1 FF38C000 8K rwx-- /lib/libsocket.so.1 FF3A0000 8K r-x-- /platform/sun4u-us3/lib/libc_psr.so.1 FF3B0000 176K r-x-- /lib/ld.so.1 FF3EC000 8K rwx-- /lib/ld.so.1 FF3EE000 8K rwx-- /lib/ld.so.1 FFBE6000 104K rw--- [ stack ] % % pmadvise -o 78000=access_lwp $$ % Example 2 Using the -v Option The following example displays verbose output from pmadvise: % pmadvise -o heap=access_lwp,stack=access_default -v $$ 1720: -sh 00010000 88K r-x-- /sbin/sh 00036000 8K rwx-- /sbin/sh 00038000 16K rwx-- [ heap ] <= access_lwp FF250000 24K r-x-- /lib/libgen.so.1 FF266000 8K rwx-- /lib/libgen.so.1 FF272000 8K rwxs- [ anon ] FF280000 840K r-x-- /lib/libc.so.1 FF362000 32K rwx-- /lib/libc.so.1 FF36A000 16K rwx-- /lib/libc.so.1 FF380000 8K r-x-- /platform/sun4u-us3/lib/libc_psr.so.1 FF390000 64K rwx-- [ anon ] FF3B0000 168K r-x-- /lib/ld.so.1 FF3EA000 8K rwx-- /lib/ld.so.1 FF3EC000 8K rwx-- /lib/ld.so.1 FFBFE000 8K rw--- [ stack ] <= access_default EXIT STATUS
The following exit values are returned: 0 Successful completion. non-zero An error occurred. FILES
/proc/* Process files /usr/prob/lib/* proc tools support files ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Availability |SUNWesu | +-----------------------------+-----------------------------+ |Interface Stability |See below. | +-----------------------------+-----------------------------+ The command syntax is Evolving. The output formats are Unstable. SEE ALSO
madv.so.1(1), pmap(1), proc(1), madvise(3C), attributes(5) SunOS 5.11 25 Sep 2008 pmadvise(1)
All times are GMT -4. The time now is 02:48 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy