Memory Question
Tobias Speckbacher
TSpeckbacher at quova.com
Thu Jul 29 00:48:05 UTC 2004
It's not so much about how much you leave for the OS, more about how
many connections are you going to have to service and what these
connections are going to do in Oracle. Oracle's memory requirements are
not satisfied with simply allocating SGA and PGA, each connection
creates a process which again needs a certain amount of memory which
again is variable.
Partial list of oracle connection processes:
31296 oracle 15 0 160M 160M 158M S 38.2 2.2 9:40 oracle
12465 oracle 18 0 1150M 1.1G 1145M R 33.2 16.3 12:37 oracle
24611 oracle 15 0 1690M 1.7G 1689M D 31.3 24.0 24:51 oracle
31529 oracle 15 0 810M 810M 803M S 17.4 11.5 15:34 oracle
31542 oracle 15 0 803M 803M 795M S 16.6 11.4 15:31 oracle
31525 oracle 15 0 817M 817M 809M S 15.6 11.6 15:28 oracle
31521 oracle 15 0 807M 807M 799M S 15.4 11.4 15:27 oracle
31517 oracle 15 0 838M 838M 830M S 14.0 11.9 15:45 oracle
31546 oracle 15 0 758M 758M 751M S 11.8 10.7 15:40 oracle
1914 oracle 15 0 644M 644M 641M S 6.9 9.1 0:36 oracle
1920 oracle 15 0 439M 439M 436M D 6.7 6.2 0:24 oracle
1916 oracle 15 0 516M 516M 513M S 6.5 7.3 0:27 oracle
29322 oracle 15 0 11852 8416 8256 S 3.9 0.1 851:02 oracle
I run an Oracle system with 8GB physical memory.
My memory layout as of 5 minutes looks like this:
total: used: free: shared: buffers: cached:
Mem: 7369531392 7112523776 257007616 2756382720 621797376 2528374784
Swap: 10741956608 136052736 10605903872
MemTotal: 7196808 kB
MemFree: 250984 kB
MemShared: 2691780 kB
Buffers: 607224 kB
Cached: 2341388 kB
SwapCached: 127728 kB
Active: 308604 kB
Inact_dirty: 5458968 kB
Inact_clean: 548 kB
Inact_target: 1799128 kB
HighTotal: 6422464 kB
HighFree: 245544 kB
LowTotal: 774344 kB
LowFree: 5440 kB
SwapTotal: 10490192 kB
SwapFree: 10357328 kB
BigPagesFree: 0 kB
The Oracle server has 2.7GB SGA, out of that roughly 400MB is allocated
to the shared pool.
I think I have allocated 400MB or so to PGA.
How much memory you on your server will need to operate, really does
depend on how your users will interact with the database.
You of course always can exhaust physical memory, at which point the
system will start thrashing swap around (usually does not instill much
joy in userland).
Also of consideration, if you exhaust your memory the buffer cache will
shrink (as you can see in my config, it already is pretty tiny 600+MB).
This has the side effect of the system having to process more atomic IO
operations rather than having the luxury of waiting for a good chunk to
come together and flush it out in one operation.
If you are unsure about how much you are really going to need, start
with a high memory config and scale it down until you reach a mode of
operation that is optimal for your application/users. Just have to set
the expectation that you may have to take the DB down a few times to
adjust the SGA sizing.
-Tobias
-----Original Message-----
From: redhat-list-bounces at redhat.com
[mailto:redhat-list-bounces at redhat.com] On Behalf Of Parekh, Ketan
Sent: Wednesday, July 28, 2004 2:21 PM
To: General Red Hat Linux discussion list
Subject: RE: Memory Question
As a general rule of thumb how much memory should be left for the OS ?
Assuming I have 4 GB physical memory ?
Thanks
Ketan
-----Original Message-----
From: redhat-list-bounces at redhat.com
[mailto:redhat-list-bounces at redhat.com] On Behalf Of Tobias Speckbacher
Sent: Wednesday, July 28, 2004 2:31 PM
To: General Red Hat Linux discussion list
Subject: RE: Memory Question
Looking at your kernel version you are using AS2.1.
The only parameters you should have had to change are shmmax, sem
,shmall, semmni (some of the default are acceptable)
The commands indeed should return the correct output.
The OS should be using far less than 500MB.
As you can see in the info you posted.
Free: 154764
Buffers: 333072
Total "free" = 476MB
So OS memory used should be 4GB - 476MB - SGA - PGA
In any case an SGA this large with 4GB memory will cause issues as you
start using the DB from my experience.
-Tobias
-----Original Message-----
From: redhat-list-bounces at redhat.com
[mailto:redhat-list-bounces at redhat.com] On Behalf Of Parekh, Ketan
Sent: Wednesday, July 28, 2004 12:07 PM
To: redhat-list at redhat.com
Subject: Memory Question
HI! Folks,
I need some help with memory stats. I have an Oracle database running.
Below is he OS version :
Linux tsonode1 2.4.9-e.25enterprise #1 SMP Fri Jun 6 17:55:13 EDT 2003
i686 unknown
oracle at tsonode1[tsodev1]$ free -t
total used free shared buffers
cached
Mem: 2058760 1814816 243944 742204 243924
213272
-/+ buffers/cache: 1357620 701140
Swap: 2096472 217516 1878956
Total: 4155232 2032332 2122900
>From the above as to what I understand is
Total Physical memory is : 2 GB
USED 1.35 GB is used
Free 701 Megs
So of the 1.35 used
Oracle SGA is 950 Megs
Oracle PGA ( Process memory ) 260 Megs
Other non-oacle process 150 Megs
Total 1.35 GB
Now there is a limitation on RH 2.1 Advanced server for having oracle
SGA > 1.8 GB. To increase the SGA we had to
Changes to the memory settings and relinked the oracle binaries as
explained in the RH doc.
OS : Linux tsonode2 2.4.9-e.46enterprise #1 SMP Wed Jun 30 18:11:26 EDT
2004 i686 unknown
total used free shared buffers
cached
Mem: 3863184 3708420 154764 2461228 333072
587348
-/+ buffers/cache: 2788000 1075184
Swap: 2096472 1116 2095356
Total: 5959656 3709536 2250120
SGA : 2.75 GB
PGA : 837 Megs
Total Physical memory is 4 GB on ths host.
So now the confusion part is is Oracle has sucked in 2.75 + 537 = 3.5 GB
- is the OS using only 500 megs ?
Does free -t , top vmstat commands show the right numbers after this
change in the kernel ?
BTW : both the free -t outputs are from diff nodes - I put them to
compare and see where am I going wrong here.
Thanks for your help..
Ketan
--
redhat-list mailing list
unsubscribe mailto:redhat-list-request at redhat.com?subject=subscribe
https://www.redhat.com/mailman/listinfo/redhat-list
--
redhat-list mailing list
unsubscribe mailto:redhat-list-request at redhat.com?subject=unsubscribe
https://www.redhat.com/mailman/listinfo/redhat-list
--
redhat-list mailing list
unsubscribe mailto:redhat-list-request at redhat.com?subject=unsubscribe
https://www.redhat.com/mailman/listinfo/redhat-list
More information about the redhat-list
mailing list