![]() |
Quick and hopefully simple question.
Is there a way to get YAFU to print out the current status of completing a SIQS to stdout? Right now it shows the ecm # current/# total curves while doing factor() and when SIQS sieving starts it shows the number of relations needed but it doesn't show the current progress. I have tried using: v=1 In the yafu.ini file which gives more information but does not print out the sieving progress. Is there anything I can put in the .ini file to do this? Thanks. |
[QUOTE=Jeff Gilchrist;285586]Quick and hopefully simple question.
Is there a way to get YAFU to print out the current status of completing a SIQS to stdout? Right now it shows the ecm # current/# total curves while doing factor() and when SIQS sieving starts it shows the number of relations needed but it doesn't show the current progress. [/QUOTE] It shows the number of relations found as well as the number needed. Relations found is a measure of progress, no? Or is it the fact that these status updates are continuously overwritten on stdout that is the issue? [CODE]div: primes less than 10000 fmt: 1000000 iterations rho: x^2 + 3, starting 1000 iterations on C77 rho: x^2 + 2, starting 1000 iterations on C77 rho: x^2 + 1, starting 1000 iterations on C77 pp1: starting B1 = 20K, B2 = gmp-ecm default on C77 pp1: starting B1 = 20K, B2 = gmp-ecm default on C77 pp1: starting B1 = 20K, B2 = gmp-ecm default on C77 pm1: starting B1 = 100K, B2 = gmp-ecm default on C77 ecm: 30/30 curves on C77 input, at B1 = 2K, B2 = gmp-ecm default ecm: 74/74 curves on C77 input, at B1 = 11K, B2 = gmp-ecm default ecm: 149/149 curves on C77 input, at B1 = 50K, B2 = gmp-ecm default starting SIQS on c77: 59142139595307917565744428892760192088258907099173376426677653705298440582163 ==== sieving in progress (1 thread): [B][COLOR=blue]36224[/COLOR][/B] relations needed ==== ==== Press ctrl-c to abort and save state ==== [B][COLOR=blue]6765 rels found[/COLOR][/B]: 5218 full + 1547 from 52625 partial, (1838.54 rels/sec) [/CODE] |
[QUOTE=bsquared;285588]It shows the number of relations found as well as the number needed. Relations found is a measure of progress, no?
[CODE] ==== sieving in progress (1 thread): [B][COLOR=blue]36224[/COLOR][/B] relations needed ==== ==== Press ctrl-c to abort and save state ==== [B][COLOR=blue]6765 rels found[/COLOR][/B]: 5218 full + 1547 from 52625 partial, (1838.54 rels/sec) [/CODE][/QUOTE] That is the part I'm missing, using your 64bit Windows binary with 32k window size, I only get this out: [CODE]==== sieving in progress (1 thread): 55664 relations needed ==== ==== Press ctrl-c to abort and save state ==== [/CODE] And nothing, the cursor blinks with no info, until the SIQS completes and then spits out: [CODE]55696 rels found: 23402 full + 32294 from 395772 partial, (751.61 rels/sec) sieving required 196189 total polynomials trial division touched 4979382 sieve locations out of 154289307648 squfof: 0 failures, 144365 attempts, 1471466 outside range, 1002003 prp, 140046 useful QS elapsed time = 557.7079 seconds.[/CODE] I see now that if I just run that manually in a command prompt, I can see the relation count, so it must be the script that I'm calling it from that is hiding the output when it gets to that stage. Jeff. |
Jeff,
What about using the -v flag? |
I believe I remember the same results as Jeff describes when running yoyo's script. I can't say for sure whether it was with 32-bit or 64-bit. I just noticed it a couple times, but didn't pursue it. I will try to be more observant if more info is needed.
|
[QUOTE=EdH;285603]I believe I remember the same results as Jeff describes when running yoyo's script. I can't say for sure whether it was with 32-bit or 64-bit. I just noticed it a couple times, but didn't pursue it. I will try to be more observant if more info is needed.[/QUOTE]
Yes, it is his script or a derivation of that which I am running (this one [URL="http://www.mersenneforum.org/showpost.php?p=285073&postcount=65"]here[/URL]). I'm not a perl person so can't easily see what might be blocking that particular information from being printed compared to everything else. Maybe the lack of carriage return prevents the line from being displayed through the script and when it finished and a CR finally gets pushed, everything gets displayed at once? Jeff. |
[QUOTE=Jeff Gilchrist;285601]That is the part I'm missing, using your 64bit Windows binary with 32k window size, I only get this out:
[CODE]==== sieving in progress (1 thread): 55664 relations needed ==== ==== Press ctrl-c to abort and save state ==== [/CODE] [/QUOTE] Ah, ok. If it is the script that is stripping the output then the question becomes: why? Is there some other form of output that would be more useful or easier to deal with so that it doesn't have to be stripped out? As long as it isn't too much work I'm more than willing to add options to make other people's lives easier. |
Probably not actually useful at this point, but I found an example:
This is a Pentium 4, 1.3GHz, 32-bit, running Ubuntu 11.04: [code] get composites Factoring 84 digits: 214415021669481705782805352806595071755021861655460353384903945736526050732176217493 factoring 214415021669481705782805352806595071755021861655460353384903945736526050732176217493 div: primes less than 10000 fmt: 1000000 iterations rho: x^2 + 1, starting 1000 iterations on C84 rho: x^2 + 3, starting 1000 iterations on C84 rho: x^2 + 2, starting 1000 iterations on C84 pp1: starting B1 = 20K, B2 = 2M on C84, processed < 2000003 pp1: starting B1 = 20K, B2 = 2M on C84, processed < 2000003 pp1: starting B1 = 20K, B2 = 2M on C84, processed < 2000003 pm1: starting B1 = 100K, B2 = 10M on C84, processed < 10000019 ecm: 25 curves on C84 input, at B1 = 2K, B2 = 200K ecm: 90 curves on C84 input, at B1 = 11K, B2 = 1100K ecm: 185 curves on C84 input, at B1 = 50K, B2 = 5M pp1: starting B1 = 200K, B2 = 20M on C84, processed < 20000003 pp1: starting B1 = 200K, B2 = 20M on C84, processed < 20000003 pp1: starting B1 = 200K, B2 = 20M on C84, processed < 20000003 pm1: starting B1 = 1M, B2 = 100M on C84, processed < 100000007 ecm: 2 curves on C84 input, at B1 = 250K, B2 = 25M pp1: starting B1 = 2M, B2 = 200M on C84, processed < 200000033 starting SIQS on c84: 214415021669481705782805352806595071755021861655460353384903945736526050732176217493 ==== sieving in progress (1 thread): 52136 relations needed ==== ==== Press ctrl-c to abort and save state ==== [/code]Here's YAFU's intro: [code] 01/09/12 15:23:30 v1.21 @ math05, System/Build Info: detected Intel(R) Pentium(R) 4 CPU 1300MHz detected L1 = 8192 bytes, L2 = 262144 bytes, CL = 64 bytes measured cpu frequency ~= 1297.945120 =============================================================== ======= Welcome to YAFU (Yet Another Factoring Utility) ======= ======= bbuhrow@gmail.com ======= ======= Type help at any time, or quit to quit ======= =============================================================== cached 78504 primes. pmax = 0 [/code]Maybe yoyo can add something... |
I'm thinking the problem is in the overwrite that is taking place to keep from scrolling all the relations off the screen. As Jeff says, it's probably something about the lack of linefeed. (Or, maybe CRLF) I remember having troubles like this, not displaying text until the final CRLF, in other programming a while back. Unfortunately, I don't know of a resolution.
|
The Perl script runs a "while" arround the yafu output. In this loop the output is pased for found prp or composites. But the "while" is always line based. So it waits until the end of line to run in the next loop. But the end of line is printed by yafu at only at the end and not during e.g. each ecm curver or each siqs step.
I don't know of an easy implementation to make a different loop in Perl. Implementing with some yafu option an end of line for every step will also print much more output on the screen. Don't know if this is really what is wanted. yoyo |
Hey, I have another (potentially stupid) question about yafu. I've been running yafu on a C114 for the past two days to no avail. It has done the TFing, ECM (through the point where it assigned 1 curve of B1=1 Billion (American numerology)), pp1, pm1, and rho=x^2 + 1,2,3. It now has switched to SIQS after saying "WARNING: could not find .\gnfs-lasieve4I13e.exe, reverting to siqs!", and has been running Bpoly to 4096 several times and once to 8192.
My question is: How long/how many times is this expected to go on. I'm using a P4 3.2GHz cpu to run it and its doing about 4.5 rels/sec. Thanks in advance! |
| All times are UTC. The time now is 22:31. |
Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.