title: Accelerating performance of loop performing unsigned long long modulo operation
body: <p>I need to perform a many operations of finding remainders of the division <code>unsigned long long</code> number by the 16-bit modulus:</p>
  
  <pre><code>unsigned long long largeNumber;
  long residues[100];
  unsigned long modules[100];
  intiModules(modules); //set different 16-bit values
  
  for(int i = 0; i &lt; 100; i++){
       residues[i] = largeNumber % modules[i];
  }
  </code></pre>
  
  <p>How I can accelerate this loop?</p>
  
  <p>The iteration count is not large (32-128), but this loop performed very often so its speed is critical.</p>