<div dir="ltr"><div class="gmail_default" style="font-family:courier new,monospace">I see 2 ways to do this. </div><div class="gmail_default" style="font-family:courier new,monospace"><br></div><div class="gmail_default" style="font-family:courier new,monospace">
1. allocate 512 4KB contiguous pages everytime a handle_mm_fault is called and have the THP kernel thread to coalesce it to a huge page. </div><div class="gmail_default" style="font-family:courier new,monospace">2. modify the kernel (maybe extensively) to allocate 2MB page by default. </div>
<div class="gmail_default" style="font-family:courier new,monospace"><br></div><div class="gmail_default" style="font-family:courier new,monospace">I like 1. better because it requires less modifications. but it is not as reliable. any suggestions</div>
<div class="gmail_default" style="font-family:courier new,monospace"><br></div><div class="gmail_default" style="font-family:courier new,monospace">Xin </div><div class="gmail_default" style="font-family:courier new,monospace">
<br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Jul 30, 2014 at 2:57 PM,  <span dir="ltr">&lt;<a href="mailto:Valdis.Kletnieks@vt.edu" target="_blank">Valdis.Kletnieks@vt.edu</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="">On Wed, 30 Jul 2014 14:41:26 -0500, Xin Tong said:<br>
<br>
&gt; Is there anyway for me to turn on HugePage by default in the Linux X86<br>
&gt; kernel, i.e. allocate a 2MB page by default in place of 4KB now ?<br>
<br>
</div>Possibly related config entries to research:<br>
<br>
CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y<br>
CONFIG_ARCH_ENABLE_HUGEPAGE_MIGRATION=y<br>
CONFIG_TRANSPARENT_HUGEPAGE=y<br>
CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y<br>
# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set<br>
<br>
However, if you allocate a single 4K page, that *won&#39;t* automatically<br>
promote it to a hugepage - you need to allocate 2M of contiguous virtual<br>
address space with the same access flags for it to coalesce into a hugepage.<br>
</blockquote></div><br></div>