mersenneforum.org  

Go Back   mersenneforum.org > Factoring Projects > YAFU

Reply
 
Thread Tools
Old 2011-01-19, 19:07   #540
bsquared
 
bsquared's Avatar
 
"Ben"
Feb 2007

336110 Posts
Default New SIQS speedup

I just committed changes to SVN which make siqs about 10% faster for 64 bit linux. This was done through the use of assembly routines in the bucket sieving portion of SIQS.

I haven't been able to test on an AMD system. If anyone successfully builds/tests on a phenom/athlon/opteron system, I'd be interested to hear about it. Remember to use BLOCK=64 when running make.

enjoy,
- ben.
bsquared is offline   Reply With Quote
Old 2011-01-19, 22:03   #541
rekcahx
 
Oct 2009
Oulu, Finland

2·3·5 Posts
Default

Quote:
Originally Posted by bsquared View Post
I just committed changes to SVN which make siqs about 10% faster for 64 bit linux. This was done through the use of assembly routines in the bucket sieving portion of SIQS.

I haven't been able to test on an AMD system. If anyone successfully builds/tests on a phenom/athlon/opteron system, I'd be interested to hear about it. Remember to use BLOCK=64 when running make.
I've a phenom 9950 x4 system, so how to test? Currently I run quite large job with 2 cores, so I'm able run tests only on 2 remaining cores.
rekcahx is offline   Reply With Quote
Old 2011-01-19, 22:19   #542
bsquared
 
bsquared's Avatar
 
"Ben"
Feb 2007

3,361 Posts
Default

Quote:
Originally Posted by rekcahx View Post
I've a phenom 9950 x4 system, so how to test? Currently I run quite large job with 2 cores, so I'm able run tests only on 2 remaining cores.
I've put new linux binaries on my webpage. You can try these (use the 64k version, as usual), but linux being how it is, it might not work due to some library incompatibility or another.

The alternative is to obtain and build each of gmp, gmp-ecm, msieve, and yafu from their repositories, in that order. This, needless to say, is a much less straightforward approach. I became comfortable with doing that chore only after several years of sporadic hair pulling. Perfectly fine if you don't want to go down that road, but it would also be interesting to hear how easy (or not) that approach is for someone new to the process.

In any case, thanks for your interest!
bsquared is offline   Reply With Quote
Old 2011-01-19, 22:24   #543
bsquared
 
bsquared's Avatar
 
"Ben"
Feb 2007

1101001000012 Posts
Default

Quote:
Originally Posted by bsquared View Post
I just committed changes to SVN which make siqs about 10% faster for 64 bit linux....
I wasn't sure if it would make a noticeable impact, but I found this raised the SIQS/GNFS crossover by about 1 digit, after running "tune" again (from 95 to 96 digits on my system).

Last fiddled with by bsquared on 2011-01-19 at 22:31 Reason: caveat: crossover point is system dependent...
bsquared is offline   Reply With Quote
Old 2011-01-20, 00:15   #544
CRGreathouse
 
CRGreathouse's Avatar
 
Aug 2006

10111010010012 Posts
Default

Code:
~$ ./yafu-64k-linux64
./yafu-64k-linux64: error while loading shared libraries: libgmp.so.10: cannot open shared object file: No such file or directory
~$ locate libgmp.so.
/home/username/lib/libgmp.so.3
/home/username/lib/libgmp.so.3.5.2
/home/username/mth/gmp-4.3.1/.libs/libgmp.so.3
/home/username/mth/gmp-4.3.1/.libs/libgmp.so.3.5.0
/home/username/mth/gmp-5.0.0/.libs/libgmp.so.3
/home/username/mth/gmp-5.0.0/.libs/libgmp.so.3.6.0
/home/username/mth/gmp-5.0.0/tests/cxx/.libs/libgmp.so.3
/home/username/mth/gmp-5.0.0/tests/cxx/.libs/libgmp.so.3.6.0
/usr/lib/libgmp.so.3
/usr/lib/libgmp.so.3.5.2
/usr/local/lib/libgmp.so.3
/usr/local/lib/libgmp.so.3.6.0
CRGreathouse is offline   Reply With Quote
Old 2011-01-20, 01:10   #545
bsquared
 
bsquared's Avatar
 
"Ben"
Feb 2007

1101001000012 Posts
Default

Quote:
Originally Posted by CRGreathouse View Post
Code:
~$ ./yafu-64k-linux64
./yafu-64k-linux64: error while loading shared libraries: libgmp.so.10: cannot open shared object file: No such file or directory
~$ locate libgmp.so.
/home/username/lib/libgmp.so.3
/home/username/lib/libgmp.so.3.5.2
/home/username/mth/gmp-4.3.1/.libs/libgmp.so.3
/home/username/mth/gmp-4.3.1/.libs/libgmp.so.3.5.0
/home/username/mth/gmp-5.0.0/.libs/libgmp.so.3
/home/username/mth/gmp-5.0.0/.libs/libgmp.so.3.6.0
/home/username/mth/gmp-5.0.0/tests/cxx/.libs/libgmp.so.3
/home/username/mth/gmp-5.0.0/tests/cxx/.libs/libgmp.so.3.6.0
/usr/lib/libgmp.so.3
/usr/lib/libgmp.so.3.5.2
/usr/local/lib/libgmp.so.3
/usr/local/lib/libgmp.so.3.6.0
Quote:
Originally Posted by bsquared View Post
... linux being how it is, it might not work due to some library incompatibility or another.


On a more helpful note, libgmp.so.10 is what I get when I build gmp-5.0.1. Maybe you could get away with renaming a copy of your 5.0.0 library to what is expected?

I use a pretty old build environment, so there might be other problems as well.

Last fiddled with by bsquared on 2011-01-20 at 01:13
bsquared is offline   Reply With Quote
Old 2011-01-22, 04:09   #546
bsquared
 
bsquared's Avatar
 
"Ben"
Feb 2007

D2116 Posts
Default yafu-1.23 available

I found a AMD box I could test on and everything seemed to work fine. I also ported a subset of the new gcc ASM code talked about in the last few posts to Windows, so SIQS now has a speedup across the board. Bigger numbers should benefit more - I've seen up to 10% improvements.

Other changes include:

Code:
+ added a -plan switch for greater selectivity in pretesting plans using factor().  
    You can now select -plan <light|normal|deep|none> and the pretesting 
    will proceed differently in each case (hopefully fairly self-descriptive)
+ added several new output option switches, -ou, -of, -op.  
    for details see the docfile
+ changed logfile output of found ECM factors to record the B1 value used
+ added a -pretest switch to tell factor() to only pretest (skip sieve methods)
+ fixed a bug in the extract factors function in nfs.c; 
    factors found in the sqrt step were not reported correctly (thanks Andi_HB)
A big thanks, as usual, to reporters of bugs. And also to wraithx, who is braving the yafu code labyrinth and adding some neat options - much appreciated.

Cheers,
- ben.

link

Last fiddled with by bsquared on 2011-01-22 at 04:26 Reason: a few details
bsquared is offline   Reply With Quote
Old 2011-02-06, 15:35   #547
lorgix
 
lorgix's Avatar
 
Sep 2010
Scandinavia

11478 Posts
Default

I'm not sure I'm using the right GGNFS.

Code:
02/06/11 16:32:16 v1.23 @ PERIMETROS, nfs: commencing gnfs on c99: 'the actual number here'
02/06/11 16:32:16 v1.23 @ PERIMETROS, nfs: commencing msieve poly select
And then it fails.
lorgix is offline   Reply With Quote
Old 2011-02-08, 16:13   #548
lorgix
 
lorgix's Avatar
 
Sep 2010
Scandinavia

3·5·41 Posts
Default

It's working now. I don't know what changed...
lorgix is offline   Reply With Quote
Old 2011-02-08, 18:02   #549
bsquared
 
bsquared's Avatar
 
"Ben"
Feb 2007

3,361 Posts
Default

Great! That was easy... *dusts hands*

bsquared is offline   Reply With Quote
Old 2011-02-08, 18:06   #550
bsquared
 
bsquared's Avatar
 
"Ben"
Feb 2007

D2116 Posts
Default

In all seriousness though, as I mentioned over IM - if you continue to see intermittent failures like this I'd start to look into hardware failures of any of cpu|memory|disk. msieve has been known to discover hardware faults (or reveal instability) that other stress tests do not.

Last fiddled with by bsquared on 2011-02-08 at 18:08
bsquared is offline   Reply With Quote
Reply

Thread Tools


Similar Threads
Thread Thread Starter Forum Replies Last Post
Running YAFU via Aliqueit doesn't find yafu.ini EdH YAFU 8 2018-03-14 17:22
YAFU-1.34 bsquared YAFU 119 2015-11-05 16:24
Yafu bug. storflyt32 YAFU 2 2015-06-29 05:19
yafu-1.33 bsquared YAFU 12 2012-11-08 04:12
yafu-1.32.1 bsquared YAFU 21 2012-09-04 19:44

All times are UTC. The time now is 01:21.

Wed Jan 20 01:21:30 UTC 2021 up 47 days, 21:32, 0 users, load averages: 1.82, 1.90, 1.90

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.