![]() |
![]() |
#1 |
Jan 2015
22·7 Posts |
![]()
Hi. I'm very new to yafu. Installed it two days ago.
When the program is done with sieving the first way (I think it's with SIQS. Not sure), it tries to start lattice sieving and puts out this ... I think it's an error. hashtable: 1024 entries, 0.02 MB elapsed time of 1055.2720 seconds exceeds 546 second deadline; poly select done nfs: commencing algebraic side lattice sieving over range: 880000 - 890000 nfs: commencing algebraic side lattice sieving over range: 870000 - 880000 '..' is not recognized as an internal or external command, operable program or batch file. '..' is not recognized as an internal or external command, operable program or batch file. nfs: could not open output file, possibly bad path to siever nfs: could not open output file, possibly bad path to siever fopen error: No such file or directory could not open rels0.dat for reading Does anyone know what's going on? Is there a problem with yafu.ini? |
![]() |
![]() |
![]() |
#2 |
Jan 2015
22×7 Posts |
![]()
For reference, the following text is the entire contents of yafu.ini. It's still the default with minor modifications to rhomax and threads.
B1pm1=100000 B1pp1=20000 B1ecm=11000 rhomax=10000 threads=2 pretest_ratio=0.25 %ggnfs_dir=..\ggnfs-bin\Win32\ ggnfs_dir=../ggnfs-bin/ %ecm_path=..\gmp-ecm\bin\x64\Release\ecm.exe %ecm_path=../ecm/current/ecm tune_info= Intel(R) Xeon(R) CPU E5-4650 0 @ 2.70GHz,LINUX64,1.73786e-05,0.200412,0.400046,0.0987873,98.8355,2699.98 |
![]() |
![]() |
![]() |
#3 |
Jan 2015
22×7 Posts |
![]()
It happened again, but with a different number.
hashtable: 2048 entries, 0.03 MB elapsed time of 1149.4966 seconds exceeds 835 second deadline; poly select done nfs: commencing algebraic side lattice sieving over range: 1190000 - 1200000 nfs: commencing algebraic side lattice sieving over range: 1180000 - 1190000 '..' is not recognized as an internal or external command, operable program or batch file. '..' is not recognized as an internal or external command, operable program or batch file. nfs: could not open output file, possibly bad path to siever nfs: could not open output file, possibly bad path to siever fopen error: No such file or directory could not open rels0.dat for reading |
![]() |
![]() |
![]() |
#4 |
I moo ablest echo power!
May 2013
35008 Posts |
![]()
You probably need to modify the ggnfs_dir variable to point to the correct folder. Assuming you didn't change anything from Jeff Gilchrist's setup direction, you should put something like C:\ggnfs\ (or the correct drive/folder path). Also, once it's working, it's probably a good idea to run
Code:
yafu "tune()" |
![]() |
![]() |
![]() |
#5 |
Jan 2015
22×7 Posts |
![]()
I don't think Jeff did a tutorial on installing yafu; just factmsieve.
Should I change all the path variables? Just ggnfs_dir? Both ggnfs_dir and %ggnfs_dir? |
![]() |
![]() |
![]() |
#6 |
Jan 2015
22·7 Posts |
![]()
Ok changing the variables to
%ggnfs_dir=D:\Programming\ggnfs\Win32\ ggnfs_dir=D:/Programming/ggnfs/ worked! I think the second one is the pertinent variable since I don't have a Win32 folder in that folder. More testing to follow. Last fiddled with by Hailstone on 2015-01-08 at 05:20 |
![]() |
![]() |
![]() |
#7 |
Basketry That Evening!
"Bunslow the Bold"
Jun 2011
40<A<43 -89<O<-88
3·29·83 Posts |
![]()
Yafu doesn't know where to find the gnfs-lasieve .exe's which are downloaded as part of Jeff's tutorial; you need only set ggnfs_dir to be the folder where all the gnfs-lasieve11e through gnfs-lasieve16e bexes are located.
|
![]() |
![]() |
![]() |
#8 |
I moo ablest echo power!
May 2013
26·29 Posts |
![]()
The % basically comments that line out, so just change the one that doesn't have the % in front of it. You're probably going to want to get GMP-ECM as well to utilize YAFU fully. Once you do, you'll need to change ecm_path to wherever you put the ecm.exe file and remove the % from in front of it.
Edit: And I see in the time before I answered, you got it worked out. Last fiddled with by wombatman on 2015-01-08 at 05:39 |
![]() |
![]() |
![]() |
#9 |
Romulan Interpreter
"name field"
Jun 2011
Thailand
24·643 Posts |
![]()
Additional: use \ for subfolders for windoze, use / for linux.
Assuming you have a folder "factoring", in which you have two folders "yafu" and "ggnfs" then you have the yafu.ini in yafu folder, you have to write in yafu.ini a line like "ggnfs_dir=..\ggnfs" The two dots (..\) means "out of the current folder" (the parent folder). One single dot (./) means the current folder (used in linux, but implicit in windoze). I always use relative paths (in case the "factoring" folder is moved around, and this also avoids the long paths). If you use gmp-ecm, which is a third folder inside of the factoring folder, then you put "ecm_path=..\gmp-ecm" there too. Yafu uses its own (single thread) ecm for small ecm jobs, but a big speed gain (quadrupled, if four cores) is obtained for long ecm jobs when external (faster, multithread) ecm programs are used. Try to make some "rules" for yourself about how you specify the paths. Assuming you work on aliquots, riesel, crus, whatever, you will have many folders in the factoring folder, and they all, if use yafu/msieve/ggnfs/etc will point to the same sieving files, etc. Easy maintenance, no need to duplicate too much stuff, easy to upgrade, move from one folder to another, or from one computer to another, etc. Always relative paths. If there is a folder "yafu" in "aliquots" which is in "factoring", and "ggnfs" is also in factoring, you can write "ggnfs_dir=..\..\ggnfs" in yafu.ini inside of the yafu folder. edit: the reason to have two lines is that you can switch from linux to windows by commenting out the unwanted line. As said before, % in front means comment, it tell yafu basically "please ignore this line". Last fiddled with by LaurV on 2015-01-08 at 06:03 |
![]() |
![]() |
![]() |
#10 |
Jan 2015
22×7 Posts |
![]()
Wow. Thanks for all the replies everyone. I think specifying the exact filepath worked for me, but I'll try a relative filepath with the next factoring job.
Is there any way to get yafu (or msieve, I'm not picky) to factor a list of numbers (one at a time). And does running multiple instances of either program mess things up for those instances? I'm trying to run home prime sequences base 12 and I have quite a few sequences to test. EDIT: Looking at the results of factor( *C104* ) -R, I think running multiple instances breaks it. Oy. Details of breaking: two instances trying to open rels0.dat at once Last fiddled with by Hailstone on 2015-01-08 at 06:51 |
![]() |
![]() |
![]() |
#11 |
Sep 2009
22·5·72 Posts |
![]()
Running the multiple instances from different folders (which may need to contain separate copies / hardlinks / symlinks of the executable and config files, I'm not sure) shall solve your woes
![]() |
![]() |
![]() |
![]() |
Thread Tools | |
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
Lattice Sieving Parameters | paul0 | Factoring | 6 | 2015-11-20 21:12 |
Lattice Sieving - where do I start? | paul0 | Factoring | 3 | 2015-03-09 13:54 |
Line sieving vs. lattice sieving | JHansen | NFSNET Discussion | 9 | 2010-06-09 19:25 |
A question on lattice sieving | joral | Factoring | 5 | 2008-04-03 08:01 |
Initialization for lattice sieving | jasonp | Factoring | 16 | 2006-01-12 22:53 |