<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
		>
<channel>
	<title>Comments on: SGA Resizing</title>
	<atom:link href="http://jonathanlewis.wordpress.com/2007/04/16/sga-resizing/feed/" rel="self" type="application/rss+xml" />
	<link>http://jonathanlewis.wordpress.com/2007/04/16/sga-resizing/</link>
	<description>Just another Oracle weblog</description>
	<lastBuildDate>Tue, 18 Jun 2013 04:32:58 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
	<item>
		<title>By: Jonathan Lewis</title>
		<link>http://jonathanlewis.wordpress.com/2007/04/16/sga-resizing/#comment-46606</link>
		<dc:creator><![CDATA[Jonathan Lewis]]></dc:creator>
		<pubDate>Thu, 24 May 2012 12:45:17 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/2007/04/16/sga-resizing/#comment-46606</guid>
		<description><![CDATA[Soumik,
I haven&#039;t said (or implied) anything about a &#039;TARGET&#039; column. If you mean the target_size column in &lt;i&gt;v$sga_size_ops&lt;/i&gt; view, the description in the manuals says that this is what you asked for (adjusted to allow the appropriate granule size), while the final_size is what you finally get.  For example, for the following output I asked for a 5MB shared_pool_size which Oracle rounded up to a granule - but there was a minimum memory requirement for my setup, so the final size didn&#039;t go below 96M:

[sourcecode gutter=&quot;false&quot;]
COMPONENT                        INITIAL_SIZE TARGET_SIZE FINAL_SIZE
-------------------------------- ------------ ----------- ----------
shared pool                         503316480    16777216  109051904
[/sourcecode]

As far as I am aware, it&#039;s the previous final_size that becomes the current initial_size - and yes, there are no doubt cases where columns like current_size, or initial_size, or final_size are misleading because they don&#039;t allow for the amount of memory which hasn&#039;t yet been released from one function to the other.

To your question (2) - the only valid answer I can give is: I don&#039;t know, I didn&#039;t write the code or the specification. It might be possible to engineer a few tests to check, but that could be a little difficult. We might hope that if there was a partially converted granule on its way to becoming a buffer cache granule, and you asked Oracle to increase the shared pool then it would be that granule that was used to grow the shared pool - but there may be circumstances where such behaviour is not possible.]]></description>
		<content:encoded><![CDATA[<p>Soumik,<br />
I haven&#8217;t said (or implied) anything about a &#8216;TARGET&#8217; column. If you mean the target_size column in <i>v$sga_size_ops</i> view, the description in the manuals says that this is what you asked for (adjusted to allow the appropriate granule size), while the final_size is what you finally get.  For example, for the following output I asked for a 5MB shared_pool_size which Oracle rounded up to a granule &#8211; but there was a minimum memory requirement for my setup, so the final size didn&#8217;t go below 96M:</p>
<pre class="brush: plain; gutter: false; title: ; notranslate">
COMPONENT                        INITIAL_SIZE TARGET_SIZE FINAL_SIZE
-------------------------------- ------------ ----------- ----------
shared pool                         503316480    16777216  109051904
</pre>
<p>As far as I am aware, it&#8217;s the previous final_size that becomes the current initial_size &#8211; and yes, there are no doubt cases where columns like current_size, or initial_size, or final_size are misleading because they don&#8217;t allow for the amount of memory which hasn&#8217;t yet been released from one function to the other.</p>
<p>To your question (2) &#8211; the only valid answer I can give is: I don&#8217;t know, I didn&#8217;t write the code or the specification. It might be possible to engineer a few tests to check, but that could be a little difficult. We might hope that if there was a partially converted granule on its way to becoming a buffer cache granule, and you asked Oracle to increase the shared pool then it would be that granule that was used to grow the shared pool &#8211; but there may be circumstances where such behaviour is not possible.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Soumik</title>
		<link>http://jonathanlewis.wordpress.com/2007/04/16/sga-resizing/#comment-46472</link>
		<dc:creator><![CDATA[Soumik]]></dc:creator>
		<pubDate>Wed, 16 May 2012 13:27:40 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/2007/04/16/sga-resizing/#comment-46472</guid>
		<description><![CDATA[Hi Jonathan,

So you are effectively saying is that the &#039;TARGET&#039; and &#039;FINAL&#039; column are what oracle is aimimg SHARED_POOL to be shrinked in case of SHARED_POOL SHRINKING with DEFFERED operation mode , but not the actual value SHARED_POOL could ultimately be set to . 

1) Then why this pseudo &#039;TARGET&#039; value is again used as the &#039;INITIAL&#039; value next time SHARED_POOL is asked to GROW or SHRINK again .

  Does not this make &#039;TARGET&#039; column of v$sga_resize_ops and &#039;CURRENT SIZE&#039; column v$sga_dynamic_components bit misleading , since they don&#039;t take account of KGH NO ACCESS

2) Now suppose SHARED_POOL GROWS IMMEDIATE by 1 granule after a DEFFERED SHRINK of SHARED_POOL by 1 granule .
Does this ensure reclaiming the KGH NO ACCESS part by SHARED_POOL that was given away to DB BUFFER CACHE by earlier DEFFERED SHRINK and therfore making KGH NO ACCESS  in v$sgasta showing 0.]]></description>
		<content:encoded><![CDATA[<p>Hi Jonathan,</p>
<p>So you are effectively saying is that the &#8216;TARGET&#8217; and &#8216;FINAL&#8217; column are what oracle is aimimg SHARED_POOL to be shrinked in case of SHARED_POOL SHRINKING with DEFFERED operation mode , but not the actual value SHARED_POOL could ultimately be set to . </p>
<p>1) Then why this pseudo &#8216;TARGET&#8217; value is again used as the &#8216;INITIAL&#8217; value next time SHARED_POOL is asked to GROW or SHRINK again .</p>
<p>  Does not this make &#8216;TARGET&#8217; column of v$sga_resize_ops and &#8216;CURRENT SIZE&#8217; column v$sga_dynamic_components bit misleading , since they don&#8217;t take account of KGH NO ACCESS</p>
<p>2) Now suppose SHARED_POOL GROWS IMMEDIATE by 1 granule after a DEFFERED SHRINK of SHARED_POOL by 1 granule .<br />
Does this ensure reclaiming the KGH NO ACCESS part by SHARED_POOL that was given away to DB BUFFER CACHE by earlier DEFFERED SHRINK and therfore making KGH NO ACCESS  in v$sgasta showing 0.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Simple scripts &#171; Oracle Scratchpad</title>
		<link>http://jonathanlewis.wordpress.com/2007/04/16/sga-resizing/#comment-35605</link>
		<dc:creator><![CDATA[Simple scripts &#171; Oracle Scratchpad]]></dc:creator>
		<pubDate>Thu, 25 Feb 2010 17:56:33 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/2007/04/16/sga-resizing/#comment-35605</guid>
		<description><![CDATA[[...] stats: a script to report the start time and run time of the automatic stats collection job   SGA Resizing: a script to report resizing operations (v$sga_resize_ops) What have I done: a script to report the [...]]]></description>
		<content:encoded><![CDATA[<p>[...] stats: a script to report the start time and run time of the automatic stats collection job   SGA Resizing: a script to report resizing operations (v$sga_resize_ops) What have I done: a script to report the [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jonathan Lewis</title>
		<link>http://jonathanlewis.wordpress.com/2007/04/16/sga-resizing/#comment-34456</link>
		<dc:creator><![CDATA[Jonathan Lewis]]></dc:creator>
		<pubDate>Sat, 19 Sep 2009 15:49:39 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/2007/04/16/sga-resizing/#comment-34456</guid>
		<description><![CDATA[Tanel,

Thanks for that explanation. The example also has a &lt;em&gt;&lt;strong&gt;deferred shrink&lt;/strong&gt;&lt;/em&gt; of the db cache which, by symmetry, suggests that we are releasing space in a db cache granule as buffers get written or become unpinned.

Do you know if Oracle has a different labelling mechanism when going the other way, or does it immediately label these granules as &lt;em&gt;&lt;strong&gt;sga heap&lt;/strong&gt;&lt;/em&gt; granules with some &lt;em&gt;&lt;strong&gt;KGH: NO ACCESS&lt;/strong&gt;&lt;/em&gt; space ?]]></description>
		<content:encoded><![CDATA[<p>Tanel,</p>
<p>Thanks for that explanation. The example also has a <em><strong>deferred shrink</strong></em> of the db cache which, by symmetry, suggests that we are releasing space in a db cache granule as buffers get written or become unpinned.</p>
<p>Do you know if Oracle has a different labelling mechanism when going the other way, or does it immediately label these granules as <em><strong>sga heap</strong></em> granules with some <em><strong>KGH: NO ACCESS</strong></em> space ?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tanel Poder</title>
		<link>http://jonathanlewis.wordpress.com/2007/04/16/sga-resizing/#comment-34441</link>
		<dc:creator><![CDATA[Tanel Poder]]></dc:creator>
		<pubDate>Fri, 18 Sep 2009 10:18:08 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/2007/04/16/sga-resizing/#comment-34441</guid>
		<description><![CDATA[Deferred means that the shared pool granule&#039;s transition to a buffer cache one was deferred, not really done. The granule becomes a composite granule, all the memory belonging to shared pool heap, but the shared pool heap manager gives whatever memory it can from it to buffer cache manager as KGH: NO ACCESS chunks...]]></description>
		<content:encoded><![CDATA[<p>Deferred means that the shared pool granule&#8217;s transition to a buffer cache one was deferred, not really done. The granule becomes a composite granule, all the memory belonging to shared pool heap, but the shared pool heap manager gives whatever memory it can from it to buffer cache manager as KGH: NO ACCESS chunks&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Hemant K Chitale</title>
		<link>http://jonathanlewis.wordpress.com/2007/04/16/sga-resizing/#comment-34430</link>
		<dc:creator><![CDATA[Hemant K Chitale]]></dc:creator>
		<pubDate>Wed, 16 Sep 2009 02:28:47 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/2007/04/16/sga-resizing/#comment-34430</guid>
		<description><![CDATA[Bug#8879595  is of a case where setting &quot;_memory_broker_stat_interval&quot;=999 didn&#039;t help, with KGH: NO ACCESS  being 2GB !!


BTW, do you know what &#039;DEFERRED&#039; in OPER_MODE really means ?

Hemant K Chitale]]></description>
		<content:encoded><![CDATA[<p>Bug#8879595  is of a case where setting &#8220;_memory_broker_stat_interval&#8221;=999 didn&#8217;t help, with KGH: NO ACCESS  being 2GB !!</p>
<p>BTW, do you know what &#8216;DEFERRED&#8217; in OPER_MODE really means ?</p>
<p>Hemant K Chitale</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Resizing the SGA &#171; Oracle Scratchpad</title>
		<link>http://jonathanlewis.wordpress.com/2007/04/16/sga-resizing/#comment-34399</link>
		<dc:creator><![CDATA[Resizing the SGA &#171; Oracle Scratchpad]]></dc:creator>
		<pubDate>Fri, 11 Sep 2009 15:27:31 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/2007/04/16/sga-resizing/#comment-34399</guid>
		<description><![CDATA[[...] Resizing the&#160;SGA Filed under: Infrastructure, Troubleshooting &#8212; Jonathan Lewis @ 6:32 pm UTC Dec 4,2006   [More on resizing the SGA] [...]]]></description>
		<content:encoded><![CDATA[<p>[...] Resizing the&nbsp;SGA Filed under: Infrastructure, Troubleshooting &#8212; Jonathan Lewis @ 6:32 pm UTC Dec 4,2006   [More on resizing the SGA] [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Shared Server &#171; Oracle Scratchpad</title>
		<link>http://jonathanlewis.wordpress.com/2007/04/16/sga-resizing/#comment-33981</link>
		<dc:creator><![CDATA[Shared Server &#171; Oracle Scratchpad]]></dc:creator>
		<pubDate>Mon, 27 Jul 2009 17:09:29 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/2007/04/16/sga-resizing/#comment-33981</guid>
		<description><![CDATA[[...] too low, leading to possible interference problems as new servers have to be started up. Checking v$sga_resize_ops for automatic resizing of the large pool could also give you some clues about how appropriate your [...]]]></description>
		<content:encoded><![CDATA[<p>[...] too low, leading to possible interference problems as new servers have to be started up. Checking v$sga_resize_ops for automatic resizing of the large pool could also give you some clues about how appropriate your [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jonathan Lewis</title>
		<link>http://jonathanlewis.wordpress.com/2007/04/16/sga-resizing/#comment-32985</link>
		<dc:creator><![CDATA[Jonathan Lewis]]></dc:creator>
		<pubDate>Wed, 13 May 2009 19:26:44 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/2007/04/16/sga-resizing/#comment-32985</guid>
		<description><![CDATA[Steve,

I still have a fairly strong bias against using the automatic SGA management - especially with RAC; but if you had a clear need for varying amounts of memory over a long time span (a day/night cycle, say) I would be prepared to use it but set some lower limits for the key areas to avoid thrashing near the boundary values.

In your case, I&#039;d start by checking v$sga_resize_ops to see if there were anything strange around the time the slowdown occurred; and I&#039;d check the history (AWR or statspack depending which you use) for the SGA memory allocation to see if there were regular significant changes in size between the start and end of snapshots. The other thing I&#039;d look out for in the SGA memory usage report is a large amount of memory marked &quot;KGH NO ACCESS&quot; - which is shared pool memory being used as buffer cache.  

If you see any clues that the buffer cache or shared pool can put extreme demands on each other, I&#039;d be more inclined to fix the memory size.]]></description>
		<content:encoded><![CDATA[<p>Steve,</p>
<p>I still have a fairly strong bias against using the automatic SGA management &#8211; especially with RAC; but if you had a clear need for varying amounts of memory over a long time span (a day/night cycle, say) I would be prepared to use it but set some lower limits for the key areas to avoid thrashing near the boundary values.</p>
<p>In your case, I&#8217;d start by checking v$sga_resize_ops to see if there were anything strange around the time the slowdown occurred; and I&#8217;d check the history (AWR or statspack depending which you use) for the SGA memory allocation to see if there were regular significant changes in size between the start and end of snapshots. The other thing I&#8217;d look out for in the SGA memory usage report is a large amount of memory marked &#8220;KGH NO ACCESS&#8221; &#8211; which is shared pool memory being used as buffer cache.  </p>
<p>If you see any clues that the buffer cache or shared pool can put extreme demands on each other, I&#8217;d be more inclined to fix the memory size.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Steve Martin</title>
		<link>http://jonathanlewis.wordpress.com/2007/04/16/sga-resizing/#comment-32981</link>
		<dc:creator><![CDATA[Steve Martin]]></dc:creator>
		<pubDate>Wed, 13 May 2009 13:46:56 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/2007/04/16/sga-resizing/#comment-32981</guid>
		<description><![CDATA[Are you now in favor of enabling ASMM and setting minimum values for shared pool and buffer cache or are you in favor of disabling ASMM per http://jonathanlewis.wordpress.com/2006/12/04/resizing-the-sga/

Our highly active 3 node RAC OLTP system experienced a severe 3 minute slowdown recently and we&#039;re using ASMM.  Oracle is suggesting to just set minimums for shared pool and buffer cache, but I&#039;m wondering if we should just disable ASMM.]]></description>
		<content:encoded><![CDATA[<p>Are you now in favor of enabling ASMM and setting minimum values for shared pool and buffer cache or are you in favor of disabling ASMM per <a href="http://jonathanlewis.wordpress.com/2006/12/04/resizing-the-sga/" rel="nofollow">http://jonathanlewis.wordpress.com/2006/12/04/resizing-the-sga/</a></p>
<p>Our highly active 3 node RAC OLTP system experienced a severe 3 minute slowdown recently and we&#8217;re using ASMM.  Oracle is suggesting to just set minimums for shared pool and buffer cache, but I&#8217;m wondering if we should just disable ASMM.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
