26 uint64_t preferred_bucket_size;
void nut_Segsieve_destroy(nut_Segsieve *self)
Free the resources held by a segmented sieve header.
void * nut_Segsieve_factorizations_mkbuffer(const nut_Segsieve *self, size_t *pitch)
Allocate a buffer for a thread to pass to nut_Segsieve_factorizations on its intervals.
void nut_Segsieve_factorizations(const nut_Segsieve *restrict self, uint64_t a, uint64_t b, size_t pitch, void *buffer)
Sieve all factorizations in the range [a, b) using a modified, in place largest factor sieve This use...
bool nut_Segsieve_init(nut_Segsieve *self, uint64_t max, uint64_t preferred_bucket_size)
Set up the sieving primes header for a segmented sieve.