Class CongruenceCollectorParallel
- java.lang.Object
-
- de.tilman_neumann.jml.factor.base.congruence.CongruenceCollector
-
- de.tilman_neumann.jml.factor.base.congruence.CongruenceCollectorParallel
-
public class CongruenceCollectorParallel extends CongruenceCollector
Collects smooth and partial congruences, and assembles partials to smooth congruences on-the-fly. Partials may have any number of large factors. This implementation is appropriate for multi-threaded congruence generation.- Author:
- Tilman Neumann
-
-
Field Summary
Fields Modifier and Type Field Description BigInteger
factor
-
Fields inherited from class de.tilman_neumann.jml.factor.base.congruence.CongruenceCollector
COUNT_CYCLES
-
-
Constructor Summary
Constructors Constructor Description CongruenceCollectorParallel(int extraCongruences)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
collectAndProcessAQPairs(List<AQPair> aqPairs)
Collect AQ pairs and run the matrix solver if appropriate.long
getCollectDuration()
long
getSolverDuration()
int
getSolverRunCount()
void
initialize(BigInteger N, int requiredSmoothCongruenceCount, MatrixSolver matrixSolver, FactorTest factorTest)
Initialize congruence collector for a new N.-
Methods inherited from class de.tilman_neumann.jml.factor.base.congruence.CongruenceCollector
add, addSmooth, cleanUp, getCycleCountResult, getPartialCongruenceCount, getReport, getSmoothCongruenceCount, getSmoothCongruences, initialize
-
-
-
-
Field Detail
-
factor
public BigInteger factor
-
-
Method Detail
-
initialize
public void initialize(BigInteger N, int requiredSmoothCongruenceCount, MatrixSolver matrixSolver, FactorTest factorTest)
Initialize congruence collector for a new N.- Parameters:
N
-requiredSmoothCongruenceCount
-matrixSolver
-factorTest
-
-
collectAndProcessAQPairs
public void collectAndProcessAQPairs(List<AQPair> aqPairs)
Collect AQ pairs and run the matrix solver if appropriate. This method should be run in a block synchronized on this.- Parameters:
aqPairs
-
-
getCollectDuration
public long getCollectDuration()
-
getSolverDuration
public long getSolverDuration()
-
getSolverRunCount
public int getSolverRunCount()
-
-