The SGA comprises a number of memory components, which are pools of memory
used to satisfy a particular class of memory allocation requests. Examples of memory
components include the shared pool (used to allocate memory for SQL and PL/SQL
execution), the java pool (used for java objects and other java execution memory), and
the buffer cache (used for caching disk blocks). All SGA components allocate and
deallocate space in units of granules. Oracle Database tracks SGA memory use in
internal numbers of granules for each SGA component.
The memory for dynamic components in the SGA is allocated in the unit of granules.
Granule size is determined by total SGA size. Generally speaking, on most platforms,
if the total SGA size is equal to or less than 1 GB, then granule size is 4 MB. For SGAs
larger than 1 GB, granule size is 16 MB. Some platform dependencies may arise. For
example, on 32-bit Windows NT, the granule size is 8 MB for SGAs larger than 1 GB.
Consult your operating system specific documentation for more details.
You can query the V$SGAINFO view to see the granule size that is being used by an
instance. The same granule size is used for all dynamic components in the SGA.
If you specify a size for a component that is not a multiple of granule size, Oracle
Database rounds the specified size up to the nearest multiple. For example, if the
granule size is 4 MB and you specify DB_CACHE_SIZE as 10 MB, the database actually
allocates 12 MB.
SGA组件和SGA内存颗粒
可以通过V$SGAINFO 系统试图查看由某个实例使用的颗粒大小.适用于所有SGA的动态组件
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10599713/viewspace-996001/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/10599713/viewspace-996001/