Class PSIQSThreadBase
java.lang.Object
java.lang.Thread
de.tilman_neumann.jml.factor.psiqs.PSIQSThreadBase
- All Implemented Interfaces:
java.lang.Runnable
- Direct Known Subclasses:
PSIQSThread
,PSIQSThread_SB
,PSIQSThread_SB_U
,PSIQSThread_U
,PSIQSThread_U_3LP
,PSIQSThread_U_nLP
public abstract class PSIQSThreadBase
extends java.lang.Thread
Base class for polynomial generation/sieve/trial division threads for the parallel SIQS implementation (PSIQS).
-
Nested Class Summary
Nested classes/interfaces inherited from class java.lang.Thread
java.lang.Thread.State, java.lang.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, java.math.BigInteger N, java.math.BigInteger kN, int d, SieveParams sieveParams, BaseArrays baseArrays, AParamGenerator apg, SIQSPolyGenerator polyGenerator, Sieve sieve, TDiv_QS tdiv, CongruenceCollector cc, int threadIndex)
Standard constructor. -
Method Summary
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
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Field Details
-
polyGenerator
-
sieve
-
auxFactorizer
-
-
Constructor Details
-
PSIQSThreadBase
public PSIQSThreadBase(int k, java.math.BigInteger N, java.math.BigInteger kN, int d, SieveParams sieveParams, BaseArrays baseArrays, AParamGenerator apg, SIQSPolyGenerator polyGenerator, Sieve sieve, TDiv_QS tdiv, CongruenceCollector 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 Details
-
run
public void run()- Specified by:
run
in interfacejava.lang.Runnable
- Overrides:
run
in classjava.lang.Thread
-
setFinishNow
public void setFinishNow() -
cleanUp
public void cleanUp() -
getPolyReport
-
getSieveReport
-
getTDivReport
-