Help with memory usage

Gijs info at boer-software-en-webservices.nl
Thu Jan 10 20:07:45 UTC 2008


Well, if you know at what time the increase takes place, isn't it also 
possible to point out which process is doing it?
I don't know if you have already looked at it, but I take it that this 
process would also take up CPU power, or it's a process that is being 
start up only at around the specific time. In any case, you should see 
this process gradually eat up your memory and freeing it up later on.

I had a memory problem as well a couple years back, and all I did was 
putting "ps ax" in a file every 5 minutes. I could easily see which 
process was eating up all my memory. Its a rather crude method, but 
effective. And yea, it'll take some time to wade through all the data, 
but you already know at what times the increase takes place, so you can 
narrow down your search quite a bit.

aragonx at dcsnow.com wrote:
> I have a server that has 32G of physical memory and 10G of swap space. 
> Routinely during the day, always around the same time, it will gradually
> go to ~80% swap space usage.
>
> Using Hotsanic, I can see that this percentage of swap space usage has
> been gradually increasing over the months.  About a year ago, it was at
> ~50% so now I'm becoming alarmed.
>
> The simple solution (which I will be doing in any case) is to add more
> swap space.  This does fix the memory issue but I fear there are some
> performance implications that I have yet to hear about from my users.
>
> So, I wrote a program that I thought would gather the amount of memory
> used by my key applications (being Oracle and Java) and display it for me.
>  The idea was flawed because of shared memory.  I have yet to devise a way
> around this issue and that is where I could use some help.
>
> Here is the program for informational purposes:
>
> TOTAL=0
>
> if [ $1 = "" ]
> then
>    echo "You must enter the program you wish to find out the memory usage
> for."
> fi
>
> ps -ef|grep $1|grep -v grep|tr -s " "|cut -d " " -f2 >
> /tmp/will_memory_usage.txt
>
> exec 3< /tmp/will_memory_usage.txt
> until [ $done ]
> do
>    read <&3 line
>    if [ $? != 0 ]; then
>       done=1
>       continue
>    fi
>    PROCVERT=`cat /proc/$line/status|grep VmSize|tr -s " "|cut -d " " -f2`
>    let TOTALVERT=TOTALVERT+PROCVERT
>
>    PROCREAL=`cat /proc/$line/status|grep VmRSS|tr -s " "|cut -d " " -f2`
>    let TOTALREAL=TOTALREAL+PROCREAL
> done
>
> echo "$1 virtual memory usage is $TOTALVERT."
> echo "$1 real memory usage is $TOTALREAL."
> let TOTAL=TOTALREAL+TOTALVERT
> echo " "
> echo "Total $1 memory usage is $TOTAL."
>
> rm /tmp/will_memory_usage.txt
>
>
>
>   




More information about the fedora-list mailing list