Re: Oracle vs OS Memory Utilization

From: Mark D Powell <Mark.Powell_at_eds.com>
Date: Fri, 9 May 2008 06:40:22 -0700 (PDT)
Message-ID: <86ed0316-3074-47ff-b2de-694c8e48cda8@s50g2000hsb.googlegroups.com>


On May 8, 10:40 pm, ROAL <ralbert..._at_comcast.net> wrote:
> On May 8, 9:26 pm, "Ana C. Dent" <anaced..._at_hotmail.com> wrote:
>
>
>
>
>
> > ROAL <ralbert..._at_comcast.net> wrote in news:4cd15746-7510-41d6-8368-
> > 20c989386..._at_r66g2000hsg.googlegroups.com:
>
> > > I have a Solaris server V445 running:
> > > 5.10 Generic_120011-14 sun4u sparc SUNW,Sun-Fire-V445
>
> > > The server has 8G of memory. However TOP only is showing 700M
> > > available.
>
> > > The DB instance is only taking up approx 1G in shared memory segment,
> > > i.e. SGA
>
> > > GROUP  CREATOR   CGROUP NATTCH      SEGSZ  CPID  LPID   ATIME
> > > DTIME    CTIME
> > > Shared Memory:
> > > m          1   0x76125b4  --rw-r-----   oracle      dba   oracle
> > > dba     36  943734784
>
> > > BY THE WAY ORACLE 10G:
>
> > > Connected to:
> > > Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit
> > > Production
> > > With the Partitioning, OLAP and Data Mining options
>
> > > SQL> select * from v$SGA;
>
> > > NAME                      VALUE
> > > -------------------- ----------
> > > Fixed Size              2034632
> > > Variable Size         486544440
> > > Database Buffers      419430400
> > > Redo Buffers           35708928
>
> > > Why is the server only showing 700M free. I actually brought the
> > > instance down due to perf issues today then viewed memory. When
> > > instance was down it was showing 7+G of available memory. As soon as I
> > > started the instance with no connections the memory immediately
> > > dropped to 800M available.
>
> > > Also before bringing instance down swap utilization was at 50% of
> > > available, i.e. 4G out of 8G.
>
> > > Curent TOP
> > > Memory: 8192M phys mem, 762M free mem, 8193M total swap, 8193M free
> > > swap
>
> > > At least swap is not being used now.
>
> > > What is eating up all the OS memory?
>
> > > NOTE: There is another server running 2 9i instances with 8G of mem
> > > and 3G in share memory for the 2 instances and this server show 3G
> > > free mem.
>
> > > Thanks.
>
> > What you have described is typical *nix behavior.
> > More than likely what has been swapped out are idle processes owned by
> > root. Use the "ps" command to display the RSS column; where RSS=0 is a
> > swapped out process.
> > sar -W  will show actual pagein & pageout activity.
> > If they are only 2 digit (<100) don't worry about swap.
>
> > What problem are you really trying to solve.
> > Visithttp://www.orafaq.com/forum/i/74940/
> > & read the STICKY post at the top of the "Performance Tuning" sub-forum.- Hide quoted text -
>
> > - Show quoted text -
>
> I am trying to determine by TOP is only showing available memory as
> 700M when the server has 8G on it. As compared to the other server
> this does not make sense. In addition to the fact that the performance
> and CPU on the box at this time are horrible. THis is a report server
> that generates a large amount of data for report every evening.
> However performance at this time is abismal and nothing has changed.
> When investigating this was something that I noticed. I have UNIX
> admins looking into the server but not getting rational explanation to
> my question. The share memory segment on the server is 900M so there
> should be at least 6 to 7G remaining after starting up the instance.
> THis is not the case. We cannot even process our normal data at this
> time due to condition which I am attributing to my observation related
> to what TOP is showing as available memory. I know Oracle does
> processing in the share memory segment but this issue is cause for
> concern and the only thing I know of that is different on the server.
>
> Could oracle background processes be grabbing other physical memory on
> the server. THis was the only thing running after we rebooted the
> server.
>
> Appreciate the input.- Hide quoted text -
>
> - Show quoted text -

Take a look at your heavy logic and physical IO SQL. The workload and quantity of data being processed on the two servers is obviously different. You are likely looking at tuning and application design issues.

You can query Oracle to see how much PGA memory each Oracle background session is using. If any of the numbers are excessive then look to see what that application task does and how.

Also remember that most UNIX utilities do not separate shared memory out of the reported memory usage numbers meaning the amount of memory being shown as used/free may not be accurate depending on the utility and options being used.

HTH -- Mark D Powell -- Received on Fri May 09 2008 - 08:40:22 CDT

Original text of this message