mersenneforum.org  

Go Back   mersenneforum.org > Factoring Projects > Operation Billion Digits

Reply
 
Thread Tools
Old 2017-07-19, 10:11   #1
ET_
Banned
 
ET_'s Avatar
 
"Luigi"
Aug 2002
Team Italia

4,751 Posts
Default Factor5 revamping

Hi all.

I decided to put my Mersenne factorization program (factor5) back online here.

I would like to add the nice feature of RES64 on the final result: would anybody help me teach how to achieve it?

Luigi

Last fiddled with by ET_ on 2017-07-19 at 10:11
ET_ is offline   Reply With Quote
Old 2017-07-30, 22:31   #2
Stargate38
 
Stargate38's Avatar
 
"Daniel Jackson"
May 2011
14285714285714285714

11228 Posts
Default

Any chance you could upload a Windows version? Not all OBD participants use Linux/Ubuntu.
Stargate38 is offline   Reply With Quote
Old 2017-07-30, 23:15   #3
rogue
 
rogue's Avatar
 
"Mark"
Apr 2003
Between here and the

15F116 Posts
Default

Quote:
Originally Posted by Stargate38 View Post
Any chance you could upload a Windows version? Not all OBD participants use Linux/Ubuntu.
It could theoretically be built using cygwin or minnow, but not Visual Studio, as it relies on pthreads.
rogue is offline   Reply With Quote
Old 2017-07-31, 00:37   #4
wombatman
I moo ablest echo power!
 
wombatman's Avatar
 
May 2013

23×7×31 Posts
Default

Quote:
Originally Posted by rogue View Post
It could theoretically be built using cygwin or minnow, but not Visual Studio, as it relies on pthreads.
What are the linux compilation instructions? I'll see if the Ubuntu shell can build it, which would be viable for all Windows 10 users.
wombatman is offline   Reply With Quote
Old 2017-07-31, 08:02   #5
ET_
Banned
 
ET_'s Avatar
 
"Luigi"
Aug 2002
Team Italia

475110 Posts
Default

Quote:
Originally Posted by wombatman View Post
What are the linux compilation instructions? I'll see if the Ubuntu shell can build it, which would be viable for all Windows 10 users.
I use
Code:
gcc factor5.c -lm -lgmp -lpthread -O3 -ofactor5
Cosider that OBD is stalling as the ranges have been "completed" by GPUs (by far faster than any CPU program) and the lone Mersenne hunters did the rest
Anyway I will put the program back online (probably on DoubleMersennes website) once you provide the Windows10 version, thank you!

Last fiddled with by ET_ on 2017-07-31 at 08:05
ET_ is offline   Reply With Quote
Old 2017-07-31, 12:40   #6
wombatman
I moo ablest echo power!
 
wombatman's Avatar
 
May 2013

23×7×31 Posts
Default

Unfortunately, it looks like there is an issue related to the size_t definition? Error log is attached.

GCC version is 4.8.4.
Attached Files
File Type: log error.log (67.4 KB, 465 views)
wombatman is offline   Reply With Quote
Old 2017-07-31, 13:04   #7
rogue
 
rogue's Avatar
 
"Mark"
Apr 2003
Between here and the

41·137 Posts
Default

Change the line to this:

if (strcmp(argv[1], "--resume") != 0) {

Apparently your compiler doesn't like using "!" for an integer value.
rogue is offline   Reply With Quote
Old 2017-08-01, 02:16   #8
wombatman
I moo ablest echo power!
 
wombatman's Avatar
 
May 2013

23×7×31 Posts
Default

Still throwing size_t related errors (new error log is attached). Most likely culprit would seem to be this line:
Code:
In file included from /usr/include/stdio.h:33:0,
                 from factor5.c:21:
/usr/lib/gcc/x86_64-linux-gnu/4.8/include/stddef.h:212:1: error: expected identifier or ‘(’ before ‘typedef’
 typedef __SIZE_TYPE__ size_t;
Any thoughts?
Attached Files
File Type: log error2.log (67.6 KB, 104 views)

Last fiddled with by wombatman on 2017-08-01 at 02:17 Reason: Might help if I actually attached the log...
wombatman is offline   Reply With Quote
Old 2017-08-01, 06:30   #9
ET_
Banned
 
ET_'s Avatar
 
"Luigi"
Aug 2002
Team Italia

112178 Posts
Default

Quote:
Originally Posted by wombatman View Post
Still throwing size_t related errors (new error log is attached). Most likely culprit would seem to be this line:
Code:
In file included from /usr/include/stdio.h:33:0,
                 from factor5.c:21:
/usr/lib/gcc/x86_64-linux-gnu/4.8/include/stddef.h:212:1: error: expected identifier or ‘(’ before ‘typedef’
 typedef __SIZE_TYPE__ size_t;
Any thoughts?
Yep.
Try adding the flag -std=c99 on the compile line
ET_ is offline   Reply With Quote
Old 2017-08-01, 12:10   #10
monst
 
monst's Avatar
 
Mar 2007

179 Posts
Default

I see the array... unsigned long int mexp[]
could have a few members added.
monst is offline   Reply With Quote
Old 2017-08-01, 18:19   #11
ET_
Banned
 
ET_'s Avatar
 
"Luigi"
Aug 2002
Team Italia

128F16 Posts
Default

The array has been corrected in today's version 5.02

The problem is that when I tried to recompile the code, I had the same list of errors Ben had. The compilation for code v5.01 was successful less than 1 month ago, on both Intel and ARM platforms.

Something weird is happening under the hood...

I did not restart the PC after a series of updates, maybe some library needs a reboot?

Here is version 5.02 with the version update, the strcmp update and the array update.
Attached Files
File Type: zip factor5.zip (16.0 KB, 56 views)

Last fiddled with by ET_ on 2017-08-01 at 18:23
ET_ is offline   Reply With Quote
Reply

Thread Tools


Similar Threads
Thread Thread Starter Forum Replies Last Post
Factor5 on Multicore Machines Rodrigo Operation Billion Digits 4 2011-01-02 04:50
Factor5 ! ET_ Operation Billion Digits 60 2009-08-26 08:02
Factor5 source code thread ET_ Operation Billion Digits 10 2008-09-17 12:28

All times are UTC. The time now is 05:27.

Wed Apr 1 05:27:40 UTC 2020 up 7 days, 3 hrs, 0 users, load averages: 1.22, 1.26, 1.28

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2020, 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.