RE: Automatic Shared Memory question

  • From: "Allen, Brandon" <Brandon.Allen@xxxxxxxxxxx>
  • To: "Charles Schultz" <sacrophyte@xxxxxxxxx>
  • Date: Mon, 21 Aug 2006 11:04:01 -0700

Yeah, I heard that too (on this list, I think).  In my case, "KGH: NO
ACCESS" consistently hogs about 800MB-1GB of my 2.4GB SGA though.  I
think maybe it just keeps it aside just in case it might need to add it
to the buffer cache some day.  Here is the exact definition I got from
Oracle Support:

"KGH is Oracles internal memory management allocator. Most information
regarding this memory management structure is proprietary."

Here are the specifics on my parameters and current stats, notice
v$sgastat totals about 3.5GB even though sga_target and sga_max_size are
only 2.4GB:

SQL> show parameter sga

NAME                                 TYPE        VALUE
------------------------------------ ----------- -----------------
lock_sga                             boolean     TRUE
pre_page_sga                         boolean     FALSE
sga_max_size                         big integer 2432M
sga_target                           big integer 2432M
SQL> show sga

Total System Global Area 2550136832 bytes
Fixed Size                  2073416 bytes
Variable Size            1107299512 bytes
Database Buffers         1426063360 bytes
Redo Buffers               14700544 bytes

SQL> select sum(value) from v$sga;


SQL> select sum(bytes) from v$sgastat;


SQL> select * from v$sgastat where bytes > 10000000 order by 3;

POOL         NAME                            BYTES
------------ -------------------------- ----------
shared pool  kglsim heap                  10886400
shared pool  object queue                 10972224
shared pool  private strands              11624448
shared pool  Cursor Stats                 12810416
             log_buffer                   14700544
shared pool  kglsim object batch          14826168
shared pool  KQR M PO                     16347376
java pool    free memory                  16777216
shared pool  ASH buffers                  19922944
shared pool  obj stat memo                21729000
shared pool  PCursor                      28763720
shared pool  KGLS heap                    30683152
shared pool  CCursor                      36028824
shared pool  library cache                40596888
large pool   free memory                  62076128
shared pool  sql area                    162101816
shared pool  free memory                 503130768
shared pool  KGH: NO ACCESS             1088472544
             buffer_cache               1426063360

19 rows selected.


From: Charles Schultz [mailto:sacrophyte@xxxxxxxxx] 
Sent: Monday, August 21, 2006 10:54 AM
To: Allen, Brandon
Cc: Harvinder.Singh@xxxxxxxxxxxxx; ORACLE-L
Subject: Re: Automatic Shared Memory question

Someone told me (Oracle Support? Someone here?) that SGH: NO ACCESS is
actually a transfer of data between the buffer cache and the shared
pool. Ours was growing quite large under ASMM. Oracle Support never give
us the skinny on exactly how it was allocated. 

Privileged/Confidential Information may be contained in this message or 
attachments hereto. Please advise immediately if you or your employer do not 
consent to Internet email for messages of this kind. Opinions, conclusions and 
other information in this message that do not relate to the official business 
of this company shall be understood as neither given nor endorsed by it.


Other related posts: