mersenneforum.org

mersenneforum.org (https://www.mersenneforum.org/index.php)
-   Software (https://www.mersenneforum.org/forumdisplay.php?f=10)
-   -   mtsieve (https://www.mersenneforum.org/showthread.php?t=23042)

pepi37 2018-02-17 18:30

And I will public say: sorry for "bug " they are not bugs, more like my bad reading of tutorial!
It is really fast app!

rogue 2018-02-17 19:04

[QUOTE=pepi37;480313]And I will public say: sorry for "bug " they are not bugs, more like my bad reading of tutorial!
It is really fast app![/QUOTE]

Thanks.

There is a bug with fbncsieve and the -1 form. I know the cause. I'll let you know when an updated version has been posted.

BotXXX 2018-02-20 16:29

Mark, thank you for the continued efforts and time on your sieving programs! This is very much appreciated!

On my Windows 2012 R2 system with an Intel Xeon E5-2620 cksieve crashes, directly after starting. Which I think still matches your comment from the start post that there were issues with the cksieve.

By running (as example):
cksieve -b 2 -p 2 -P 1000000 -n 100 -N 10000 -o ck_remain.out -O ck_factors.out
cksyeve v1.2, a program to find factors of (b^n+/-1)^2-2 numbers
Sieve started: 2 < p < 1000000 with 19802 terms

Windows eventlog shows:
Faulting application name: cksieve.exe, version: 0.0.0.0, time stamp: 0x5a7f7e2c
Faulting module name: ntdll.dll, version: 6.3.9600.18821, time stamp: 0x59ba86db
Exception code: 0xc0000374
Fault offset: 0x00000000000f1c10
Faulting process id: 0x190c
Faulting application start time: 0x01d3aa65f8e8626d
Faulting application path: C:\mtsieve\cksieve.exe
Faulting module path: C:\WINDOWS\SYSTEM32\ntdll.dll
Faulting package full name:
Faulting package-relative application ID:

Also beside the o/O cosmetic points in the help section, with cksieve.exe -h there is a small typo:
cks[b]y[/b]eve v1.2, a program to find factors of (b^n+/-1)^2-2 numbers
-h --help prints this help[b])[/b]

rogue 2018-02-20 17:45

Thanks for your feedback. I'll fix that cosmetic issue.

I have not had the time to fix cksieve, but the gfndsieve performance issue has been resolved. I was trying to add a performance enhancement to fbncsieve, but it crashes on Windows and I haven't figured out why yet. That same change works in OS X, so it is either a compiler bug in mingw64 or something in the asm code.

I'm hoping to post updated code this weekend.

rogue 2018-02-22 00:01

Good news. I found and fixed the bug with cksieve (stupid x86 asm). Here is a complete list of changes:

[code]
Add an internal flag that guarantee that suspends all but one Worker when
processing the first chunk of primes. This is used to improve performance
when there is a high factor density for low primes. This will also suppress
any on screen reporting or checkpointing until that chunk is processed.

Fix issue in computing CPU utilization.
Changed -c (chunksize) option to -w (worksize).
Change output to use shorter notation for min and max primes.

cksieve - Fixed.
gfndsieve - Enable the flag mentioned above.
fbncsieve - Enable the flag mentioned above.
fkbnsieve - Added, but not tested.
[/code]

Visit my page to get the link to d/l the latest source and Windows builds.

pepi37 2018-02-22 00:06

fbncsieve -p50000000000000 -P 100000000000000 -i 500.npg -fN -W4 -O fact.txt
fbncsieve v1.3.1, a program to find factors of k*b^n+c numbers for fixed b, n, and c and variable k
Sieve started: 5e13 < p < 1e14 with 159895 terms
p=50055611474419, 28.92M p/sec, [B]4 factors found at 15298 sec per factor[/B], 0.1% done. ETA 2018-02-22 16:51

Since program run[B] only 147 seconds[/B] I assume there will be 15.298 sec per factor not 15298 per factor , but this is cosmetic bug.
+/- side works perfectly
THANKS!

wombatman 2018-02-22 02:24

[QUOTE=rogue;480599]Good news. I found and fixed the bug with cksieve (stupid x86 asm). Here is a complete list of changes:

[code]
Add an internal flag that guarantee that suspends all but one Worker when
processing the first chunk of primes. This is used to improve performance
when there is a high factor density for low primes. This will also suppress
any on screen reporting or checkpointing until that chunk is processed.

Fix issue in computing CPU utilization.
Changed -c (chunksize) option to -w (worksize).
Change output to use shorter notation for min and max primes.

cksieve - Fixed.
gfndsieve - Enable the flag mentioned above.
fbncsieve - Enable the flag mentioned above.
fkbnsieve - Added, but not tested.
[/code]

Visit my page to get the link to d/l the latest source and Windows builds.[/QUOTE]

To be clear, does this mean the multithreaded version of gfndsieve is considered fully functional? Side question, can gfndsieve take a sieved file as input or no? I look at the options and the readme and didn't see any such option, but I wanted to be sure. Thanks again for doing this. :smile:

pepi37 2018-02-22 09:33

I still have problem if header of newpgen file is like this 29491439734612:M:0:2:16386
Then got message it is invalid header.

Even on base 2 this program is faster then Newpgen. I can say it has [B]constant rate for every base [/B]( not just for base2 like Newpgen have)
Little test
I made sample file for base 500
Start point was 10000000000000
Newpgen done until 10016239604068 in 337 seconds and found 7 factors
In same time ( number of worker 1) FBCNsieve found 50 factors and reach 10100000000000.
In any way his program will give boost for searching type of variable K.
Can you improve sr1sieve in similar way ( add MT option)?

rogue 2018-02-22 14:32

[QUOTE=pepi37;480601]fbncsieve -p50000000000000 -P 100000000000000 -i 500.npg -fN -W4 -O fact.txt
fbncsieve v1.3.1, a program to find factors of k*b^n+c numbers for fixed b, n, and c and variable k
Sieve started: 5e13 < p < 1e14 with 159895 terms
p=50055611474419, 28.92M p/sec, [B]4 factors found at 15298 sec per factor[/B], 0.1% done. ETA 2018-02-22 16:51

Since program run[B] only 147 seconds[/B] I assume there will be 15.298 sec per factor not 15298 per factor , but this is cosmetic bug.
+/- side works perfectly[/QUOTE]

I will look into this. Note that if you start from an input file that it will get the starting prime from that file. Using -p will override what it reads from that file.

rogue 2018-02-22 14:43

[QUOTE=wombatman;480603]To be clear, does this mean the multithreaded version of gfndsieve is considered fully functional? Side question, can gfndsieve take a sieved file as input or no? I look at the options and the readme and didn't see any such option, but I wanted to be sure. Thanks again for doing this. :smile:[/QUOTE]

gfndsieve is fully functional. The only files that gfndsieve can take as input files are files that were created by gfndsieve. Use the -i option to specify the input file instead of using the -k/-K/-n/-N options. With some manipulation it could read files created with the -abcd1 switch of fermfact.

rogue 2018-02-22 14:45

[QUOTE=pepi37;480618]I still have problem if header of newpgen file is like this 29491439734612:M:0:2:16386
Then got message it is invalid header.

Even on base 2 this program is faster then Newpgen. I can say it has [B]constant rate for every base [/B]( not just for base2 like Newpgen have)
Little test
I made sample file for base 500
Start point was 10000000000000
Newpgen done until 10016239604068 in 337 seconds and found 7 factors
In same time ( number of worker 1) FBCNsieve found 50 factors and reach 10100000000000.
In any way his program will give boost for searching type of variable K.
Can you improve sr1sieve in similar way ( add MT option)?[/QUOTE]

How was the newpgen file created? Was it created by newpgen or fbnciseve? Is there a reason that you choose that format over the ABC or ABCD format?

Getting sr1sieve into mtsieve is one of my goals, but it is behind the GPU options.


All times are UTC. The time now is 06:18.

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