title: Is it possible to roll a significantly faster version of sqrt
body: <p>In an app I'm profiling, I found that in some scenarios this function is able to take over 10% of total execution time.</p>
  
  <p>I've seen discussion over the years of faster sqrt implementations using sneaky floating-point trickery, but I don't know if such things are outdated on modern CPUs.</p>
  
  <p>MSVC++ 2008 compiler is being used, for reference... though I'd assume sqrt is not going to add much overhead though.</p>
  
  <p>See also here for similar discussion on <a href="https://stackoverflow.com/questions/2637714/c-is-it-possible-to-roll-a-significantly-faster-version-of-modf">modf</a> function.</p>
  
  <p>EDIT: for reference, <a href="http://en.wikipedia.org/wiki/Fast_inverse_square_root" rel="noreferrer">this</a> is one widely-used method, but is it actually much quicker? How many cycles is SQRT anyway these days?</p>