Automatic Shared Memory Management (ASMM)
When the automatic SGA memory management
feature is enabled in the database, the sizes of different
components are flexible to resize to adapt to the needs of the
workload without additional intervention. The database
automatically distributes the SGA among the various components
as required, allowing the system to maximize the consumption of
all available memory.
Whenever an application needs more shared
pool memory, it will obtain the extra memory from free memory in
the buffer cache.
Consequently, no out of memory errors are generated until
the system has completely run out of memory.
When sga_target is not set or set to
zero, the parameters listed
above, except for shared_pool_size, behave as in
previous releases of Oracle Database. The shared_pool_size
will add internal overhead for metadata
including data structures for processes and sessions to
its value and adjust accordingly. The statistical_level
has to be set to TYPICAL or ALL to use ASMM.
The following buffers are considered as
manually sized components in Oracle Database 10g: Log Buffer,
Streams Pool which is
new in Oracle Database 10g, other buffer caches
such as RECYCLE
and KEEP), fixed SGA, and internal allocations.