Oracle Technologies Blog

By ASKM

Manageability – Memory Management part 1

Posted by Srikrishna Murthy Annam on August 28, 2009

Automatic Memory Management  ( AMM )

Automatic Memory Management allows both SGA and PGA memory to be allocated automatically by Oracle.

Oracle 9i -> PGA_AGGREGATE_TARGET parameter  -> PGA automated
Oracle 10g -> SGA_TARGET -> SGA automated.
Oracle 11g -> MEMORY_TARGET -> ( PGA + SGA ) automated.

AMM uses two parameters MEMORY_TARGET and MEMORY_MAX_TARGET.

MEMORY_TARGET : Dynamic parameter that specifies the amount of memory that is currently  available  to  the instance.  The default value is “0”.
MEMORY_MAX_TARGET: Static parameter that specifies the maximum amount of memory the instance can ever use. It defaults to MEMORY_TARGET setting.

AMM manages all SGA + PGA memory together, allowing it to shift memory from SGA to PGAs and vice versa. You only need to set a MEMORY_TARGET. If PGA requires memory , oracle releases some SGA memory to OS and server processes are allowed to increase their aggregate PGA size up to the amount of memory released.
Oracle 11g is using a new mechanism for managing shared memory which is shared file system concept. AMM memory segments are memory mapped files in /dev/shm.

11g memory management = SGA auto tune + PGA auto tune

How to enable AMM :

1) Set the following init.ora parameters

MEMORY_MAX_TARGET=xx G

MEMORY_TARGET= xx G    –>    set <= memory_max_target

PGA_AGGREGATE_TARGET=0

SGA_TARGET=0

2) Bounce database to effect the above values ( memory_max_target is static parameter )

( More internal concepts about how this AMM is working with shared memory file system will be covered in another article )

askm

AMM-diag

Important  AMM Views
===============
====

V$MEMORY_CURRENT_RESIZE_OPS ->  provide information on current and previous component resize operations.
V$MEMORY_DYNAMIC_COMPONENTS -> The amount of memory allocated to each dynamic component is displayed
V$MEMORY_RESIZE_OPS -> provide information on current and previous component resize operations.
V$MEMORY_TARGET_ADVICE -> provides information to help tune the MEMORY_TARGET parameter

Important  ASMM Views
===============
=====

V$SGA_DYNAMIC_COMPONENTS
V$SGA_DYNAMIC_FREE_MEMORY
V$SGA_CURRENT_RESIZE_OPS
V$SGA_RESIZE_OPS
V$SGAINFO

=====================================================================
DEMO               DEMO                DEMO              DEMO              DEMO                  DEMO                      DEMO
=====================================================================

<  Pending >

Automatic Memory Management (AMM)

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

 
%d bloggers like this: