Yeah I know, did it again. On Tue, 2004-01-06 at 10:19, Mladen Gogala wrote: > The name is Breitling. Wolfgang Breitling. Not to be confused with Bond. James Bond. > On 2004.01.06 12:34, Jared Still wrote: > > * to satisfy curiosity > > * to have a better understanding of how Oracle works > > > > Most DBA's probably don't need to know this stuff. Most > > performance problems will not likely require you to know > > any of this. > > > > If you spend a lot of time solving other people's 'unsolvable' > > Oracle performance problems, as Steve Adams, Jonathan Lewis, > > Cary, Millsap, Gary Goodman, Wolgang Breitling ( Hope I spelled his name > > correctly this time), or many other consultant types on this list > > then this kind of thing will be very useful to you. > > > > Ditto if you have a large number of instances to deal with, and > > run into tricky tuning problems. > > > > Jared > > > > > > On Tue, 2004-01-06 at 08:24, Guerra, Abraham J wrote: > > > Hi all, > > > > > > Why would anybody care about all these heap stuff? How does it help > > > performance.... > > > > > > Thanks. > > > > > > Abraham Guerra > > > -----Original Message----- > > > Sent: Tuesday, January 06, 2004 10:04 AM > > > To: Multiple recipients of list ORACLE-L > > > > > > > > > Well, a heap is just a bunch of memory (allocated in contiguous extents) > > > and you can practically allocate any size of chunk of memory from it > > > (with some restrictions). A regular heap has freelist and LRU list > > > mechanisms for managing space in it as well as memory > > > allocation/releasing routines which you can then call. Oracle uses its > > > generic heap manager code (KGH) for managing it's memory. > > > > > > Once you allocate a chunk from heap it's up to the allocator what he > > > does with it. It can just use it for some kind of static data, but can > > > also create another heap in these chunks it allocated, this heap may use > > > different heap manager code for managing its memory if needed (for > > > example shared pool reserved area and large pool behave a little > > > differently, they don't have LRU list mechanisms). > > > > > > If you take any heapdump using alter session set events 'immediate trace > > > name heapdump level x' ; then top level heaps show parent=00000000 in > > > their descriptors. Note that this "top call heap" has allocated chunks > > > for heap with descriptor address 06B51DB0 (callheap) and also you see > > > that "callheap" has a parent heap with descriptor address 06B52790. > > > > > > HEAP DUMP heap name="top call heap" desc=06B52790 > > > extent sz=0x213c alt=92 het=32767 rec=0 flg=2 opc=2 > > > parent=00000000 owner=00000000 nex=00000000 xsz=0xfffc > > > EXTENT 0 addr=071D0004 > > > Chunk 71d000c sz= 112 perm "perm " alo=112 > > > Chunk 71d007c sz= 65412 free " " > > > EXTENT 1 addr=07170004 > > > Chunk 717000c sz= 232 perm "perm " alo=232 > > > Chunk 71700f4 sz= 60724 free " " > > > Chunk 717ee28 sz= 1352 freeable "callheap " > > > ds=06B51DB0 > > > Chunk 717f370 sz= 1072 freeable "callheap " > > > ds=06B51DB0 > > > Chunk 717f7a0 sz= 1072 recreate "callheap " > > > latch=00000000 > > > ds 6b51db0 sz= 3496 ct= 3 > > > > > > [snipped....] > > > > > > HEAP DUMP heap name="callheap" desc=06B51DB0 > > > extent sz=0x424 alt=32767 het=32767 rec=0 flg=2 opc=3 > > > parent=06B52790 owner=00000000 nex=00000000 xsz=0x53c > > > EXTENT 0 addr=0717EE34 > > > Chunk 717ee3c sz= 1332 freeable "qkkele " > > > EXTENT 1 addr=0717F37C > > > Chunk 717f384 sz= 572 perm "perm " alo=388 > > > Chunk 717f5c0 sz= 444 free " " > > > Chunk 717f77c sz= 36 freeable "qkkkey " > > > EXTENT 2 addr=0717F7BC > > > Chunk 717f7c4 sz= 28 perm "perm " alo=28 > > > Chunk 717f7e0 sz= 956 free " " > > > Chunk 717fb9c sz= 52 freeable "event string " > > > Total heap size = 3420 > > > FREE LISTS: > > > Bucket 0 size=76 > > > Bucket 1 size=268 > > > Chunk 717f7e0 sz= 956 free " " > > > Chunk 717f5c0 sz= 444 free " " > > > Bucket 2 size=1036 > > > Total free space = 1400 > > > UNPINNED RECREATABLE CHUNKS (lru first): > > > PERMANENT CHUNKS: > > > Chunk 717f384 sz= 572 perm "perm " alo=388 > > > Chunk 717f7c4 sz= 28 perm "perm " alo=28 > > > Permanent space = 600 > > > ****************************************************** > > > > > > If making these "full" heapdumps puts too much strain on your system, > > > then it might be easier to use event HEAPDUMP_ADDR which allows to dump > > > heaps only with specified descriptor address. There are other options as > > > well, such is X$KSMHP table to query any heap (which is, blah, highly > > > unsupported) or attaching directly to SGA shared memory segment and > > > reading from there. > > > > > > Sorry for too long post, I'm currently too lazy to do anything useful... > > > Tanel. > > > > > > ----- Original Message ----- > > > To: Multiple recipients of list ORACLE-L > > > Sent: Tuesday, January 06, 2004 3:49 PM > > > > > > > > > Hi, > > > I am getting little confussion how the memory is allocated for > > > top-level heaps and subheaps in shared pool. > > > > > > How can we know what are all the top-level heaps and subheaps and their > > > hierarchy. > > > Is it possible to get it from any X$ tables. > > > > > > Freeable chunks can be flushed out?If yes ,then why there should be > > > another type as recreatable chunks? > > > Please explain. > > > > > > Thanks in advance > > > Syed > > > > > > -- > > Please see the official ORACLE-L FAQ: http://www.orafaq.net > > -- > > Author: Jared Still > > INET: [EMAIL PROTECTED] > > > > Fat City Network Services -- 858-538-5051 http://www.fatcity.com > > San Diego, California -- Mailing list and web hosting services > > --------------------------------------------------------------------- > > To REMOVE yourself from this mailing list, send an E-Mail message > > to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in > > the message BODY, include a line containing: UNSUB ORACLE-L > > (or the name of mailing list you want to be removed from). You may > > also send the HELP command for other information (like subscribing). > > > > -- > Mladen Gogala > Oracle DBA > -- > Please see the official ORACLE-L FAQ: http://www.orafaq.net > -- > Author: Mladen Gogala > INET: [EMAIL PROTECTED] > > Fat City Network Services -- 858-538-5051 http://www.fatcity.com > San Diego, California -- Mailing list and web hosting services > --------------------------------------------------------------------- > To REMOVE yourself from this mailing list, send an E-Mail message > to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in > the message BODY, include a line containing: UNSUB ORACLE-L > (or the name of mailing list you want to be removed from). You may > also send the HELP command for other information (like subscribing).
-- Please see the official ORACLE-L FAQ: http://www.orafaq.net -- Author: Jared Still INET: [EMAIL PROTECTED] Fat City Network Services -- 858-538-5051 http://www.fatcity.com San Diego, California -- Mailing list and web hosting services --------------------------------------------------------------------- To REMOVE yourself from this mailing list, send an E-Mail message to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing).