title: x64 performance compared to x86
body: <p>I wrote this little program in c++ to in order check CPU load scenarios.  </p>
  
  <pre><code>#include &lt;math.h&gt;
  #include &lt;stdio.h&gt;
  #include &lt;stdlib.h&gt;
  #include &lt;windows.h&gt;
  #include &lt;time.h&gt;
  int main()
  {
  
      double x = 1;
      int t1 = GetTickCount();
      srand(10000);
  
      for (unsigned long i = 0; i &lt; 10000000; i++)
      {
          int r = rand();
          double l = sqrt((double)r);
          x *= log(l/3) * pow(x, r);
      }
  
      int t2 = GetTickCount();
      printf("Time: %d\r\n", t2-t1);
      getchar();
  }
  </code></pre>
  
  <p>I compiled it both for x86 and for x64 on win7 x64.<br>
  For some reason when I ran the x64 version it finished running in about 3 seconds<br>
  but when I tried it with the x86 version it took 48 (!!!) seconds.<br>
  I tried it many times and always got similar results.<br>
  What could cause this difference?</p>