Large pool is another
part of the SGA introduced in Oracle 8, and is similar to
shared pool but with specific restrictions in usage. This
memory can only be used for allocation to certain types
and sizes.
Introduction
The large pool does not come out of your
shared pool area and is a separate area that rests in the
SGA. So, When ever you assign space to large pool, you will
be increasing the overall SGA.
Unlike the shared pool there is no LRU
(least recently used) mechanism so chunks of memory are
never aged out of the large pool - memory has to be explicitly
allocated and freed by each session. If there is no free
memory left when a request is made then an ORA-4031 will
be signalled.
The main uses of Large pool fall into
2 categories
1. Sequential file IO Buffering : Particulary
helpful in running RMAN backups which perform sequential
file IO when multiple IO Slaves are used. Initial investigation
shows that using the large pool for server managed recovery
really increases the Backup Speed.
2. Multi Threaded Server : This can also
be used in a multi threaded environment for the User Global
Area. If you configure a Large Pool, MTS will only use this
pool for UGA and whenever a session starts the fixed UGA
is allocated in the shared pool and the rest of the memory
is taken from Large Pool in chunks of the init.ora parameter
LARGE_POOL_MIN_ALLOC.
INIT.ORA PARAMETERS
1. LARGE_POOL_SIZE : lets you specify
the size of the large pool allocation heap. Minimum is 300K
or LARGE_POOL_MIN_ALLOC. Max value is 2G and is OS dependent.
2. LARGE_POOL_MIN_ALLOC : specifies the
minimum allocation size from the large pool. The value of
the parameter can be specified in megabytes or kilobytes
DBAsupport.com Home Page