![]() |
[QUOTE=WraithX;369993]I wanted to report a problem I've found while trying to factor a bunch of numbers. It seems that yafu has a problem with:
factor(151116012007860377) It goes into smallmpqs, and stays there, seemingly forever. I had let it run for about 38 minutes at one point. By that time yafu was using around 4GB of memory. I've tried to track down the issue, but I was unable to. It looks like smallmpqs can't find any relations for this number, but I'm not sure why. This is with the latest version of yafu, svn328. I see that yafu's ecm can factor this number easily. Please let me know if you need any more information.[/QUOTE] I don't know what's happening either. The small QS routine finds 0 relations and goes into an infinite loop. I hacked in a fix by capping the QS routine at a maximum number of polynomials and brute forcing with rho if the max is reached. This is obviously ugly, but hopefully is only needed very rarely. (A message is printed to the logfile if this happens so we can find out just how rare.) |
[QUOTE=LaurV;370352]Older versions work well on this particular factorization
[/QUOTE] That works because it didn't try smallmpqs. The latest SVN code tries to be smarter and switches to smallmpqs if it sees that the input can be factored instantly with it, rather than trying pm1 and ecm first. But in this case that turns out to be a bad idea... |
Ben - thanks for your continued improvements. Any ETA for a new compiled version?
|
Yeah, a lot of changes have been building up. I will try to get organized enough to do a new release soon. End of the month? That sounds like a good goal.
|
Any news on the next windows release?
|
Hello? :huh:
|
[QUOTE=Stargate38;382697]Hello? :huh:[/QUOTE]
Hello? :ermm: The latest YAFU windows binary isn't current? |
[QUOTE=Stargate38;375735]Any news on the next windows release?[/QUOTE]
Unlikely to be soon. Apologies, but I just haven't had/made the time to do the debug/test work that needs to be done. Several changes/improvements have been checked into SVN - I encourage you to get the source code and compile it. You never know, that could be rewarding in itself :smile:. |
I just compiled Yafu with the latest SVN using MinGW-64, and I get a weird problem. Using the test number from the README, the ECM steps work fine, but when it gets to the QS step, it repeats this:
[CODE] Aborting... lpsieve p setting prime roots medsieve p setting prime roots medsieve p lpsieve n lpsieve n lpsieve p setting prime roots scan p lpsieve p setting prime roots medsieve p setting prime roots lpsieve p setting prime roots scan p setting prime roots medsieve n lpsieve p scan p setting prime roots scan p setting prime roots medsieve n lpsieve n lpsieve n setting prime roots setting prime roots scan p setting prime roots scan p [/CODE] This also happens when I try to run the tune() program. I was able to previously compile and run YAFU without issue. This one was compiled with the following command (and also without SSE4.1): [CODE]make -f Makefile.mingw x86_64 NFS=1 USE_SSE41=1[/CODE] |
[QUOTE=wombatman;382801]I just compiled Yafu with the latest SVN using MinGW-64, and I get a weird problem. Using the test number from the README, the ECM steps work fine, but when it gets to the QS step, it repeats this:
This also happens when I try to run the tune() program. I was able to previously compile and run YAFU without issue. This one was compiled with the following command (and also without SSE4.1): [CODE]make -f Makefile.mingw x86_64 NFS=1 USE_SSE41=1[/CODE][/QUOTE] Looks like I goofed and checked in some debug printf's. You could back up a revision, or comment out the printf's ranging from line 918 to 982 in SIQS.c |
I'll try the commenting. Thanks!
Edit: That gets rid of the continuous printouts, but there's still something pretty wrong. Compiling with [CODE]make -f Makefile.mingw x86_64[/CODE] and running tune() gives: [CODE]$ yafu-x64.exe "tune()" starting SIQS on c60: 3495942558641765726140718531949248381580888643708909964474 17 using sse2 with med_sieve using sse2 with tdiv_medprimes ==== sieving in progress (1 thread): 3552 relations needed ==== ==== Press ctrl-c to abort and save state ==== Max specified relations found sieve time = 0.0000, relation time = 0.0000, poly_time = 0.0000 trial division touched 1205 sieve locations out of 16515072[/CODE] and the program crashes. |
| All times are UTC. The time now is 22:31. |
Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.