title: WPF Application - Rendering performances
body: <p>I am currently developing an application for Windows XP, 7 and 8.
  To test this application, I use two computers.</p>
  
  <p>When hardware acceleration is enabled:</p>
  
  <ul>
  <li>On the first computer: the application is very fluid</li>
  <li>On the second computer: the application is very slow</li>
  </ul>
  
  <p>When hardware acceleration is disabled:</p>
  
  <ul>
  <li>On the first computer: the application is a bit slow</li>
  <li>The second computer: the application is a bit slow</li>
  </ul>
  
  <p>So, I would like to disable hardware acceleration based on the computer on which the application is launched. For that, I am currently using the following code:</p>
  
  <pre class="lang-cs prettyprint-override"><code>public partial class App : Application
  {
      protected override void OnStartup(StartupEventArgs e)
      {
          base.OnStartup(e);
  
          //Try to improve performances
          int renderingTier = (RenderCapability.Tier &gt;&gt; 16);
          if(renderingTier &lt; 2)
          {
              RenderOptions.ProcessRenderMode = RenderMode.SoftwareOnly;
          }
      }
  }
  </code></pre>
  
  <p>The problem is that both computers have RenderingTier = 2. This is why I would like to replace</p>
  
  <pre class="lang-cs prettyprint-override"><code>        if(renderingTier &lt; 2)
          {
              RenderOptions.ProcessRenderMode = RenderMode.SoftwareOnly;
          }
  </code></pre>
  
  <p>by</p>
  
  <pre class="lang-cs prettyprint-override"><code>        if(renderingTier &lt; 2 || Something())
          {
              RenderOptions.ProcessRenderMode = RenderMode.SoftwareOnly;
          }
  </code></pre>
  
  <p>Can you help me to find the function  "Something()" ?
  Thank you.</p>