mersenneforum.org  

Go Back   mersenneforum.org > Factoring Projects > YAFU

Reply
 
Thread Tools
Old 2011-07-05, 12:33   #749
bsquared
 
bsquared's Avatar
 
"Ben"
Feb 2007

352210 Posts
Default

Quote:
Originally Posted by 10metreh View Post
It's probably not a major issue, but what causes this?
Code:
elapsed time of 378.0667 seconds exceeds 409 second deadline; poly select done
That's a feature .

I compute a running average of the time it takes a range of leading coefficients to finish and if the current time + the time estimate for new range is greater than the deadline, no new threads are started. When all of the threads that are still running finish, poly select is done. Because of the uncertainty in the length of time it takes to finish any one range, you'll sometimes run into this situation.

I suppose I should do something about the wording of the message though.
bsquared is offline   Reply With Quote
Old 2011-07-05, 13:51   #750
bsquared
 
bsquared's Avatar
 
"Ben"
Feb 2007

2·3·587 Posts
Default 1.27.1 now available

Just released a bugfix version. Factoring small (< 120 bits) integers with qs routines should now be more robust, and faster too.
bsquared is offline   Reply With Quote
Old 2011-07-07, 23:59   #751
jrk
 
jrk's Avatar
 
May 2008

3·5·73 Posts
Default

Quote:
Originally Posted by bsquared View Post
I've wondered that myself - I'm guessing that eventually jrk/jason will disable all of the output. Presumably when the (still relatively new) uber fast poly select code gains enough maturity. Maybe if one of them is reading this thread they could comment.
I was thinking about this.

How about replacing all the poly selection output with a summary line that updates periodically? Something like:

"coef #### yld1 #### yld2 #### E ######"

that tells the current leading coefficient being searched, the count of polynomials passed in stage1 sieve, the count of polynomials saved in stage2 root sieve, and the maximum E score found so far. What else might be put here?

A define could then be used to turn on the full output if it is needed. Error messages (like the old "crap" lines if it happens again) would still always be printed regardless.

I think this would be OK, since the user probably doesn't care about the details scrolling off the terminal. The new output would convey more useful information in less space.
jrk is offline   Reply With Quote
Old 2011-07-08, 14:38   #752
bsquared
 
bsquared's Avatar
 
"Ben"
Feb 2007

2×3×587 Posts
Default

Quote:
Originally Posted by jrk View Post
I was thinking about this.

How about replacing all the poly selection output with a summary line that updates periodically? Something like:

"coef #### yld1 #### yld2 #### E ######"

that tells the current leading coefficient being searched, the count of polynomials passed in stage1 sieve, the count of polynomials saved in stage2 root sieve, and the maximum E score found so far. What else might be put here?

A define could then be used to turn on the full output if it is needed. Error messages (like the old "crap" lines if it happens again) would still always be printed regardless.

I think this would be OK, since the user probably doesn't care about the details scrolling off the terminal. The new output would convey more useful information in less space.
I think this would be great! Instead of a #define to turn on the full output, maybe you could tie it to msieve's verbose flag? That way the user can control it.
bsquared is offline   Reply With Quote
Old 2011-07-08, 17:23   #753
jrk
 
jrk's Avatar
 
May 2008

3×5×73 Posts
Default

Quote:
Originally Posted by bsquared View Post
I think this would be great! Instead of a #define to turn on the full output, maybe you could tie it to msieve's verbose flag? That way the user can control it.
We would have to change the semantics of -v for that to work.
Code:
   -v        verbose: write log information to screen
             as well as to logfile
The way this is used is that when info is written to the logfile, it is written to stdout as well. The info we're talking about now isn't written to the logfile (and I'm not sure that it should be). It would still be nice to be able to control the normal log output with -v like this, independently of the changes we're talking about.
jrk is offline   Reply With Quote
Old 2011-07-08, 17:29   #754
bsquared
 
bsquared's Avatar
 
"Ben"
Feb 2007

2·3·587 Posts
Default

Quote:
Originally Posted by jrk View Post
We would have to change the semantics of -v for that to work.
Code:
   -v        verbose: write log information to screen
             as well as to logfile
The way this is used is that when info is written to the logfile, it is written to stdout as well. The info we're talking about now isn't written to the logfile (and I'm not sure that it should be). It would still be nice to be able to control the normal log output with -v like this, independently of the changes we're talking about.
Ahh, I'd forgotten how the -v flag worked. In that case a #define would work better - I don't think all of the output should be written to the log file either.
bsquared is offline   Reply With Quote
Old 2011-07-20, 08:06   #755
smh
 
smh's Avatar
 
"Sander"
Oct 2002
52.345322,5.52471

29×41 Posts
Default

Just found the following in my logs:
Code:
07/19/11 14:35:09 v1.27.1 @ WBNL77727, ****************************
07/19/11 14:35:09 v1.27.1 @ WBNL77727, Starting factorization of 9999999999999999999999999999999999999999999999999999999999997103077
07/19/11 14:35:09 v1.27.1 @ WBNL77727, ****************************
07/19/11 14:35:09 v1.27.1 @ WBNL77727, rho: x^2 + 1, starting 1000 iterations on C67
07/19/11 14:35:09 v1.27.1 @ WBNL77727, rho: x^2 + 3, starting 1000 iterations on C67
07/19/11 14:35:09 v1.27.1 @ WBNL77727, rho: x^2 + 2, starting 1000 iterations on C67
07/19/11 14:35:09 v1.27.1 @ WBNL77727, pp1: starting B1 = 20K, B2 = gmp-ecm default on C67
07/19/11 14:35:09 v1.27.1 @ WBNL77727, pp1: starting B1 = 20K, B2 = gmp-ecm default on C67
07/19/11 14:35:09 v1.27.1 @ WBNL77727, pp1: starting B1 = 20K, B2 = gmp-ecm default on C67
07/19/11 14:35:09 v1.27.1 @ WBNL77727, pm1: starting B1 = 100K, B2 = gmp-ecm default on C67
07/19/11 14:35:10 v1.27.1 @ WBNL77727, Finished 25 curves using Lenstra ECM method on C67 input, B1 = 2K, B2 = gmp-ecm default
07/19/11 14:35:12 v1.27.1 @ WBNL77727, Finished 41 curves using Lenstra ECM method on C67 input, B1 = 11K, B2 = gmp-ecm default
07/19/11 14:35:13 v1.27.1 @ WBNL77727, Finished 1 curves using Lenstra ECM method on C67 input, B1 = 50K, B2 = gmp-ecm default
07/19/11 14:35:13 v1.27.1 @ WBNL77727, pp1: starting B1 = 200K, B2 = gmp-ecm default on C67
07/19/11 14:35:13 v1.27.1 @ WBNL77727, pm1: starting B1 = 1M, B2 = gmp-ecm default on C67
07/19/11 14:35:14 v1.27.1 @ WBNL77727, starting SIQS on c67: 9999999999999999999999999999999999999999999999999999999999997103077
07/19/11 14:35:14 v1.27.1 @ WBNL77727, random seeds: 683960085, 2377783233
07/19/11 12:02:33 v1.27.1 @ WBNL77727, prp59 = 23165088208752581566655795831289023951031004990318278791137
07/19/11 12:03:37 v1.27.1 @ WBNL77727, prp58 = 3508421650238026779349517035219034270291799424742556308351
07/19/11 12:03:40 v1.27.1 @ WBNL77727, prp54 = 751895930584037299073856050887263624460387537616035139
07/19/11 13:30:45 v1.27.1 @ WBNL77727, prp53 = 34525212211547753492584142331204496867644189007324739
07/19/11 13:34:56 v1.27.1 @ WBNL77727, prp59 = 40305288213825648133922993788459331204437567090419404374819
07/19/11 13:42:06 v1.27.1 @ WBNL77727, prp57 = 952557273544597436402861077060477550477908133635074151529
07/19/11 13:42:32 v1.27.1 @ WBNL77727, prp58 = 3042671024239739026235973414750771699188058642748379038843
07/19/11 13:43:16 v1.27.1 @ WBNL77727, prp57 = 489530734629133129183035446268292697783490075586106162011
07/19/11 13:44:49 v1.27.1 @ WBNL77727, prp56 = 77944039958520092810159229685028591825302741591531070047
07/19/11 13:44:50 v1.27.1 @ WBNL77727, prp53 = 67346969665281728690602370558301663410894296361413217
07/19/11 13:44:58 v1.27.1 @ WBNL77727, prp58 = 1134275697621150762528730606508157875684263965518369964073
07/19/11 13:49:34 v1.27.1 @ WBNL77727, prp57 = 130136586428808915599526552932301861346496435765417970757
07/19/11 13:52:15 v1.27.1 @ WBNL77727, prp56 = 94758207469411566864535263002726281934068511523331840577
07/19/11 13:54:09 v1.27.1 @ WBNL77727, prp59 = 13254175175521297544941458621103290557210415169555116148133
07/19/11 13:57:03 v1.27.1 @ WBNL77727, prp55 = 1239140010496346016058162489128405999248640693639815323
07/19/11 13:57:31 v1.27.1 @ WBNL77727, prp58 = 8127791358373410734247090902745764044464015696429684689251
07/19/11 13:59:43 v1.27.1 @ WBNL77727, prp54 = 103509585779855677047926232679284829069331584621064081
07/19/11 13:59:52 v1.27.1 @ WBNL77727, prp59 = 36474155575061366581344984559778699042809829468331808646761
07/19/11 14:01:41 v1.27.1 @ WBNL77727, prp57 = 618857278850110439354620312667915415738448848477894471871
07/19/11 14:26:44 v1.27.1 @ WBNL77727, prp57 = 540604705672825623754011267251596197279222699550846997507
07/19/11 14:30:41 v1.27.1 @ WBNL77727, prp56 = 81994368603199150745767344774427357440920535049132263823
07/19/11 14:31:08 v1.27.1 @ WBNL77727, prp59 = 22965686460317968150758855062879854320015684094048463711897
07/19/11 14:33:20 v1.27.1 @ WBNL77727, prp57 = 794777665315828556704397778090597144945578084579263314893
07/19/11 14:34:10 v1.27.1 @ WBNL77727, prp59 = 16581910084914253608107146558995062492518138532748658057937
07/19/11 14:35:14 v1.27.1 @ WBNL77727, ==== sieve params ====
07/19/11 14:35:14 v1.27.1 @ WBNL77727, n = 67 digits, 223 bits
07/19/11 14:35:14 v1.27.1 @ WBNL77727, factor base: 9088 primes (max prime = 201953)
07/19/11 14:35:14 v1.27.1 @ WBNL77727, single large prime cutoff: 13126945 (65 * pmax)
07/19/11 14:35:14 v1.27.1 @ WBNL77727, allocating 3 large prime slices of factor base
07/19/11 14:35:14 v1.27.1 @ WBNL77727, buckets hold 2048 elements
07/19/11 14:35:14 v1.27.1 @ WBNL77727, sieve interval: 6 blocks of size 32768
07/19/11 14:35:14 v1.27.1 @ WBNL77727, polynomial A has ~ 8 factors
07/19/11 14:35:14 v1.27.1 @ WBNL77727, using multiplier of 1
07/19/11 14:35:14 v1.27.1 @ WBNL77727, using SPV correction of 19 bits, starting at offset 28
07/19/11 14:35:14 v1.27.1 @ WBNL77727, using SSE2 for trial division and x64 sieve scanning
07/19/11 14:35:14 v1.27.1 @ WBNL77727, using SSE2 for resieving 13-16 bit primes
07/19/11 14:35:14 v1.27.1 @ WBNL77727, using inline ASM to sieve primes up to 16 bits
07/19/11 14:35:14 v1.27.1 @ WBNL77727, trial factoring cutoff at 78 bits
07/19/11 14:35:14 v1.27.1 @ WBNL77727, ==== sieving started ( 2 threads) ====
after which yafu stopped.

Rerunning this number worked fine.

edit: I found a couple more of these in the logs

Last fiddled with by smh on 2011-07-20 at 08:14
smh is offline   Reply With Quote
Old 2011-07-20, 13:51   #756
bsquared
 
bsquared's Avatar
 
"Ben"
Feb 2007

2·3·587 Posts
Default

Quote:
Originally Posted by smh View Post
Just found the following in my logs:
Code:
07/19/11 14:35:09 v1.27.1 @ WBNL77727, ****************************
07/19/11 14:35:09 v1.27.1 @ WBNL77727, Starting factorization of 9999999999999999999999999999999999999999999999999999999999997103077
07/19/11 14:35:09 v1.27.1 @ WBNL77727, ****************************
07/19/11 14:35:09 v1.27.1 @ WBNL77727, rho: x^2 + 1, starting 1000 iterations on C67
07/19/11 14:35:09 v1.27.1 @ WBNL77727, rho: x^2 + 3, starting 1000 iterations on C67
07/19/11 14:35:09 v1.27.1 @ WBNL77727, rho: x^2 + 2, starting 1000 iterations on C67
07/19/11 14:35:09 v1.27.1 @ WBNL77727, pp1: starting B1 = 20K, B2 = gmp-ecm default on C67
07/19/11 14:35:09 v1.27.1 @ WBNL77727, pp1: starting B1 = 20K, B2 = gmp-ecm default on C67
07/19/11 14:35:09 v1.27.1 @ WBNL77727, pp1: starting B1 = 20K, B2 = gmp-ecm default on C67
07/19/11 14:35:09 v1.27.1 @ WBNL77727, pm1: starting B1 = 100K, B2 = gmp-ecm default on C67
07/19/11 14:35:10 v1.27.1 @ WBNL77727, Finished 25 curves using Lenstra ECM method on C67 input, B1 = 2K, B2 = gmp-ecm default
07/19/11 14:35:12 v1.27.1 @ WBNL77727, Finished 41 curves using Lenstra ECM method on C67 input, B1 = 11K, B2 = gmp-ecm default
07/19/11 14:35:13 v1.27.1 @ WBNL77727, Finished 1 curves using Lenstra ECM method on C67 input, B1 = 50K, B2 = gmp-ecm default
07/19/11 14:35:13 v1.27.1 @ WBNL77727, pp1: starting B1 = 200K, B2 = gmp-ecm default on C67
07/19/11 14:35:13 v1.27.1 @ WBNL77727, pm1: starting B1 = 1M, B2 = gmp-ecm default on C67
07/19/11 14:35:14 v1.27.1 @ WBNL77727, starting SIQS on c67: 9999999999999999999999999999999999999999999999999999999999997103077
07/19/11 14:35:14 v1.27.1 @ WBNL77727, random seeds: 683960085, 2377783233
07/19/11 12:02:33 v1.27.1 @ WBNL77727, prp59 = 23165088208752581566655795831289023951031004990318278791137
07/19/11 12:03:37 v1.27.1 @ WBNL77727, prp58 = 3508421650238026779349517035219034270291799424742556308351
07/19/11 12:03:40 v1.27.1 @ WBNL77727, prp54 = 751895930584037299073856050887263624460387537616035139
07/19/11 13:30:45 v1.27.1 @ WBNL77727, prp53 = 34525212211547753492584142331204496867644189007324739
07/19/11 13:34:56 v1.27.1 @ WBNL77727, prp59 = 40305288213825648133922993788459331204437567090419404374819
07/19/11 13:42:06 v1.27.1 @ WBNL77727, prp57 = 952557273544597436402861077060477550477908133635074151529
07/19/11 13:42:32 v1.27.1 @ WBNL77727, prp58 = 3042671024239739026235973414750771699188058642748379038843
07/19/11 13:43:16 v1.27.1 @ WBNL77727, prp57 = 489530734629133129183035446268292697783490075586106162011
07/19/11 13:44:49 v1.27.1 @ WBNL77727, prp56 = 77944039958520092810159229685028591825302741591531070047
07/19/11 13:44:50 v1.27.1 @ WBNL77727, prp53 = 67346969665281728690602370558301663410894296361413217
07/19/11 13:44:58 v1.27.1 @ WBNL77727, prp58 = 1134275697621150762528730606508157875684263965518369964073
07/19/11 13:49:34 v1.27.1 @ WBNL77727, prp57 = 130136586428808915599526552932301861346496435765417970757
07/19/11 13:52:15 v1.27.1 @ WBNL77727, prp56 = 94758207469411566864535263002726281934068511523331840577
07/19/11 13:54:09 v1.27.1 @ WBNL77727, prp59 = 13254175175521297544941458621103290557210415169555116148133
07/19/11 13:57:03 v1.27.1 @ WBNL77727, prp55 = 1239140010496346016058162489128405999248640693639815323
07/19/11 13:57:31 v1.27.1 @ WBNL77727, prp58 = 8127791358373410734247090902745764044464015696429684689251
07/19/11 13:59:43 v1.27.1 @ WBNL77727, prp54 = 103509585779855677047926232679284829069331584621064081
07/19/11 13:59:52 v1.27.1 @ WBNL77727, prp59 = 36474155575061366581344984559778699042809829468331808646761
07/19/11 14:01:41 v1.27.1 @ WBNL77727, prp57 = 618857278850110439354620312667915415738448848477894471871
07/19/11 14:26:44 v1.27.1 @ WBNL77727, prp57 = 540604705672825623754011267251596197279222699550846997507
07/19/11 14:30:41 v1.27.1 @ WBNL77727, prp56 = 81994368603199150745767344774427357440920535049132263823
07/19/11 14:31:08 v1.27.1 @ WBNL77727, prp59 = 22965686460317968150758855062879854320015684094048463711897
07/19/11 14:33:20 v1.27.1 @ WBNL77727, prp57 = 794777665315828556704397778090597144945578084579263314893
07/19/11 14:34:10 v1.27.1 @ WBNL77727, prp59 = 16581910084914253608107146558995062492518138532748658057937
07/19/11 14:35:14 v1.27.1 @ WBNL77727, ==== sieve params ====
07/19/11 14:35:14 v1.27.1 @ WBNL77727, n = 67 digits, 223 bits
07/19/11 14:35:14 v1.27.1 @ WBNL77727, factor base: 9088 primes (max prime = 201953)
07/19/11 14:35:14 v1.27.1 @ WBNL77727, single large prime cutoff: 13126945 (65 * pmax)
07/19/11 14:35:14 v1.27.1 @ WBNL77727, allocating 3 large prime slices of factor base
07/19/11 14:35:14 v1.27.1 @ WBNL77727, buckets hold 2048 elements
07/19/11 14:35:14 v1.27.1 @ WBNL77727, sieve interval: 6 blocks of size 32768
07/19/11 14:35:14 v1.27.1 @ WBNL77727, polynomial A has ~ 8 factors
07/19/11 14:35:14 v1.27.1 @ WBNL77727, using multiplier of 1
07/19/11 14:35:14 v1.27.1 @ WBNL77727, using SPV correction of 19 bits, starting at offset 28
07/19/11 14:35:14 v1.27.1 @ WBNL77727, using SSE2 for trial division and x64 sieve scanning
07/19/11 14:35:14 v1.27.1 @ WBNL77727, using SSE2 for resieving 13-16 bit primes
07/19/11 14:35:14 v1.27.1 @ WBNL77727, using inline ASM to sieve primes up to 16 bits
07/19/11 14:35:14 v1.27.1 @ WBNL77727, trial factoring cutoff at 78 bits
07/19/11 14:35:14 v1.27.1 @ WBNL77727, ==== sieving started ( 2 threads) ====
after which yafu stopped.

Rerunning this number worked fine.

edit: I found a couple more of these in the logs
That is pretty bizarre. There is no code in between the printing of the random seeds and the sieve parameters that would cause a bunch of random PRPs to be logged. And look at the time stamps! No idea what's going on here. Do you have several processes going at once that might be competing for the log file? Is this Windows or Linux?
bsquared is offline   Reply With Quote
Old 2011-07-21, 04:51   #757
bsquared
 
bsquared's Avatar
 
"Ben"
Feb 2007

2×3×587 Posts
Default version 1.28 available

Highlightes in 1.28:

+ massive reorganization of code base: moving/changing files, re-grouping functions, cleaning up globals, removing obsolete code, etc
+ speedup to siqs: about 3-5% for larger numbers (85+ digits)
+ large speedup to smallmpqs (for inputs < 115 bits). Getting more competitive with franke's all-assembly monster!
+ multi-threaded GMP-ECM for windows, via support for external gmp-ecm binaries

To use the external gmp-ecm binary option, just add a line to the yafu.ini file like so:
ecm_path = ../my_ecm_bin_dir/ecm.exe

To use the built-in gmp-ecm code, just don't specify an ecm_path statement. Note that linux can already run multi-threaded ecm using the built-in code, but will still support using external binaries if you have one specifically optimized for your system that you want to use (yafu contains gmp-ecm 6.3 with gmp 5.0.1 with enable-asm-redc, built for core2).

Due to inefficiencies in system overhead and parsing of output files, the external binary is only used for B1 > 40k.

Happy factoring,
- ben.
bsquared is offline   Reply With Quote
Old 2011-07-21, 06:42   #758
Karl M Johnson
 
Karl M Johnson's Avatar
 
Mar 2010

41110 Posts
Default

Uhm, no way to control the amount of curves for external ECM calling ?
Karl M Johnson is offline   Reply With Quote
Old 2011-07-21, 12:18   #759
bsquared
 
bsquared's Avatar
 
"Ben"
Feb 2007

DC216 Posts
Default

Quote:
Originally Posted by Karl M Johnson View Post
Uhm, no way to control the amount of curves for external ECM calling ?
Same way it's always been done - this is independent of internal/external method:
Code:
 
 
$ yafu-x64.exe "ecm(rsa(200),80)" -threads 4 -B1ecm 1000000
 
ecm: 16/80 curves on C61 input, at B1 = 1M, B2 = gmp-ecm default
I see now that I accidently removed this explanation from the docfile... but the usage hasn't changed.

Last fiddled with by bsquared on 2011-07-21 at 12:22
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 22:31.


Fri Aug 6 22:31:20 UTC 2021 up 14 days, 17 hrs, 1 user, load averages: 3.42, 3.32, 3.23

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.