Thread: mtsieve
View Single Post
Old 2021-02-23, 17:15   #543
rogue's Avatar
Apr 2003
Between here and the

630310 Posts

I have released 2.2.1. Here are the changes:

framework: no changes

gfndsieve, gfndsievecl: version 2.0
Moved GFN divisor testing to GFNDivisorTester class so that GFNDivisorApp is smaller
and so that future support of non-x86 is easier since GFNDivisorTester
calls a number of x86 asm methods directly.

For gfndsievecl do not report any terms with factors < 50. This reduces the size
needed for the buffer that is used to report factors.

Added -r and -R options to support functionality similar to ppsieve.
-r will not generate a bitmap for tracking terms. It will only generate an
output file of factors.
-R is used with -r. If a term has a factor below 32767 (the default value),
then the program will not output any factors for the term.
-r and -x are mutually exclusive with -r overriding -x.

Added various speed improvements.

srsieve2, srsieve2cl: version 1.5.2
Fixed issue with CisOne logic as it tries to rebuild sequences when there are
multiple sequences as that is not yet supported.

In what limited performance testing I have done it appears that gnfdsievecl with -r is about 5x faster than the OpenCL version of ppsieve. I think some of that is due to using a much higher value for -S in gnfdsievecl than what ppsievecl does, but that doesn't explain the entirely of the speed gain. The CPU only version is about 3x slower than ppsieve, but that is due to a lot of fine-tuned assembler in the ppsieve CPU code. I don't expect anyone to use it for that, but at the same time gfndsieve should be about 50% faster for typical gfn divisor sieving.
rogue is offline   Reply With Quote