Class PSIQSThreadBase
- java.lang.Object
-
- java.lang.Thread
-
- de.tilman_neumann.jml.factor.psiqs.PSIQSThreadBase
-
- All Implemented Interfaces:
Runnable
- Direct Known Subclasses:
PSIQSThread
,PSIQSThread_SBH_U
,PSIQSThread_U
public abstract class PSIQSThreadBase extends Thread
Base class for polynomial generation/sieve/trial division threads for the parallel SIQS implementation (PSIQS).- Author:
- Tilman Neumann
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class java.lang.Thread
Thread.State, Thread.UncaughtExceptionHandler
-
-
Field Summary
Fields Modifier and Type Field Description protected TDiv_QS
auxFactorizer
protected SIQSPolyGenerator
polyGenerator
protected Sieve
sieve
-
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
-
-
Constructor Summary
Constructors Constructor Description PSIQSThreadBase(int k, BigInteger N, BigInteger kN, int d, SieveParams sieveParams, BaseArrays baseArrays, AParamGenerator apg, SIQSPolyGenerator polyGenerator, Sieve sieve, TDiv_QS tdiv, CongruenceCollectorParallel cc, int threadIndex)
Standard constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
cleanUp()
PolyReport
getPolyReport()
SieveReport
getSieveReport()
TDivReport
getTDivReport()
void
run()
void
setFinishNow()
-
Methods inherited from class java.lang.Thread
activeCount, checkAccess, clone, countStackFrames, currentThread, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, onSpinWait, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, suspend, toString, yield
-
-
-
-
Field Detail
-
polyGenerator
protected SIQSPolyGenerator polyGenerator
-
sieve
protected Sieve sieve
-
auxFactorizer
protected TDiv_QS auxFactorizer
-
-
Constructor Detail
-
PSIQSThreadBase
public PSIQSThreadBase(int k, BigInteger N, BigInteger kN, int d, SieveParams sieveParams, BaseArrays baseArrays, AParamGenerator apg, SIQSPolyGenerator polyGenerator, Sieve sieve, TDiv_QS tdiv, CongruenceCollectorParallel cc, int threadIndex)
Standard constructor.- Parameters:
k
- multiplierN
- factor argumentkN
- k*Nd
- the d-parameter of quadratic polynomials Q(x) = (d*a*x + b)^2 - kNsieveParams
- basic sieve parametersbaseArrays
- primes, power arrays after adding powersapg
- a-parameter generatorpolyGenerator
- the SIQS polynomial generatorsieve
- the sieve enginetdiv
- the trial division enginecc
- congruence collector, also runs the matrix solverthreadIndex
-
-
-
Method Detail
-
setFinishNow
public void setFinishNow()
-
cleanUp
public void cleanUp()
-
getPolyReport
public PolyReport getPolyReport()
-
getSieveReport
public SieveReport getSieveReport()
-
getTDivReport
public TDivReport getTDivReport()
-
-