Mentions légales du service

Skip to content

Draft: Bucket sieve powers

Emmanuel Thomé requested to merge bucket_sieve_powers into master

This looks promising, and seems to bring no slowdown, sometimes even speedups. The key points are:

  • more accuracy in sieving allows for smaller leeway in the lambda parameters, and then some minor gains in the computation of complete norms and resieving / trial division.
  • sieving projective powers, especially with adjust-strategy 2, exposes to bug #30012 (closed) in a broader fashion, and this means that every so often, some buckets will have many hits (think I=16 where one bucket region is one line. The variance per line of the number of hits is much larger for projective primes and projective prime powers than for affine ones). Bottom line, projective stuff needs special treatment.

One of the bonuses of this patch set is that it removes the ugly code in las-plattice.hpp (it was bringing zero benefit), and I've reworked the plattice struct and reduce_plattice functions to get rid of signed arithmetic.

Ideally, I would like to check which are the few relations I'm losing in a few tests with my new code (losing 0.1% of relations when lambdas change from 2.2 to 2.01 isn't necessarily something to worry about, but I'd like to check nevertheless). But beyond that it looks pretty promising, and I'll push that soon, I expect.

Edited by Emmanuel Thomé

Merge request reports