![]() |
[QUOTE=10metreh;265392]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[/code][/QUOTE] That's a feature :smile:. 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. |
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.
|
[QUOTE=bsquared;265190]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.[/QUOTE]
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. |
[QUOTE=jrk;265790]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.[/QUOTE] 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. |
[QUOTE=bsquared;265845]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.[/QUOTE]
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[/code] 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. |
[QUOTE=jrk;265860]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[/code] 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.[/QUOTE] 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. |
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) ====[/CODE] after which yafu stopped. Rerunning this number worked fine. [I]edit: I found a couple more of these in the logs[/I] |
[QUOTE=smh;267001]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) ====[/CODE] after which yafu stopped. Rerunning this number worked fine. [I]edit: I found a couple more of these in the logs[/I][/QUOTE] 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? |
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. |
Uhm, no way to control the amount of curves for external ECM calling ?
|
[QUOTE=Karl M Johnson;267084]Uhm, no way to control the amount of curves for external ECM calling ?[/QUOTE]
Same way it's always been done - this is independent of internal/external method: [CODE] $ yafu-x64.exe "ecm(rsa(200)[B][COLOR=seagreen],80[/COLOR][/B])" -threads 4 -B1ecm 1000000 ecm: 16/[B][COLOR=seagreen]80[/COLOR][/B] curves on C61 input, at B1 = 1M, B2 = gmp-ecm default [/CODE] I see now that I accidently removed this explanation from the docfile... but the usage hasn't changed. |
| All times are UTC. The time now is 23:04. |
Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.