Two questions/suggestions.
Quote:
Originally Posted by R. Gerbicz
We are searching in remainder classes this is "g" in the program, we are searching for k, where k==g mod step, here step is the product of the first x primes.

(1)While doing this are you using the fact that
k must be a multiple of several first primes, for example, for DodecaProths
k must be an odd multiple of 3*5*7 for all
n, while for some
n (like 58 above) it also must be a multiple of 11. Then you can increase
step by including up to 3 (or 4) more primes. By doing this you can also reduce the values kept in internal variables, for example instead of k you can keep k/105 and thus increase the range of k while using the same int type.
(2) In the second step are you sure you are not oversieving? It is possible that sieving above a certain value removes only a small portion of candidates and is therefore more time consuming than prp test because modular division ("%" in C) requires many cpu cycles. Maybe in case of DodecaProths we can stop sieving at 10000 instead of going to 32000 (there are more than 2200 primes between 10k and 32k)?