20200908, 21:58  #34 
"TF79LL86GIMPS96gpu17"
Mar 2017
US midwest
37·127 Posts 
Mprime/prime95 support PRPCF. No argument there.
Gpuowl DOES NOT support PRPCF computations. It has never supported the type 5 PRP residues used for PRPCF. https://www.mersenneforum.org/showpo...3&postcount=15 Supported features and worktodo syntax are often similar or interchangeable, and sometimes differ between GIMPS applications. This is one of the cases where they differ a lot. Putting prime95like PRPCF worktodo lines into a gpuowl worktodo file and running whatever gpuowl makes of them doesn't produce PRPCF computations, as far as I can tell; it produces PRP tests instead. I've confirmed that with a couple short runs. I've looked at several sources and found no evidence to support the claim that gpuowl performs PRPCF, but numerous indications it does not. Here's how I think gpuowl processes your worktodo line posted previously: PRP=<AID Removed>,1,2,7877777,1,99,0,3,5,"47266663,9172685364795810287,125872567825872611377" as an assignment in gpuowl worktodo probably parses as follows: PRP=worktype PRP (not PRPCF) AID=AID echoed in result output 1=k 2=b 7877777=exponent n 1=c 99=TF bits completed 0= number of tests saved if P1 performed (last of gpuowl supported parameters; gpuowl parser seems to stop after here) 3=base to power; ignored by gpuowl 5= PRPCF residue type in prime95; ONLY TYPE 1 IS SUPPORTED IN THAT VERSION GPUOWL; gpuowl has only ever implemented 0,1,4 and only one of them at any version; ignored by gpuowl "factor list" ignored by gpuowl, because gpuowl does not support PRPCF computation. Then it does a PRP test of kb^{n}+c, 1x2^{787777}1, which is to say, M7877777, with type 1 residue, base 3, the only type and base that version of gpuowl supports. (Which had factors known for years, so it's already known composite.) Gpuowl V6.11364 and v6.11380's help.txt and readme.md files do not document a PRPCF function. From the help.txt: Code:
prp <exponent> : run a single PRP test and exit, ignoring worktodo.txt pm1 <exponent> : run a single P1 test and exit, ignoring worktodo.txt ll <exponent> : run a single LL test and exit, ignoring worktodo.txt Code:
## worktodo.txt The lines in worktodo.txt must be of one of these forms: * 70100200 * PRP=FCECE568118E4626AB85ED36A9CC8D4F,1,2,77936867,1,75,0 Looking at the source code, args.cpp contains no parsing for residue type, base, or known factors. In gpu.cpp, occurrences of the string "factor" relate to P1 factors found. In worktodo.cpp, the relevant code snippet is Code:
if (kind == "PRP"  kind == "PFactor"  kind == "Pfactor"  kind == "DoubleCheck") { char AIDStr[64] = {0}; if (sscanf(tail, "%32[09afAFN/],1,2,%u,1,%u,%u", AIDStr, &exp, &bitLo, &wantsPm1) == 4  sscanf(tail, "%32[09afAFN/],%u", AIDStr, &exp) == 2  (AIDStr[0]=0, sscanf(tail, "%u", &exp)) == 1) { string AID = AIDStr; if (AID == "N/A"  AID == "0") { AID = ""; } return {{kind == "PRP" ? Task::PRP : (kind == "DoubleCheck" ? Task::LL : Task::PM1), exp, AID, line, B1, B2, bitLo, wantsPm1}}; } } But you don't have to take my word for it; Preda, author of gpuowl, has stated gpuowl does not do PRPCF; 20200806. https://www.mersenneforum.org/showpo...postcount=2391 https://github.com/preda/gpuowl contains no reference to CF or cofactor. When I put up a poll asking about future enhancements, and included PRPCF in the list of possibilities, no one objected that it was already supported. https://www.mersenneforum.org/showpo...35&postcount=6 How many of the PRPCF results from you accepted by the PrimeNet server as such were performed on prime95, versus gpuowl, in this list: https://www.mersenne.org/report_prpc...dispdate=1&B1= The status for the exponent corresponding to the worktodo line you gave, https://www.mersenne.org/report_exponent/?exp_lo=7877777&exp_hi=&full=1 shows storm5510 ran a type 1 residue PRP on M7877777 (not type 5 PRPCF) with offset 0, base 3. NOT a type 5 PRPCF on M7877777/(product of known factors). For that prime95/mprime is needed. As a confirming experiment, I ran the following worktodo line in gpuowlwin v6.11340: Code:
PRP=0,1,2,1257787,1,70,0,3,5,findmeawinningpowerballnumber Code:
20200908 15:15:24 gpuowl v6.11340g41d435f 20200908 15:15:24 config: device 0 user kriesel cpu condorella/rx480 yield maxAlloc 7500 proof 8 20200908 15:15:24 device 0, unique id '' 20200908 15:15:24 condorella/rx480 1257787 FFT: 128K 256:1:256 (9.60 bpw) 20200908 15:15:24 condorella/rx480 Expected maximum carry32: 60000 20200908 15:15:24 condorella/rx480 using long carry kernels 20200908 15:15:27 condorella/rx480 OpenCL args "DEXP=1257787u DWIDTH=256u DSMALL_HEIGHT=256u DMIDDLE=1u DPM1=0 DAMDGPU=1 DWEIGHT_STEP_MINUS_1=0xa.5644d df606efp5 DIWEIGHT_STEP_MINUS_1=0xf.a050334c8a45p6 clunsafemathoptimizations clstd=CL2.0 clfinitemathonly " 20200908 15:15:27 condorella/rx480 ASM compilation failed, retrying compilation using NO_ASM 20200908 15:15:32 condorella/rx480 OpenCL compilation in 5.32 s 20200908 15:15:32 condorella/rx480 1257787 OK 0 loaded: blockSize 400, 0000000000000003 20200908 15:15:32 condorella/rx480 1257787 OK 800 0.06%; 172 us/it; ETA 0d 00:04; a0cb6d4276e3bf46 (check 0.07s) 20200908 15:16:02 condorella/rx480 1257787 OK 200000 15.90%; 150 us/it; ETA 0d 00:03; 25ebe34e39ca647b (check 0.06s) 20200908 15:16:32 condorella/rx480 1257787 OK 400000 31.80%; 150 us/it; ETA 0d 00:02; fe2bfeea5734dd7c (check 0.06s) 20200908 15:17:01 condorella/rx480 1257787 OK 600000 47.69%; 145 us/it; ETA 0d 00:02; 0e10714084ddbff9 (check 0.06s) 20200908 15:17:31 condorella/rx480 1257787 OK 800000 63.59%; 148 us/it; ETA 0d 00:01; 27e2b993451c6138 (check 0.07s) 20200908 15:18:01 condorella/rx480 1257787 OK 1000000 79.49%; 148 us/it; ETA 0d 00:01; 4cd95311866a96a2 (check 0.06s) 20200908 15:18:29 condorella/rx480 1257787 OK 1200000 95.39%; 144 us/it; ETA 0d 00:00; 5a5b25f08d9912e4 (check 0.06s) 20200908 15:18:38 condorella/rx480 PP 1257787 / 1257787, 0000000000000001 20200908 15:18:38 condorella/rx480 proof: save residue @ 1257984 20200908 15:18:38 condorella/rx480 1257787 OK 1258000 100.00%; 147 us/it; ETA 0d 00:00; f4d273818ecfa167 (check 0.05s) 20200908 15:18:38 condorella/rx480 {"status":"P", "exponent":"1257787", "worktype":"PRP3", "res64":"0000000000000001", "residuetype":"1", "errors":{"gerbicz ":"0"}, "fftlength":"131072", "program":{"name":"gpuowl", "version":"v6.11340g41d435f"}, "user":"kriesel", "computer":"condorella/rx480", "timestamp":"20200 908 20:18:38 UTC"} 20200908 15:18:38 condorella/rx480 proof: building level 1, hash fb39419b2846f8a2 20200908 15:18:38 condorella/rx480 proof: building level 2, hash adb074fdf0786521 20200908 15:18:38 condorella/rx480 proof: building level 3, hash e7027375b01a778a 20200908 15:18:39 condorella/rx480 proof: building level 4, hash 02f5a99fbc9b3533 20200908 15:18:39 condorella/rx480 proof: building level 5, hash d7faf41b5ea65ebf 20200908 15:18:39 condorella/rx480 proof: building level 6, hash d4774d2decad9175 20200908 15:18:39 condorella/rx480 proof: building level 7, hash a9b761456b38f66f 20200908 15:18:40 condorella/rx480 proof: building level 8, hash 230b11d9272f1705 Code:
PRP=0,1,2,1947269,1,70,0,3,5,"57431622368499867552481,42" Code:
20200908 15:35:50 gpuowl v6.11340g41d435f 20200908 15:35:50 config: device 0 user kriesel cpu condorella/rx480 yield maxAlloc 7500 proof 8 20200908 15:35:50 device 0, unique id '' 20200908 15:35:50 condorella/rx480 1947269 FFT: 128K 256:1:256 (14.86 bpw) 20200908 15:35:50 condorella/rx480 Expected maximum carry32: F60000 20200908 15:35:51 condorella/rx480 OpenCL args "DEXP=1947269u DWIDTH=256u DSMALL_HEIGHT=256u DMIDDLE=1u DPM1=0 DAMDGPU=1 DWEIGHT_STEP_MINUS_1=0xd.63584 71d0f798p7 DIWEIGHT_STEP_MINUS_1=0xc.1ecf0f7a74f2p7 clunsafemathoptimizations clstd=CL2.0 clfinitemathonly " 20200908 15:35:52 condorella/rx480 ASM compilation failed, retrying compilation using NO_ASM 20200908 15:35:57 condorella/rx480 OpenCL compilation in 5.47 s 20200908 15:35:57 condorella/rx480 1947269 OK 0 loaded: blockSize 400, 0000000000000003 20200908 15:35:57 condorella/rx480 1947269 OK 800 0.04%; 142 us/it; ETA 0d 00:05; ae6256908288407a (check 0.06s) 20200908 15:36:21 condorella/rx480 1947269 OK 200000 10.27%; 120 us/it; ETA 0d 00:03; 07653d81cf4c22c6 (check 0.05s) 20200908 15:36:44 condorella/rx480 1947269 OK 400000 20.54%; 116 us/it; ETA 0d 00:03; 4d9e463546e40492 (check 0.05s) 20200908 15:37:08 condorella/rx480 1947269 OK 600000 30.81%; 119 us/it; ETA 0d 00:03; 2fb23b1c388b7be5 (check 0.05s) 20200908 15:37:32 condorella/rx480 1947269 OK 800000 41.08%; 119 us/it; ETA 0d 00:02; 06b2307e8825791a (check 0.06s) 20200908 15:37:56 condorella/rx480 1947269 OK 1000000 51.35%; 119 us/it; ETA 0d 00:02; fd8187938ddf7c6c (check 0.05s) 20200908 15:38:18 condorella/rx480 1947269 OK 1200000 61.61%; 112 us/it; ETA 0d 00:01; 93aeeb6fb88ad13b (check 0.05s) 20200908 15:38:43 condorella/rx480 1947269 OK 1400000 71.88%; 123 us/it; ETA 0d 00:01; 20294a5c7a5094ae (check 0.05s) 20200908 15:39:07 condorella/rx480 1947269 OK 1600000 82.15%; 121 us/it; ETA 0d 00:01; 8fa7161ac06799b5 (check 0.05s) 20200908 15:39:31 condorella/rx480 1947269 OK 1800000 92.42%; 118 us/it; ETA 0d 00:00; e1e1cd848ecdd6d9 (check 0.05s) 20200908 15:39:48 condorella/rx480 CC 1947269 / 1947269, 5ecc7c3e83061ccb 20200908 15:39:48 condorella/rx480 proof: save residue @ 1947392 20200908 15:39:48 condorella/rx480 1947269 OK 1947600 100.00%; 116 us/it; ETA 0d 00:00; 7088941f68d96ef9 (check 0.05s) 20200908 15:39:48 condorella/rx480 {"status":"C", "exponent":"1947269", "worktype":"PRP3", "res64":"5ecc7c3e8306____", "residuetype":"1", "errors":{"gerbicz ":"0"}, "fftlength":"131072", "program":{"name":"gpuowl", "version":"v6.11340g41d435f"}, "user":"kriesel", "computer":"condorella/rx480", "timestamp":"20200 908 20:39:48 UTC"} 20200908 15:39:49 condorella/rx480 proof: building level 1, hash 4b254a55ed1d792e 20200908 15:39:49 condorella/rx480 proof: building level 2, hash faeb44f0ad5a2cd8 20200908 15:39:49 condorella/rx480 proof: building level 3, hash a6f14d4f2654d011 20200908 15:39:49 condorella/rx480 proof: building level 4, hash 72e8df2a742892de 20200908 15:39:49 condorella/rx480 proof: building level 5, hash 2df5ac3e964c225d 20200908 15:39:49 condorella/rx480 proof: building level 6, hash a6de185edde216e1 20200908 15:39:50 condorella/rx480 proof: building level 7, hash 9a169bb441adf958 20200908 15:39:51 condorella/rx480 proof: building level 8, hash e38252ffaa1c86ad 20200908 15:39:54 condorella/rx480 PRPProof 'C:\msys64\home\ken\gpuowlcompile\gpuowlv6.11340g41d435f\rx480\1947269\19472698.proof' generated To the best of my knowledge, after years of study and tracking developments as they're announced, and reviewing multiple sources relating to the current state of gpuowl including gpuowl source code, PRPCF is not supported in ANY GIMPS GPU software. If someone else can provide credible information that some gpu package supports PRPCF, I'd be glad to add it to the tabulation of available software. Last fiddled with by kriesel on 20200908 at 21:59 
20200908, 22:59  #35  
"Robert Gerbicz"
Oct 2005
Hungary
588_{16} Posts 
Quote:
And basically you need only one big division (by mp/d, so there could be a shortcut here because d is "small", a few hundred bits in general) to support prpcf. That is ((3^mp) mod mp) mod mp/d [so do a fermat test with base=3^d], here we'll use the smallest nonnegative residue at mod. And not forget the 2048 bit tricks to save further tests: https://www.mersenneforum.org/showthread.php?t=23462 . 

20200908, 23:13  #36  
"TF79LL86GIMPS96gpu17"
Mar 2017
US midwest
37·127 Posts 
Quote:
Quote:
I'm becoming concerned that gpuowl CF capability may be a misunderstanding shared by others also. Last fiddled with by kriesel on 20200908 at 23:23 

20200908, 23:24  #37 
"Robert Gerbicz"
Oct 2005
Hungary
2^{3}·3·59 Posts 
Hm, but if you use my prp cf method then you can save that annoying large division. So compute just
(3^mp mod mp) mod 2^2048 (or 3^(1+mp)... ) just as if we'd know only d=1, and then apply my prp cf trick. Ofcourse in this setup we're weaker than a regular Fermat test, but not much weaker because d<<2^2048 so we have a very small chance that we'd identify a composite mp/d as a "probable" prime. And the identified composites here are really composites. ps. not that ideal case, because you need s=3^d mod (mp/d) in the method, so you'd need to compute s with another program with one big division. Last fiddled with by R. Gerbicz on 20200908 at 23:37 
20200909, 00:10  #38  
Random Account
Aug 2009
U.S.A.
2·839 Posts 
Quote:
I will ignore the "barbs" above and say that I will not belabor this any longer. I will stick with P1, while it lasts. Once P1 is gone, then I do not know what will come after. Perhaps nothing. 

20200909, 00:29  #39  
"TF79LL86GIMPS96gpu17"
Mar 2017
US midwest
37·127 Posts 
Quote:
I don't change the readme.md that gets put in the zip file of Windows builds. At all. It is the creation of Preda and SELROC. You wouldn't expect CUDALucas to do everything, or disclaim everything else, would you? or CUDAPm1? Or mfaktc? Gpuowl is actually an outlier in doing more than one computation type on gpu in GIMPS. Which one(s) has changed over time and may again. As for "barbs", well, none intended from here, and I suggest you chalk up any you percieve, to word choice or something equally benign. Honestly, trying to help. Last fiddled with by kriesel on 20200909 at 00:30 

20200909, 01:35  #40  
Einyen
Dec 2003
Denmark
101110100011_{2} Posts 
Quote:
It was only added to Prime95 around 2 years ago, at least as a feature recorded and handed out by the server. I think you could manually run PRP CF tests for many years if you wanted. I'm not sure how PRPCF tests works but I believe it is fairly different from a standard PRP test which is "just" 3^(Mp1) (mod Mp) with modular exponentiation, and since Mp is almost a power of 2 it is mostly just modular squarings. I think some more tricks are needed for PRPCF tests where you test (2^p1)/knownfactors which is far from a power of 2, and therefore it should not be expected to be implemented just because PRP tests are working. Also the gpuowl Readme file does not say you can add known factors to the worktodo.txt line: Quote:
Last fiddled with by ATH on 20200909 at 01:38 

20200909, 06:45  #41  
"TF79LL86GIMPS96gpu17"
Mar 2017
US midwest
37×127 Posts 
Quote:
One I missed was the gpuowl primenet.py documentation part of readme.md. Code:
## Primenet.py Arguments h, help show this help message and exit\ u USERNAME Primenet user name\ p PASSWORD Primenet password\ t TIMEOUT Seconds to sleep between updates\ dirs DIR \[DIR ...\] GpuOwl directories to scan\ tasks NTASKS Number of tasks to fetch ahead\ w \{PRP,PM1,LL_DC,PRP_DC,PRP_WORLD_RECORD,PRP_100M\} GIMPS work type Similarly, in the primenet.py code itself: Code:
workTypes = dict(PRP=150, PM1=4, LL_DC=101, PRP_DC=151, PRP_WORLD_RECORD=152, PRP_100M=153) Resorting to a prime95 source code download, we see in primenet.h a list of work preference values Code:
/* Valid work_preference values */ #define PRIMENET_WP_WHATEVER 0 /* Whatever makes most sense */ #define PRIMENET_WP_FACTOR_LMH 1 /* Factor big numbers to low limits */ #define PRIMENET_WP_FACTOR 2 /* Trial factoring */ #define PRIMENET_WP_PMINUS1 3 /* P1 of small Mersennes  not supported */ #define PRIMENET_WP_PFACTOR 4 /* P1 of large Mersennes */ #define PRIMENET_WP_ECM_SMALL 5 /* ECM of small Mersennes looking for first factors */ #define PRIMENET_WP_ECM_FERMAT 6 /* ECM of Fermat numbers */ #define PRIMENET_WP_ECM_CUNNINGHAM 7 /* ECM of Cunningham numbers  not supported */ #define PRIMENET_WP_ECM_COFACTOR 8 /* ECM of Mersenne cofactors */ #define PRIMENET_WP_LL_FIRST 100 /* LL first time tests */ #define PRIMENET_WP_LL_DBLCHK 101 /* LL double checks */ #define PRIMENET_WP_LL_WORLD_RECORD 102 /* LL test of world record Mersenne */ #define PRIMENET_WP_LL_100M 104 /* LL 100 million digit */ #define PRIMENET_WP_PRP_FIRST 150 /* PRP test of big Mersennes */ #define PRIMENET_WP_PRP_DBLCHK 151 /* PRP double checks */ #define PRIMENET_WP_PRP_WORLD_RECORD 152 /* PRP test of world record Mersennes */ #define PRIMENET_WP_PRP_100M 153 /* PRP test of 100M digit Mersennes */ #define PRIMENET_WP_PRP_COFACTOR 160 /* PRP test of Mersenne cofactors */ #define PRIMENET_WP_PRP_COFACTOR_DBLCHK 161 /* PRP double check of Mersenne cofactors */ Code:
/* This structure is passed for the ga  Get Assignment call */ /* Valid work_types returned by ga */ #define PRIMENET_WORK_TYPE_FACTOR 2 #define PRIMENET_WORK_TYPE_PMINUS1 3 #define PRIMENET_WORK_TYPE_PFACTOR 4 #define PRIMENET_WORK_TYPE_ECM 5 #define PRIMENET_WORK_TYPE_FIRST_LL 100 #define PRIMENET_WORK_TYPE_DBLCHK 101 #define PRIMENET_WORK_TYPE_PRP 150 #define PRIMENET_WORK_TYPE_CERT 200 Code:
/* This structure is passed for the ar  Assignment Result call */ #define PRIMENET_AR_NO_RESULT 0 /* No result, just sending done msg */ #define PRIMENET_AR_TF_FACTOR 1 /* Trial factoring, factor found */ #define PRIMENET_AR_P1_FACTOR 2 /* P1, factor found */ #define PRIMENET_AR_ECM_FACTOR 3 /* ECM, factor found */ #define PRIMENET_AR_TF_NOFACTOR 4 /* Trial Factoring no factor found */ #define PRIMENET_AR_P1_NOFACTOR 5 /* P1 Factoring no factor found */ #define PRIMENET_AR_ECM_NOFACTOR 6 /* ECM Factoring no factor found */ #define PRIMENET_AR_LL_RESULT 100 /* LL result, not prime */ #define PRIMENET_AR_LL_PRIME 101 /* LL result, Mersenne prime */ #define PRIMENET_AR_PRP_RESULT 150 /* PRP result, not prime */ #define PRIMENET_AR_PRP_PRIME 151 /* PRP result, probably prime */ #define PRIMENET_AR_CERT 200 /* Certification result */ Code:
// There are (at least) 5 PRP residue types for testing N=(k*b^n+c)/d: #define PRIMENET_PRP_TYPE_FERMAT 1 // Fermat PRP. Calculate a^(N1) mod N. PRP if result = 1 #define PRIMENET_PRP_TYPE_SPRP 2 // SPRP variant. Calculate a^((N1)/2) mod N. PRP if result = +/1 #define PRIMENET_PRP_TYPE_FERMAT_VAR 3 // Type 1 variant,b=2,d=1. Calculate a^(Nc) mod N. PRP if result = a^(c1) #define PRIMENET_PRP_TYPE_SPRP_VAR 4 // Type 2 variant,b=2,d=1. Calculate a^((Nc)/2) mod N. PRP if result = +/a^((c1)/2) #define PRIMENET_PRP_TYPE_COFACTOR 5 // Cofactor variant. Calculate a^(N*d1) mod N*d. PRP if result = a^(d1) mod N // Primenet encourages programs to return type 1 PRP residues as that has been the standard for prime95, PFGW, LLR for many years. // Primenet encourages programs to return type 5 PRP residues for cofactor tests as that allows Gerbiczerror checking and proofs. CPU Name roa Exponent 10516361 Result type CPRP received 20200909 04:06 Age days 0.1 Result M10516361/1072668823/249111559369/788796377818991 : F0C2FEF19EB174A1 GhzDays 3.4353 The same exponent in Exponent Status shows the known factors, nonzero shift, PRP residue type 5: https://www.mersenne.org/report_expo...0516361&full=1 Last fiddled with by kriesel on 20200909 at 07:07 

20200909, 12:58  #42  
Random Account
Aug 2009
U.S.A.
3216_{8} Posts 
Quote:
Quote:
Having a factor, I don't understand how this could be considered a "firsttime" test. The more I think about all of this, the more my head hurts. 

20200909, 13:46  #43 
6809 > 6502
"""""""""""""""""""
Aug 2003
101×103 Posts
8,863 Posts 
Many of the small factors have been known for a long time and the assignments that generated them were not recorded. Assume that it was known by the ancients. Your PRPCF is the first test to check if the cofactor is prime.

20200909, 13:52  #44  
"TF79LL86GIMPS96gpu17"
Mar 2017
US midwest
37×127 Posts 
Quote:
Another way the situation may occur, is that old factoring gets removed from the database to manage the database size. See the note about that at the bottom of any https://www.mersenne.org/results/ output: Code:
*Count does not include any results reported to the old v4 server. Also, to keep the database size down, some TFLMH result lines are deleted before 365 days pass. Any factors found, trial factoring limits, and CPU credits are remembered, but the result lines will not appear in the table above or appear in the count of total results for the last 365 days. As to why PRPCF is called a firsttime test, it's the first time the cofactor is primality tested. This is the same terminology and similar sequence as for an exponent with no factor found. The usual order when searching for Mersenne primes is TF up to a stopping point, if no factor found yet, run a P1, if no factor found yet, then a first primality test, then eventually a double check of the primality test, or now a Cert of the proof. The cofactor being tested for primality in PRPCF is whatever is left after dividing the Mersenne number by the known factors. See for example https://www.mersenne.org/report_expo...0516361&full=1 (the only PRPCF I've run.) Or definition of cofactor, #11 of https://www.mersenneforum.org/showpo...65&postcount=3 PRP of a cofactor does not help find new Mersenne primes. It may aid in further factoring of composite Mersenne numbers, which some people like. See https://www.mersenneforum.org/showth...810#post555810 Last fiddled with by kriesel on 20200909 at 13:57 

Thread Tools  
Similar Threads  
Thread  Thread Starter  Forum  Replies  Last Post 
Things that make you go "Hmmmm…"  Xyzzy  Lounge  4119  20201121 16:07 
GpuOwl PRPProof changes  preda  GpuOwl  20  20201017 06:51 
gpuOWL for Wagstaff  GP2  GpuOwl  22  20200613 16:57 
gpuowl tuning  M344587487  GpuOwl  14  20181229 08:11 
short runs or long runs  MattcAnderson  Operazione Doppi Mersennes  3  20140216 15:19 