It transpires that j0nn9 left us “an exercise for the reader” in the GapMiner rev5.1 code, just here:
https://github.com/gapcoin/GapMiner/blob/2f66e908e52dab503de77835f31ac1603b1c23fc/src/HybridSieve.cpp#L398sieve_t min_len = log_str(mpz_get_d(mpz_start)) * d_difficulty;
should read
sieve_t min_len = log(mpz_get_d(mpz_start)) * d_difficulty;
The difference was causing GPU builds of the GapMiner rev 5.1 to segfault (on both AMD and nVidia).
I fixed that (along with some other compilation-blockers) and re-worked the Makefile so that it can be used to create either CPU or GPU miners (AMD and nVidia) without having to be edited to do so.
I've cloned gapcoin-project's GapMiner repos here
https://github.com/gjhiggins/GapMiner, check out the README for details of how to compile
gapminer and
gpugapminer on Linux.
Thanks to benxy031 for providing that nVidia-compatible
fermat.cl code, I've included it in the
gpu subdirectory as
fermatnv.cl and adjusted the miner code to load whichever OpenCL source file is compatible with the detected platform.
Cheers
Graham