"TF79LL86GIMPS96gpu17"
Mar 2017
US midwest
1010001110101_{2} Posts

Worktodo entry formats
This is a quick reference for worktodo entry formats for multiple GIMPS programs.
These are a besteffort summary and not guaranteed to be correct or complete. For confirmation, see the performance or help output of the respective programs, their documentation files, and communications by the authors.
Syntax used here:
\ [ or \ ] means a literal [ or ] is present. (It needs that space between, or it itself does unwanted formatting of this post)
[ax] either a or x (but not both)
[a] optional a, nul otherwise
[ab<nul>] either a or b or neither, but not both
[a[,b[,c]]] a is optional, if neither ,b nor ,c are present; ,b is optional, if ,c is not present; ,c is optional
(parenthetical comment on an example, that should not be included in an actual worktodo entry)
whatever is outside of <> and [] and () is literal
<variable> means substitute the string representation of the value of variable in place of <variable>
Variables used here:
AID = 32character assignment ID
B1 = first stage bound
B2 = second stage bound
exponent in m=2 ^{exponent}  1 and typically a prime
k, b, n, c, for number m = k b ^{n} + c and typically a prime. For a Mersenne number, k=1, b=2, c=1.
from = trial factoring starting bit level; lowest candidate factor ~ 2 ^{from}
to = trial factoring ending bit level; highest candidate factor ~ 2 ^{to}
prp_base = the number that gets raised to a high power in the PRP test, typically 3
how_far_factored = bits level previously factored to in TF
tests_saved = integer number of future primality tests saved if a factor is found, usually 2 for a first test candidate, 1 for a doublecheck candidate, 0 if a sufficient P1 has already been completed, or optionally up to 9 for aggressive P1 factoring
p1_done = 1 if done to adequate bounds, 0 if not done already to adequate bounds
squarings = number of squaring iterations for performing a PRP verification/certificate generation
nul = null string, no characters
nth_run = [123] corresponding to start values 2/7, 6/5, or random1/random2 for P+1
nworker= natural number for the worker header / section; 1 2 3 etc as applicable
residue_type. From the prime95 undoc.txt: "PRP supports 5 types of residues for compatibility with other PRP programs. If a is the PRP base and N is the number being tested, then the residue types are:
1 = 64bit residue of a^(N1), a traditional Fermat PRP test used by most other programs
2 = 64bit residue of a^((N1)/2)
3 = 64bit residue of a^(N+1), only available if b=2
4 = 64bit residue of a^((N+1)/2), only available if b=2
5 = 64bit residue of a^(N*known_factors1), same as type 1 if there are no known factors"
Additionally, there is a residue type 0 in some versions of gpuowl that is simultaneous PRP and P1, and most versions of gpuowl perform only a single residue_type of PRP without simultaneous P1
Typically,
Factor=[<AID>,]<exponent>,<from>,<to>
PFactor=[AID>,]<k>,<b>,<n>,<c>,<how_far_factored>,<tests_saved>
Test=[<AID>,]<exponent>,<how_far_factored>,<p1_done>
Doublecheck=[<AID>,]<exponent>,<how_far_factored>,<p1_done>
PRP varies
Formats and examples follow for several commonly used GIMPS programs.
Note some are known to be casesensitive. PFactor != Pfactor for example.
Mfaktc or Mfakto Factor=[<AID>,]<exponent>,<from>,<to>
[#//\\]whatever comment you want, including valid worktodo entry lines
Factor=7F797F1F8BC4B5C234CB29D8BAD8B680,93040447,74,75
// some comment
CUDAPm1 PFactor=[<AID>,]1,2,<exponent>,1,<how_far_factored>,<tests_saved>
[#//\\]whatever comment you want, including valid worktodo entry lines
PFactor=1,2,415000043,1,82,2
# some comment
Note, to specify the bounds, use the commandline b1 and b2 options.
CUDALucas or cllucas Test=[<AID>,]<exponent>,<how_far_factored>,<p1_done>
Doublecheck=[<AID>,]<exponent>,<how_far_factored>,<p1_done>
[#//\\]whatever comment you want, including valid worktodo entry lines
Test=402143717,81,1
DoubleCheck=4BACCC7E79F9878B2D2F606C6DF40123,50879989,74,1
\\ some comment Gpuowl (may vary in syntax and availability versus version)(A note of caution, PRP residue type is dependent on gpuowl version. To qualify as a PRP DC, residue types must match.)
TF (V3.7  v3.9?)
Factor=[<AID>,]<exponent>,<from>,<to>
Factor=332298607,76,77
P1
[B1=<B1>[,B2=<B2>];]PFactor=[AID0],1,2,<exponent>,1,<how_far_factored>,<tests_saved> (v6.x)
B1=790000,B2=16590000;PFactor=A125254BD75564243D4B73D4EC601234,1,2,91538501,1,77,2 (v6.x)
PFactor=B1:<B1>,<exponent> (v4.x)
PFactor=B1:20000,83780327 (v4.x)
LL (version <0.7)
[TestDoubleCheck]=[<AID>0],<exponent>,<how_far_factored>,<p1_done>
[TestDoubleCheck]=<exponent>
DoubleCheck=0,70100200,0,0
Test=70100200
LL (version >~v6.11252)
DoubleCheck=[AID0],<exponent>,<how_far_factored>,<p1_done>
DoubleCheck=1AAFFAAD0000000FFFF,51456287,74,1
PRP (version >0.6; varies in residue type by gpuowl version, type 1 preferred)
PRP=[<AID>0],<k>,<b>,<n>,<c>,<how_far_factored>,<p1_done>
PRP=0,1,2,1500000041,1,87,1
PRP1 (PRP residue type 0)
[B1=<B1>,][B2=<B2>,]PRP=[AID0],1,2,<exponent>,1,<how_far_factored>,<tests_saved> (~v4.7  v5.0; defaults to B2=exponent)
B1=2000000,B2=40000000;PRP=0,1,2,82252003,1,76,0
PRPCF is not supported in any version to date
Comment
; preface a worktodo line with a semicolon (or perhaps anything unexpected) will cause it to be ignored, functioning as a comment, except for the error message it will generate.
Also, for a PRP line, additional content following <p1 done> and a separating , appears to be ignored, so could serve as an inline comment about the work item in certain gpuowl versions
prime95 / mprime <AID>: an alreadyissued assignment identifier
N/A: no AID issued yet, and don't get one at the next PrimeNet checkins
<nul>: no AID issued yet, but get one at the next PrimeNet checkin
Worker header (precedes worktodo entries for the given worker)
\ [Worker #<nworker>\ ]
[Worker #1]
TF
Factor=[<AID>,N/A,<nul>]<exponent>,<from>,<to>
Factor=N/A,1257787,1,64
P1
Pminus1=[<AID>,N/A,<nul>]<k>,<b>,<n>,<c>,<B1>,<B2>[,"commaseparatedlistofknownfactors"]
Pfactor=[<AID>,N/A,<nul>]<k>,<b>,<n>,<c>,<how_far_factored>,<tests_saved>
Pminus1=1,2,660000031,1,3600000,180000000
Pfactor=N/A,1,2,500000693,1,82,2
P+1 (new with v30.6)
(Note, not productive or recommended for GIMPS wavefront work!) Pplus1=[<AID>,N/A,<nul>]<k>,<b>,<n>,<c>,<B1>,<B2>,<nth_run>[,<how_far_factored>][,"commaseparatedlistofknownfactors"]
Pplus1=N/A,1,2,103598543,1,1000000,30000000,1
Pplus1=N/A,1,2,103598543,1,1000000,30000000,2
Pplus1=1,2,103598543,1,1000000,30000000,3
LL
Test=[<AID>,N/A,<nul>]<exponent>,<how_far_factored>,<p1_done>
Doublecheck=[<AID>,N/A,<nul>]<exponent>,<how_far_factored>,<p1_done>
Test=N/A,82589933,82,1
PRP (and PRP DC for manual assignments, or most versions)
PRP=[<AID>,N/A,<nul>]<k>,<b>,<n>,<c>[,<how_far_factored>,<tests_saved>[,<prp_base>,<residue_type>[,"commaseparatedlistofknownfactors"]]]
PRP=N/A,1,2,82589933,1 (mersenne prime record)
PRP=N/A,1,2,268435459,1,80,0,3,5,"3" (Wagstaff number)
PRP=1,2,82589933,1,82,0 (to have PrimeNet issue an AID for it at the next checkin)
NOTE: as of v30.x, it's recommended to include <how_far_factored,<tests_saved>, to prevent repeating unnecessary TF from 0 bits, and prevent repeating unnecessary P1 factoring
PRPDC (via PrimeNet API with new enough prime95/mprime version; per Woltman post; not independently confirmed yet)
PRPDC= instead of PRP=, otherwise same as for PRP as shown above
PRPCF / PRPCFDC
see above, PRP, with comma separated list of known factors
Comment
;whatever comment you want, including valid worktodo entry line copies
PRP Certificate/verification (beginning at v30.1b1)
Cert=AID,k,b,n,c,squarings
Cert=(redacted),1,2,97457587,1,380694
Mlucas [TestDoubleCheck]=[<AID>,]<exponent>,<how_far_factored>,<p1_done>
<exponent> (does an LL test of the corresponding Mersenne number)
DoubleCheck=B83D23BF447184F586470457AD1E03AF,22831811,66,1
Test=DDD21F2A0B252E499A9F9020E02FE232,48295213,69,0
Test=332220523,80,1
332220523
V19 adds PRP and PRP DC forms, for Mersenne numbers only, residuetype 1 or 5:
PRP=<AID>,<k>,<b>,<n>,<c>,<to>,<tests_saved>
PRP=<AID>,<k>,<b>,<n>,<c>,<to>,<tests_saved>,<baseoffirsttest>,<residuetype>
PRP=<AID>,1,2,<n>,1,<to>,<tests_saved>
PRP=<AID>,1,2,<n>,1,<to>,<tests_saved>,<baseoffirsttest>,[15]
PRP=0123456789ABCDEF0123456789ABCDEF,1,2,332220523,1,0
PRP=0123456789ABCDEF0123456789ABCDEF,1,2,332220523,1,0,3,1 Mlucas primenet.py (work queuing) [TestDoubleCheck]=<AID>,<exponent>,<how_far_factored>,<p1_done>
PRP=<AID>,<k>,<b>,<n>,<c>,<to>,<tests_saved>
PRP=<AID>,<k>,<b>,<n>,<c>,<to>,<tests_saved>,<baseoffirsttest>,<residuetype>
Top of this reference thread: https://www.mersenneforum.org/showpo...89&postcount=1
Top of reference tree: https://www.mersenneforum.org/showpo...22&postcount=1
Last fiddled with by kriesel on 20210607 at 22:00
Reason: added optionals nesting construct for prime95/mprime PRP, PRPCF
