mersenneforum.org  

Go Back   mersenneforum.org > Great Internet Mersenne Prime Search > Software

Reply
Thread Tools
Old 2023-01-02, 15:55   #540
rogue
 
rogue's Avatar
 
"Mark"
Apr 2003
Between here and the

3·2,447 Posts
Default

I have posted pfgw 4.0.4 over at sourceforge. Here are the updates:

Code:
   - Upgraded to Visual Studio 2022.
   - Added -A allowing the specification of single CPU for pfgw to use.  This
     is supported only for Windows at this time and should be primarily used on CPUs
     with a mix of efficiency and performance cores.
   - Added CC file format support.  This was added to support ccsieve (from the mtsieve
     framework) as the format is easier to understand than the newpgen format.  Read
     the ccfileformat.txt for more details.
   - Upgraded to gwnum v30.10b2.
I intend to post a Mac build later today. Can someone provide a linux build?
rogue is online now   Reply With Quote
Old 2023-01-12, 19:10   #541
hunson
 
Feb 2020
Germany

23·7 Posts
Default

Hi,

I tested the new version of pfgw64 (4.0.4) and found a behavior that I can not explain when using the new cunningham chain input file from ccsieve.

Quote:
1125262125*2^41003+1 is 3-PRP! (0.7271s+0.0003s)
1395485655*2^41003+1 is 3-PRP! (0.7270s+0.0002s)
2*(1395485655*2^41003+1)-1 is composite: RES64: [7B5D0590700BDD19] (0.7327s+0.0008s)
1462023480*2^41003+1 is 3-PRP! (0.7945s+0.0003s)
1488224595*2^41003+1 is 3-PRP! (0.7671s+0.0003s)
1541048355*2^41003+1 is 3-PRP! (0.7321s+0.0002s)
1895788596*2^41003+1 is 3-PRP! (0.7264s+0.0002s)
2*(1895788596*2^41003+1)-1 is composite: RES64: [2405F0A43800E1AB] (0.7328s+0.0007s)
1962067611*2^41003+1 is 3-PRP! (0.7419s+0.0002s)
Why does pfgw explicitly print out that 2*(1395485655*2^41003+1)-1 and 2*(1895788596*2^41003+1)-1 are composite? I assume the software always checks for this form if a prime was found like in all the other cases.

regards
hunson is offline   Reply With Quote
Old 2023-01-12, 20:39   #542
rogue
 
rogue's Avatar
 
"Mark"
Apr 2003
Between here and the

1CAD16 Posts
Default

Quote:
Originally Posted by hunson View Post
Hi,

I tested the new version of pfgw64 (4.0.4) and found a behavior that I can not explain when using the new cunningham chain input file from ccsieve.


Why does pfgw explicitly print out that 2*(1395485655*2^41003+1)-1 and 2*(1895788596*2^41003+1)-1 are composite? I assume the software always checks for this form if a prime was found like in all the other cases.

regards
The first term is PRP. The second term in the chain is composite. If you have length 3 and the first two are PRP, but the third is composite, it will output all three. It will not output the first term in the chain if it is composite.

Note that with base 2 that k can be even for the first time. That will be fixed in the next release. If you want to find records for longer chains then search primorials or factorials. fewer terms are removed in each range of k, but there are a lot more PRPs.
rogue is online now   Reply With Quote
Old 2023-01-13, 16:45   #543
hunson
 
Feb 2020
Germany

708 Posts
Default

Thanks for the explanation.
hunson is offline   Reply With Quote
Old 2023-01-18, 18:09   #544
ryanp
 
ryanp's Avatar
 
Jun 2012
Boulder, CO

1DD16 Posts
Default

Quote:
Originally Posted by rogue View Post
I intend to post a Mac build later today. Can someone provide a linux build?
I was able to successfully build PFGW Version 4.0.4.64BIT.20221214.x86_Dev [GWNUM 30.10] on Linux, though I was initially getting linker errors working from SVN head. I had to tweak pform/pfio/makefile and pform/pfio/pfccfile.cpp as follows:

Code:
Index: pform/pfio/makefile
===================================================================
--- pform/pfio/makefile	(revision 679)
+++ pform/pfio/makefile	(working copy)
@@ -5,7 +5,7 @@
 vpath %.asm .
 
 OSPECIAL =
-OLIB = pfcpapfile.o pffile.o pfnewpgenfile.o pfoutput.o pfconsoleoutput.o pfini.o \
+OLIB = pfcpapfile.o pffile.o pfccfile.o pfnewpgenfile.o pfoutput.o pfconsoleoutput.o pfini.o \
 	pfabcfile.o pfabc2file.o pfprzfile.o pfscriptfile.o pfscriptfns.o pfabcdfile.o \
 	pfdecimalfile.o pfcheckfile.o prz.o pfabctaskcompleted.o pffilesymbol.o
 OUTDIR = .libs
Code:
Index: pform/pfio/pfccfile.cpp
===================================================================
--- pform/pfio/pfccfile.cpp	(revision 679)
+++ pform/pfio/pfccfile.cpp	(working copy)
@@ -27,6 +27,13 @@
 extern char g_ModularSieveString[256];
 extern bool g_bTerseOutput;
 
+int strpos(char *haystack, int needle) {
+   char *p = strchr(haystack, needle);
+   if (p)
+      return p - haystack;
+   return -1;   // Not found = -1.
+}
+
 int PFCCFile::LetterNumber(char Letter)
 {
    if (Letter >= 'A' && Letter <= 'Z')
@@ -192,7 +199,7 @@
    while (expPtr[0] == ' ')
       expPtr++;
 
-   if (strchr(expPtr, '&') > 0 || strchr(expPtr, '|') > 0) {
+   if (strpos(expPtr, '&') > 0 || strpos(expPtr, '|') > 0) {
       snprintf(errorMessage, sizeof(errorMessage), "\nCritical Error, first line in CC file does not support & or |\n");
       throw errorMessage;
@rogue, how should I get the binary to you?
ryanp is offline   Reply With Quote
Old 2023-01-18, 23:44   #545
rogue
 
rogue's Avatar
 
"Mark"
Apr 2003
Between here and the

11100101011012 Posts
Default

Quote:
Originally Posted by ryanp View Post
I was able to successfully build PFGW Version 4.0.4.64BIT.20221214.x86_Dev [GWNUM 30.10] on Linux, though I was initially getting linker errors working from SVN head. I had to tweak pform/pfio/makefile and pform/pfio/pfccfile.cpp as follows:

Code:
Index: pform/pfio/makefile
===================================================================
--- pform/pfio/makefile	(revision 679)
+++ pform/pfio/makefile	(working copy)
@@ -5,7 +5,7 @@
 vpath %.asm .
 
 OSPECIAL =
-OLIB = pfcpapfile.o pffile.o pfnewpgenfile.o pfoutput.o pfconsoleoutput.o pfini.o \
+OLIB = pfcpapfile.o pffile.o pfccfile.o pfnewpgenfile.o pfoutput.o pfconsoleoutput.o pfini.o \
 	pfabcfile.o pfabc2file.o pfprzfile.o pfscriptfile.o pfscriptfns.o pfabcdfile.o \
 	pfdecimalfile.o pfcheckfile.o prz.o pfabctaskcompleted.o pffilesymbol.o
 OUTDIR = .libs
Code:
Index: pform/pfio/pfccfile.cpp
===================================================================
--- pform/pfio/pfccfile.cpp	(revision 679)
+++ pform/pfio/pfccfile.cpp	(working copy)
@@ -27,6 +27,13 @@
 extern char g_ModularSieveString[256];
 extern bool g_bTerseOutput;
 
+int strpos(char *haystack, int needle) {
+   char *p = strchr(haystack, needle);
+   if (p)
+      return p - haystack;
+   return -1;   // Not found = -1.
+}
+
 int PFCCFile::LetterNumber(char Letter)
 {
    if (Letter >= 'A' && Letter <= 'Z')
@@ -192,7 +199,7 @@
    while (expPtr[0] == ' ')
       expPtr++;
 
-   if (strchr(expPtr, '&') > 0 || strchr(expPtr, '|') > 0) {
+   if (strpos(expPtr, '&') > 0 || strpos(expPtr, '|') > 0) {
       snprintf(errorMessage, sizeof(errorMessage), "\nCritical Error, first line in CC file does not support & or |\n");
       throw errorMessage;
@rogue, how should I get the binary to you?
I'm curious what library is missing. I will update sourceforge.

You can send it to me via e-mail or dropbox. I just need you to zip (or 7-zip) the contents of the distribution folder.

Thank you!
rogue is online now   Reply With Quote
Old 2023-01-20, 14:12   #546
rogue
 
rogue's Avatar
 
"Mark"
Apr 2003
Between here and the

3×2,447 Posts
Default

I updated the makefile and fixed strchr to use != NULL. Let me know if that resolves your build issue.
rogue is online now   Reply With Quote
Old 2023-02-22, 19:45   #547
kruoli
 
kruoli's Avatar
 
"Oliver"
Sep 2017
Porta Westfalica, DE

23·71 Posts
Default

Do you already have received the Linux version? When building and taking the gwnum.a from the latest source, it still complains about a lot of missing references. Even to gwinit2.
kruoli is offline   Reply With Quote
Old 2023-02-22, 21:45   #548
rogue
 
rogue's Avatar
 
"Mark"
Apr 2003
Between here and the

162558 Posts
Default

Quote:
Originally Posted by kruoli View Post
Do you already have received the Linux version? When building and taking the gwnum.a from the latest source, it still complains about a lot of missing references. Even to gwinit2.
I cannot build a Linux version. Nobody has sent me one to post.
rogue is online now   Reply With Quote
Old 2023-02-23, 11:11   #549
kruoli
 
kruoli's Avatar
 
"Oliver"
Sep 2017
Porta Westfalica, DE

23×71 Posts
Default

Attached is a Linux build. I needed to change GMP from being statically to being dynamically linked. Please give it a try.
Attached Files
File Type: 7z pfgw64.7z (2.69 MB, 39 views)
kruoli is offline   Reply With Quote
Old 2023-02-23, 13:39   #550
rogue
 
rogue's Avatar
 
"Mark"
Apr 2003
Between here and the

3·2,447 Posts
Default

Quote:
Originally Posted by kruoli View Post
Attached is a Linux build. I needed to change GMP from being statically to being dynamically linked. Please give it a try.
I have no means to execute this. If someone else can verify that this runs in their environment, then I will put on sourceforge. My main concern is the dynamically linked libraries.
rogue is online now   Reply With Quote
Reply



Similar Threads
Thread Thread Starter Forum Replies Last Post
A possible bug in LLR/PFGW while using GWNUM (no bug in P95) Batalov Software 77 2015-04-14 09:01
PFGW 3.2.0 has been Released rogue Software 94 2010-09-14 21:39
PFGW 3.2.3 has been Released rogue Software 10 2009-10-28 07:07
PFGW 3.2.1 has been released rogue Software 5 2009-08-10 01:43
PFGW 3.1.0 has been Released rogue Software 25 2009-07-21 18:13

All times are UTC. The time now is 14:04.


Fri Jul 7 14:04:00 UTC 2023 up 323 days, 11:32, 0 users, load averages: 1.50, 1.14, 1.13

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2023, Jelsoft Enterprises Ltd.

This forum has received and complied with 0 (zero) government requests for information.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation.
A copy of the license is included in the FAQ.

≠ ± ∓ ÷ × · − √ ‰ ⊗ ⊕ ⊖ ⊘ ⊙ ≤ ≥ ≦ ≧ ≨ ≩ ≺ ≻ ≼ ≽ ⊏ ⊐ ⊑ ⊒ ² ³ °
∠ ∟ ° ≅ ~ ‖ ⟂ ⫛
≡ ≜ ≈ ∝ ∞ ≪ ≫ ⌊⌋ ⌈⌉ ∘ ∏ ∐ ∑ ∧ ∨ ∩ ∪ ⨀ ⊕ ⊗ 𝖕 𝖖 𝖗 ⊲ ⊳
∅ ∖ ∁ ↦ ↣ ∩ ∪ ⊆ ⊂ ⊄ ⊊ ⊇ ⊃ ⊅ ⊋ ⊖ ∈ ∉ ∋ ∌ ℕ ℤ ℚ ℝ ℂ ℵ ℶ ℷ ℸ 𝓟
¬ ∨ ∧ ⊕ → ← ⇒ ⇐ ⇔ ∀ ∃ ∄ ∴ ∵ ⊤ ⊥ ⊢ ⊨ ⫤ ⊣ … ⋯ ⋮ ⋰ ⋱
∫ ∬ ∭ ∮ ∯ ∰ ∇ ∆ δ ∂ ℱ ℒ ℓ
𝛢𝛼 𝛣𝛽 𝛤𝛾 𝛥𝛿 𝛦𝜀𝜖 𝛧𝜁 𝛨𝜂 𝛩𝜃𝜗 𝛪𝜄 𝛫𝜅 𝛬𝜆 𝛭𝜇 𝛮𝜈 𝛯𝜉 𝛰𝜊 𝛱𝜋 𝛲𝜌 𝛴𝜎𝜍 𝛵𝜏 𝛶𝜐 𝛷𝜙𝜑 𝛸𝜒 𝛹𝜓 𝛺𝜔