<?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/"
		>
<channel>
	<title>Comments on: Performance tuning: HugePages in Linux</title>
	<atom:link href="http://www.pythian.com/news/1326/performance-tuning-hugepages-in-linux/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.pythian.com/news/1326/performance-tuning-hugepages-in-linux/</link>
	<description>News and views from Pythian DBAs</description>
	<lastBuildDate>Fri, 10 Feb 2012 13:01:25 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.4</generator>
	<item>
		<title>By: Stephen</title>
		<link>http://www.pythian.com/news/1326/performance-tuning-hugepages-in-linux/#comment-615957</link>
		<dc:creator>Stephen</dc:creator>
		<pubDate>Mon, 17 Oct 2011 03:33:35 +0000</pubDate>
		<guid isPermaLink="false">http://www.pythian.com/blogs/1326/performance-tuning-hugepages-in-linux#comment-615957</guid>
		<description>Hi,

Just curious, how will increasing vm.min_free_kbytes make any difference? Let&#039;s say I set this to 5% of my memory, won&#039;t the kernel still scan PageTables when memory usage hits 95%?

We&#039;re experiencing an issue similar to this, where whenever a system releases a large amount of PageTables (1-2gig&#039;s worth), we see a sharp spike in System CPU. Is there anything we can do to prevent this, or is hugepages the only option?</description>
		<content:encoded><![CDATA[<p>Hi,</p>
<p>Just curious, how will increasing vm.min_free_kbytes make any difference? Let&#8217;s say I set this to 5% of my memory, won&#8217;t the kernel still scan PageTables when memory usage hits 95%?</p>
<p>We&#8217;re experiencing an issue similar to this, where whenever a system releases a large amount of PageTables (1-2gig&#8217;s worth), we see a sharp spike in System CPU. Is there anything we can do to prevent this, or is hugepages the only option?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Amir Riaz</title>
		<link>http://www.pythian.com/news/1326/performance-tuning-hugepages-in-linux/#comment-522297</link>
		<dc:creator>Amir Riaz</dc:creator>
		<pubDate>Fri, 18 Mar 2011 09:37:41 +0000</pubDate>
		<guid isPermaLink="false">http://www.pythian.com/blogs/1326/performance-tuning-hugepages-in-linux#comment-522297</guid>
		<description>Nice post.</description>
		<content:encoded><![CDATA[<p>Nice post.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kenneth Holter</title>
		<link>http://www.pythian.com/news/1326/performance-tuning-hugepages-in-linux/#comment-514295</link>
		<dc:creator>Kenneth Holter</dc:creator>
		<pubDate>Fri, 25 Feb 2011 14:32:08 +0000</pubDate>
		<guid isPermaLink="false">http://www.pythian.com/blogs/1326/performance-tuning-hugepages-in-linux#comment-514295</guid>
		<description>Hi and thanks for the great article on hugepages. 

I&#039;m learning about linux memory and hugepages, and thought I&#039;d experiment with it by replicating the issue you described in your post. First, I&#039;ve written a small C program (http://pastie.org/1606226) that basically just eats 20 GB of memory. After running the program on my RHEL 5 server I was expecting the PageTable to be huge, but found that it was only about 43 MB. The page size on my RHEL box i 4 kB. 

Can someone here maybe clear up why I&#039;m not seeing such a major PageTable size issue like the one described in the post, and perhaps how to reproduce it (without actually running a database)?

Best regards,
Kenneth Holter</description>
		<content:encoded><![CDATA[<p>Hi and thanks for the great article on hugepages. </p>
<p>I&#8217;m learning about linux memory and hugepages, and thought I&#8217;d experiment with it by replicating the issue you described in your post. First, I&#8217;ve written a small C program (<a href="http://pastie.org/1606226" rel="nofollow">http://pastie.org/1606226</a>) that basically just eats 20 GB of memory. After running the program on my RHEL 5 server I was expecting the PageTable to be huge, but found that it was only about 43 MB. The page size on my RHEL box i 4 kB. </p>
<p>Can someone here maybe clear up why I&#8217;m not seeing such a major PageTable size issue like the one described in the post, and perhaps how to reproduce it (without actually running a database)?</p>
<p>Best regards,<br />
Kenneth Holter</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Noel Lucas</title>
		<link>http://www.pythian.com/news/1326/performance-tuning-hugepages-in-linux/#comment-385851</link>
		<dc:creator>Noel Lucas</dc:creator>
		<pubDate>Thu, 19 Nov 2009 13:48:05 +0000</pubDate>
		<guid isPermaLink="false">http://www.pythian.com/blogs/1326/performance-tuning-hugepages-in-linux#comment-385851</guid>
		<description>Great article. It explains use of HugePages in a way that is easy to understand. This is the best article that I&#039;ve found on it.</description>
		<content:encoded><![CDATA[<p>Great article. It explains use of HugePages in a way that is easy to understand. This is the best article that I&#8217;ve found on it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Claus Gehner</title>
		<link>http://www.pythian.com/news/1326/performance-tuning-hugepages-in-linux/#comment-351272</link>
		<dc:creator>Claus Gehner</dc:creator>
		<pubDate>Fri, 20 Mar 2009 17:17:39 +0000</pubDate>
		<guid isPermaLink="false">http://www.pythian.com/blogs/1326/performance-tuning-hugepages-in-linux#comment-351272</guid>
		<description>Excellent article - thanks.
We are implementing a number of recommendations from Oracle&#039;s RAC Assessment, and HugePage support was one of the high impact recommendations.
..
Also - I love your redesigned WEB site.. I found the previous one confusing and &quot;busy&quot;</description>
		<content:encoded><![CDATA[<p>Excellent article &#8211; thanks.<br />
We are implementing a number of recommendations from Oracle&#8217;s RAC Assessment, and HugePage support was one of the high impact recommendations.<br />
..<br />
Also &#8211; I love your redesigned WEB site.. I found the previous one confusing and &#8220;busy&#8221;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Sravan</title>
		<link>http://www.pythian.com/news/1326/performance-tuning-hugepages-in-linux/#comment-349270</link>
		<dc:creator>Sravan</dc:creator>
		<pubDate>Sat, 07 Mar 2009 13:05:28 +0000</pubDate>
		<guid isPermaLink="false">http://www.pythian.com/blogs/1326/performance-tuning-hugepages-in-linux#comment-349270</guid>
		<description>Suraj, here is a quick way to calculate the Hugepages. 

Hugepages is not a derived value, but an optional setting if you want to use Hugepages. So, if # of Hugepages is set to 2048, then you would have allocated 4G(2048*2M - assumption Hugepagesize=2M) of Hugepages space.


You can now create the SGA, which is allocated from the Hugepage space.</description>
		<content:encoded><![CDATA[<p>Suraj, here is a quick way to calculate the Hugepages. </p>
<p>Hugepages is not a derived value, but an optional setting if you want to use Hugepages. So, if # of Hugepages is set to 2048, then you would have allocated 4G(2048*2M &#8211; assumption Hugepagesize=2M) of Hugepages space.</p>
<p>You can now create the SGA, which is allocated from the Hugepage space.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Suraj Sharma</title>
		<link>http://www.pythian.com/news/1326/performance-tuning-hugepages-in-linux/#comment-348211</link>
		<dc:creator>Suraj Sharma</dc:creator>
		<pubDate>Wed, 04 Mar 2009 16:18:19 +0000</pubDate>
		<guid isPermaLink="false">http://www.pythian.com/blogs/1326/performance-tuning-hugepages-in-linux#comment-348211</guid>
		<description>Hi,

Thanks a lot for such meaningful and rare information about HugePages. I have a question thought (I may be confued or did not read your blog properly)

My question is:

How do we calculate the HugePages will it be like:

Let&#039;s assume my SGA is 4GB and my Hugepagesize is 2048KB then my HugePages would be 4*1024*1024 (to convert it into KB) and then divide it with 2048??

(4*1024*1024)/2048=2048 (round off to 3000)???

Please correct me if I am wrong.. Also let me know how the same will work in 32Bit Linux</description>
		<content:encoded><![CDATA[<p>Hi,</p>
<p>Thanks a lot for such meaningful and rare information about HugePages. I have a question thought (I may be confued or did not read your blog properly)</p>
<p>My question is:</p>
<p>How do we calculate the HugePages will it be like:</p>
<p>Let&#8217;s assume my SGA is 4GB and my Hugepagesize is 2048KB then my HugePages would be 4*1024*1024 (to convert it into KB) and then divide it with 2048??</p>
<p>(4*1024*1024)/2048=2048 (round off to 3000)???</p>
<p>Please correct me if I am wrong.. Also let me know how the same will work in 32Bit Linux</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kevin Closson's Oracle Blog: Platform, Storage &#38; Clustering Topics Related to Oracle Databases</title>
		<link>http://www.pythian.com/news/1326/performance-tuning-hugepages-in-linux/#comment-341758</link>
		<dc:creator>Kevin Closson's Oracle Blog: Platform, Storage &#38; Clustering Topics Related to Oracle Databases</dc:creator>
		<pubDate>Tue, 17 Feb 2009 17:38:17 +0000</pubDate>
		<guid isPermaLink="false">http://www.pythian.com/blogs/1326/performance-tuning-hugepages-in-linux#comment-341758</guid>
		<description>&lt;strong&gt;Oracle11g Automatic Memory Management - Part I.  Linux Hugepages&#160;Support....&lt;/strong&gt;

I spent the majority of my time in the Oracle Database 11g Beta program testing storage-related aspects of the new release. To be honest, I didn&#8217;t even take a short peek at the new Automatic Memory Management feature. As I pointed out the other d...</description>
		<content:encoded><![CDATA[<p><strong>Oracle11g Automatic Memory Management &#8211; Part I.  Linux Hugepages&nbsp;Support&#8230;.</strong></p>
<p>I spent the majority of my time in the Oracle Database 11g Beta program testing storage-related aspects of the new release. To be honest, I didn&#8217;t even take a short peek at the new Automatic Memory Management feature. As I pointed out the other d&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kevin Closson</title>
		<link>http://www.pythian.com/news/1326/performance-tuning-hugepages-in-linux/#comment-341751</link>
		<dc:creator>Kevin Closson</dc:creator>
		<pubDate>Tue, 17 Feb 2009 17:22:01 +0000</pubDate>
		<guid isPermaLink="false">http://www.pythian.com/blogs/1326/performance-tuning-hugepages-in-linux#comment-341751</guid>
		<description>Riyaj,

  &quot;It gets a few hundred connections at a time&quot; is key to this whole thread and deserves more attention. The multiplier affect of non-shared page tables is what was eating up so much memory. For every foreground process the system required 10MB of page tables. There seems to have been about 500 dedicated connections at the time meminfo was examined.

  As for &quot;Most likely, much of SGA pages also can be paged out, since SGA is not locked in memory&quot;, it is true that SGA pages can be swapped out...*only if* they have only been touched by one process. Mutliply referenced shared pages do not get swapped. Allowing this sort of swapping would cause a horrible chain reaction. After all, there are more than one processes using SGA pages. That aside, the page tables mapping the SGA are swapable. It is easy to account for the 4.7GB leaps in available memory you measured with sar by the simple swapping of the data,stack and page tables of just a percentage of the huge number of processes running on the system.

Mladen is right about the cost of losing AMM from a managability perspective.

I blogged about 11g AMM quite a while ago as well:

http://kevinclosson.wordpress.com/2007/08/23/oracle11g-automatic-memory-management-and-linux-hugepages-support/</description>
		<content:encoded><![CDATA[<p>Riyaj,</p>
<p>  &#8220;It gets a few hundred connections at a time&#8221; is key to this whole thread and deserves more attention. The multiplier affect of non-shared page tables is what was eating up so much memory. For every foreground process the system required 10MB of page tables. There seems to have been about 500 dedicated connections at the time meminfo was examined.</p>
<p>  As for &#8220;Most likely, much of SGA pages also can be paged out, since SGA is not locked in memory&#8221;, it is true that SGA pages can be swapped out&#8230;*only if* they have only been touched by one process. Mutliply referenced shared pages do not get swapped. Allowing this sort of swapping would cause a horrible chain reaction. After all, there are more than one processes using SGA pages. That aside, the page tables mapping the SGA are swapable. It is easy to account for the 4.7GB leaps in available memory you measured with sar by the simple swapping of the data,stack and page tables of just a percentage of the huge number of processes running on the system.</p>
<p>Mladen is right about the cost of losing AMM from a managability perspective.</p>
<p>I blogged about 11g AMM quite a while ago as well:</p>
<p><a href="http://kevinclosson.wordpress.com/2007/08/23/oracle11g-automatic-memory-management-and-linux-hugepages-support/" rel="nofollow">http://kevinclosson.wordpress.com/2007/08/23/oracle11g-automatic-memory-management-and-linux-hugepages-support/</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Hugepages revisited II: Be aware of kernel bugs! &#124; ora-solutions.net - Martin Decker</title>
		<link>http://www.pythian.com/news/1326/performance-tuning-hugepages-in-linux/#comment-325890</link>
		<dc:creator>Hugepages revisited II: Be aware of kernel bugs! &#124; ora-solutions.net - Martin Decker</dc:creator>
		<pubDate>Wed, 07 Jan 2009 11:31:14 +0000</pubDate>
		<guid isPermaLink="false">http://www.pythian.com/blogs/1326/performance-tuning-hugepages-in-linux#comment-325890</guid>
		<description>[...] can reduce the overhead of managing memory pages of Oracle SGA by the operating system thus leading to lower system cpu utilization. I have written two blog entries regarding this topic already: Listener Coredumps on heavy load [...]</description>
		<content:encoded><![CDATA[<p>[...] can reduce the overhead of managing memory pages of Oracle SGA by the operating system thus leading to lower system cpu utilization. I have written two blog entries regarding this topic already: Listener Coredumps on heavy load [...]</p>
]]></content:encoded>
	</item>
</channel>
</rss>

