mersenneforum.org  

Go Back   mersenneforum.org > Prime Search Projects > Sierpinski/Riesel Base 5

Reply
 
Thread Tools
Old 2007-09-26, 21:50   #364
geoff
 
geoff's Avatar
 
Mar 2003
New Zealand

22058 Posts
Default 64-bit Windows executables

I build some 64-bit Windows executables for sr[125]sieve, but have no way to test them. If someone familliar with the 32-bit binaries could test them that would be great. Even just running `sr2sieve -h' to see whether the executable is valid would be helpful :-)

(The 64-bit executables are in the *-windows-x86-64.zip archives).
geoff is offline   Reply With Quote
Old 2007-09-27, 05:51   #365
S485122
 
S485122's Avatar
 
Sep 2006
Brussels, Belgium

32478 Posts
Default

sr2sieve.exe -h has no problems under (over ?) Windows XP 64. If you PM me some input files I could really try the program out for a SHORT time.

Jacob
S485122 is online now   Reply With Quote
Old 2007-09-27, 22:02   #366
geoff
 
geoff's Avatar
 
Mar 2003
New Zealand

13·89 Posts
Default

Quote:
Originally Posted by S485122 View Post
sr2sieve.exe -h has no problems under (over ?) Windows XP 64. If you PM me some input files I could really try the program out for a SHORT time.

Jacob
Thanks Jacob. No-one has reported any problems yet.

This archive contains a very small test sieve and instructions, it can be used with both sr2sieve and sr5sieve:

http://www.geocities.com/g_w_reynold...r5check.tar.gz
geoff is offline   Reply With Quote
Old 2007-09-28, 09:12   #367
S485122
 
S485122's Avatar
 
Sep 2006
Brussels, Belgium

170310 Posts
Default

No problem encountered, I had to increase the priority of the process since it took less than one % of one of the cores processor time.

09/28/07 10:47:05 sr2sieve started: 7 <= n <= 1999999, 100000000 <= p <= 150000000
09/28/07 10:55:27 sr2sieve stopped: at p=150000000 because range is complete.
09/28/07 10:55:27 Found factors for 10533 terms in 32.234 cpu sec. (expected about 10697.12)

Jacob
S485122 is online now   Reply With Quote
Old 2007-09-28, 23:38   #368
geoff
 
geoff's Avatar
 
Mar 2003
New Zealand

100100001012 Posts
Default

There is one difference between the 64-bit Linux and Windows builds: Windows uses 32-bit bitmap code, and so the cache file sr2cache.bin created by the Windows executable is incompatible with the one created by the Linux executable on 64-bit systems.

If you try to use the same cache file in Windows and Linux then sr[125]sieve will complain about it being the wrong width. The solution is just to delete it and create a new one.

I don't think this will have much effect on performance. It is a consequence of the `uint_fast32_t' type only being 32-bits wide on 64-bit Windows, but 64-bits wide on Linux.
geoff is offline   Reply With Quote
Old 2007-09-29, 07:56   #369
Cruelty
 
Cruelty's Avatar
 
May 2005

65816 Posts
Default

Geoff, I have a question about srfile utility.
I have sieved a large number of "k" (50000) using srsieve and received a result file in srsieve format (~33M candidates). Right now I'm trying to convert it to PRP format, however it already lasts 12 hours. There was no such problem with converting to ABCD format which takes less than 5 minutes on the same machine. I have tried it on both win32 and linux64 latest versions of srfile.
Cruelty is offline   Reply With Quote
Old 2007-10-01, 00:50   #370
geoff
 
geoff's Avatar
 
Mar 2003
New Zealand

13·89 Posts
Default

Quote:
Originally Posted by Cruelty View Post
Geoff, I have a question about srfile utility.
I have sieved a large number of "k" (50000) using srsieve and received a result file in srsieve format (~33M candidates). Right now I'm trying to convert it to PRP format, however it already lasts 12 hours. There was no such problem with converting to ABCD format which takes less than 5 minutes on the same machine. I have tried it on both win32 and linux64 latest versions of srfile.
The PRP format is sorted, but the sort routine is not efficient :-(

You could try converting into NewPGen format (i.e. 50,000 individual *.npg files!) and then from the Linux shell run:

$ cat t16*.npg | grep -v ":" | sort -k2,2 > plus.txt
$ cat t17*.npg | grep -v ":" | sort -k2,2 > minus.txt

Then edit plus.txt and minus.txt to add an appropriate header taken from one of the t16*.npg and t17*.npg files respectively. (This is from memory, try `man sort' if not sure).
geoff is offline   Reply With Quote
Old 2007-10-02, 00:59   #371
geoff
 
geoff's Avatar
 
Mar 2003
New Zealand

13·89 Posts
Default sr2sieve 1.6.4

New command line switches available in all builds:
-e --elapsed-time Use elapsed instead of CPU time for status line reports.
-f --factors FILE Append found factors to FILE instead of factors.txt.
-D --duplicates FILE Append duplicate factors to FILE.
-S --save TIME Write checkpoint every TIME seconds. (default 300).

The sr2sieve-amd and sr2sieve-intel executables have been merged, there is now one 32-bit sr2sieve executable with three seperate critical code paths:
Intel code path: Optimised for Pentium 2 or Pentium 3
AMD code path: Optimised for Athlon/Duron.
SSE2 code path: Optimised for Pentium 4.

The correct code path should be selected automatically but can be overridden with command-line switches:
`sr2sieve --amd' is equivalent to running the old sr2sieve-amd executable,
`sr2sieve --intel' is equivalent to running the sr2sieve-intel executable.

Both --amd and --intel will use the SSE2 code path if the hardware supports it, unless the --no-sse2 switch is also used. The `-v --verbose' switch will report which code path was selected.

The AMD code path requires the CMOV instruction set, so the Intel code path will be selected for early AMD chips (K6 and earlier). There is not a big difference between the AMD and Intel code paths yet, they were just compiled with different CFLAGS.
geoff is offline   Reply With Quote
Old 2007-10-02, 15:00   #372
Cruelty
 
Cruelty's Avatar
 
May 2005

23×7×29 Posts
Default

Quote:
Originally Posted by geoff View Post
The PRP format is sorted, but the sort routine is not efficient :-(
It took me ~20 hours but I've managed it
Cruelty is offline   Reply With Quote
Old 2007-10-04, 03:47   #373
geoff
 
geoff's Avatar
 
Mar 2003
New Zealand

13×89 Posts
Default sr2sieve 1.6.5

This version has some minor changes to the x86-64 assembly that might make it a little faster on Windows. Previous versions had to translate from the Win64 calling convention into the Linux convention for some functions.

The changes in version 1.6.4 seem to benefit the Athlon 64, but as usual what is fast on one machine is slow on everything else, so the Core 2 may have lost some ground. If that happened you could try using the -Bgen/8 command line switch to see if that gets the speed back on the Core 2. I may have to split the 64-bit code into AMD and Intel specific paths in future versions.

Last fiddled with by geoff on 2007-10-04 at 03:48
geoff is offline   Reply With Quote
Old 2007-10-04, 22:28   #374
geoff
 
geoff's Avatar
 
Mar 2003
New Zealand

13×89 Posts
Default sr2sieve 1.6.6

The 64-bit Windows build now uses the correct hashtable optimisations, and so should hopefully run close to the speed of the Linux build. I have also added this fix to version 1.5.21.

The gen/6 mulmod method added in version 1.6.4 caused a slowdown on Core 2, so now it will only be considered for use when running on AMD. It can still be selected manually with the -B and -G switches, e.g. -Bgen/6.
geoff is offline   Reply With Quote
Reply



Similar Threads
Thread Thread Starter Forum Replies Last Post
Very Prime Riesel and Sierpinski k robert44444uk Open Projects 587 2016-11-13 15:26
Sierpinski/ Riesel bases 6 to 18 robert44444uk Conjectures 'R Us 139 2007-12-17 05:17
Sierpinski/Riesel Base 10 rogue Conjectures 'R Us 11 2007-12-17 05:08
Sierpinski / Riesel - Base 23 michaf Conjectures 'R Us 2 2007-12-17 05:04
Sierpinski / Riesel - Base 22 michaf Conjectures 'R Us 49 2007-12-17 05:03

All times are UTC. The time now is 12:12.


Mon Aug 2 12:12:05 UTC 2021 up 10 days, 6:41, 0 users, load averages: 1.53, 1.54, 1.48

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