title: Optimizations for pow() with const non-integer exponent?
body: <p>I have hot spots in my code where I'm doing <code>pow()</code> taking up around 10-20% of my execution time.</p>
  
  <p>My input to <code>pow(x,y)</code> is very specific, so I'm wondering if there's a way to roll two <code>pow()</code> approximations (one for each exponent) with higher performance:</p>
  
  <ul>
  <li>I have two constant exponents: 2.4 and 1/2.4.</li>
  <li>When the exponent is 2.4, <em>x</em> will be in the range (0.090473935, 1.0].</li>
  <li>When the exponent is 1/2.4, <em>x</em> will be in the range (0.0031308, 1.0].</li>
  <li>I'm using SSE/AVX <code>float</code> vectors.  If platform specifics can be taken advantage of, right on!</li>
  </ul>
  
  <p>A maximum error rate around 0.01% is ideal, though I'm interested in full precision (for <code>float</code>) algorithms as well.</p>
  
  <p>I'm already using a fast <code>pow()</code> <a href="http://jrfonseca.blogspot.com/2008/09/fast-sse2-pow-tables-or-polynomials.html" rel="noreferrer">approximation</a>, but it doesn't take these constraints into account.  Is it possible to do better?</p>