title: Meaning of 'i' in function names `cusparse<t>axpyi` and `cusparse<t>doti`
body: <p><code>cusparse&lt;t&gt;axpyi</code> and <code>cusparse&lt;t&gt;doti</code> are function names in <a href="https://docs.nvidia.com/cuda/cusparse/index.html" rel="nofollow noreferrer">cuSPARSE</a>, the CUDA sparse matrix library.  </p>
  
  <p>The <a href="https://docs.nvidia.com/cuda/cusparse/index.html#naming-convention" rel="nofollow noreferrer">naming conventions</a> section explains <code>&lt;t&gt;</code> denotes data types, and <code>axpyi</code>, <code>doti</code>, <code>roti</code> all denote operations. However it does not further explain what the 'i' means in those names.</p>
  
  <p><em>FYI, <code>cusparse&lt;t&gt;axpyi</code> performs <strong><code>a * x + y</code></strong> (so I guess 'axpy' means 'ax plus y').<br>
   <code>cusparse&lt;t&gt;doti</code> performs <strong>dot product</strong> of a sparse vector <code>x</code> and a dense vector <code>y</code>.<br>
  <code>cusparse&lt;t&gt;roti</code> performs <strong>rotations</strong> (actually I'm not clear on how that works either).</em></p>