title: Is DisablePagingExecutive required to allow xPerf to stackwalk for a 32-bit application running on 64-bit Windows
body: <p>I have two questions:</p>
  
  <ol>
  <li><p>I found a blog entry saying that <code>DisablePagingExecutive</code> should be set when using <code>xperf</code>:</p>
  
  <p><a href="http://blogs.msdn.com/b/pigscanfly/archive/2009/08/06/stack-walking-in-xperf.aspx" rel="nofollow">http://blogs.msdn.com/b/pigscanfly/archive/2009/08/06/stack-walking-in-xperf.aspx</a></p>
  
  <blockquote>
    <p><strong>Disable Paging Executive</strong><br>
    In order for tracing to work on 64-bit Windows you need to set the <code>DisablePagingExecutive</code> registry key. This tells the operating system not to page kernel mode drivers and system code to disk, which is a prerequisite for getting 64-bit call stacks using xperf, because 64-bit stack walking depends on metadata in the executable images, and in some situations the xperf stack walk code is not allowed to touch paged out pages.</p>
  </blockquote>
  
  <p>Is this required to collect <code>xperf</code> data for a 32-bit application running on 64-bit Windows?</p></li>
  <li><p>When collecting data with <code>xperf</code> for a 32-bit process on a 64-bit OS, should I be using the x86 or x64 version?</p></li>
  </ol>