![]() |
This is something Brian Gladman or Jeff Gilchrist can say more about, IIRC both have gotten MPIR to work with msieve. My guess is that the GMP interface is more widely exposed in the latest SVN, which could mean trouble.
|
[QUOTE=Batalov;184848]Jason: Second that. I've seen the same, just once. It corresponds to the "barely enough" relations zone, so some internal limit should be slightly increased.
ltd: for this one, delete *.cyc, *.mat files, edit *.job file (increase q0 by the qintsize), and then restart factMsieve.pl. It will then sieve some more and will finish fine.[/QUOTE] It works. Now linear algebra is running. Thanks again. |
[quote=jasonp;184843]Line 672 of common/fastmult.c has a test for exact equality of floating point numbers to zero. Since the printed out values indicated a nonzero carry that would round to zero when converted to integer, it's safe to comment out the check and rerun the square root.
If you don't find the factors for some reason, try the latest SVN, which replaces all the arbitrary-precision arithmetic with GMP, and coincidentally makes the square root 2.5x faster.[/quote] I have commented a test, but had another erroneous message. Then I have compiled the SVN version and run it but had error message "division failed". ----skipped some screen line--- (154 digits) division failed I try to comment line 827 at common/mp.c - "exit(-1);" then run msieve. I have many "division failed" messages at screen. Log: Mon Aug 10 22:24:37 2009 searching for 15-digit factors Mon Aug 10 22:24:37 2009 commencing number field sieve (154-digit input) Mon Aug 10 22:24:37 2009 R0: -208985787414122306924835570 Mon Aug 10 22:24:37 2009 R1: 1 Mon Aug 10 22:24:37 2009 A0: 726479300600057237125159 Mon Aug 10 22:24:37 2009 A1: -1389865517466895229483578 Mon Aug 10 22:24:37 2009 A2: -2183573965725241144194285 Mon Aug 10 22:24:37 2009 A3: -581757715683607334054002 Mon Aug 10 22:24:37 2009 A4: -360407827365189126657174 Mon Aug 10 22:24:37 2009 A5: 21685341761660958796800 Mon Aug 10 22:24:37 2009 skew 1.00, size 8.139225e-16, alpha -5.029985, combined = 8.157499e-13 Mon Aug 10 22:24:37 2009 Mon Aug 10 22:24:37 2009 commencing square root phase Mon Aug 10 22:24:37 2009 reading relations for dependency 1 Mon Aug 10 22:24:56 2009 read 3858880 cycles Mon Aug 10 22:25:08 2009 cycles contain 13342931 unique relations Mon Aug 10 22:29:06 2009 read 13342931 relations Mon Aug 10 22:31:15 2009 multiplying 10672298 relations Tue Aug 11 00:55:06 2009 multiply complete, coefficients have about 1092.62 million bits Tue Aug 11 00:55:45 2009 initial square root is modulo 79769 Tue Aug 11 06:03:59 2009 reading relations for dependency 2 Tue Aug 11 06:04:18 2009 read 3860113 cycles Tue Aug 11 06:04:29 2009 cycles contain 13348039 unique relations Tue Aug 11 06:08:28 2009 read 13348039 relations Tue Aug 11 06:10:35 2009 multiplying 10679056 relations Tue Aug 11 08:34:33 2009 multiply complete, coefficients have about 1093.32 million bits Tue Aug 11 08:35:11 2009 initial square root is modulo 80231 Tue Aug 11 13:42:17 2009 reading relations for dependency 3 Tue Aug 11 13:42:36 2009 read 3858951 cycles Tue Aug 11 13:42:48 2009 cycles contain 13344925 unique relations Tue Aug 11 13:46:48 2009 read 13344925 relations Tue Aug 11 13:48:58 2009 multiplying 10674360 relations Is this log looks like normal? ? |
A few observations:
- I'm glad the latest SVN doesn't have the original polynomial selector anymore, because you should not have used it. For a 512-bit input, using the new polynomial selector would have saved months of sieving time - Thank you for trying the latest SVN on a big input; it seems to be working fine. How much memory does the square root use? - The error message you describe is puzzling, because the square root does not complain about arithmetic failing. Could you add the following code just above the exit(-1) and paste a sample failed message? [code] char buf[1000]; printf("%s\n", mp_sprintf(num, 16, buf)); printf("%s\n", mp_sprintf(denom, 16, buf)); printf("%s\n", mp_sprintf(quot, 16, buf)); printf("%s\n", mp_sprintf(rem, 16, buf)); [/code] PS: try the latest SVN now, it includes several bug fixes. |
1 Attachment(s)
1)"How much memory does the square root use?":
At screen: "multiplying 10674360 relations" Maximum: PID USERNAME THR PRI NICE SIZE RES STATE C TIME WCPU COMMAND 1113 root 1 116 0 1581M 1506M CPU0 0 17.7H 92.68% msieve At screen: "multiply complete, coefficients have about 1092.82 million bits initial square root is modulo 79861" PID USERNAME THR PRI NICE SIZE RES STATE C TIME WCPU COMMAND 1113 root 1 116 0 1511M 1274M CPU0 0 17.8H 93.07% msieve 2) "and paste a sample failed message?" - see attachment |
1 Attachment(s)
[quote=jasonp;184940]PS: try the latest SVN now, it includes several bug fixes.[/quote]
Error the same, see attachment. |
I think it's a false alarm: the check assumes the numerator from division fits in an mp_t, but with long division (the case here) it does not.
|
[QUOTE=ltd;184851]
One more thing. I have tried to compile the latest SVN version using VS2008 and MPIR instead of GMP and got the following error: [CODE] Error 10 error C2275: 'mp_t' : illegal use of this type as an expression common\mp.c 822 common.lib [/CODE] Building msieve 1.42 worked without any problems. Is there something wrong with the trunk version or is the problem using MPIR? I have no Visual studio projet file for GMP so I have to work with MPIR.[/QUOTE] Are you building the 32bit msieve or 64bit msieve and what processor are you building for (Opteron, Core2, etc...). I know there is a build issue with GMP-ECM when using MPIR 1.2.1 building for 64bit Core2 because of a missing assembler function. To build msieve in VS2008, you need MPIR and GMP-ECM by default. I haven't tried the latest SVN release of msieve so I need to grab that and test it out. If there is an issue with MPIR, the developers are very good about fixing issues. |
For MPIR I have compiled 64Bit core2 and 32Bit p4 version which works without any problem.
To compile gmp-ecm 6.2.3 I had to modify config.h. I had to do : //#define HAVE___GMPN_ADD_NC 1 But after that gmp-ecm compiled without any problems. I was able to compile and run msieve1.42 without any problems. (64Bit) Only the latest snapshot (svn34) throughs an error. There is no difference if I try the compile in 32Bit or 64Bit. |
[quote=Jeff Gilchrist;184979]Are you building the 32bit msieve or 64bit msieve and what processor are you building for (Opteron, Core2, etc...). I know there is a build issue with GMP-ECM when using MPIR 1.2.1 building for 64bit Core2 because of a missing assembler function.
To build msieve in VS2008, you need MPIR and GMP-ECM by default. I haven't tried the latest SVN release of msieve so I need to grab that and test it out. If there is an issue with MPIR, the developers are very good about fixing issues.[/quote] Hi All, There was an issue with GMP-ECM and MPIR that I have (hopefully) now fixed by making a change to the SVN version of MPIR. This was NOT an MPIR problem but it was easier to slightly change MPIR rather than make the more extensive changes needed to solve this problem in the GMP-ECM Windows VC++ build project. I have also made other changes in the Windows builds of both GMP-ECM and MSIEVE, both of which now default to using MPIR rather than GMP. I also now ensure that GMP-ECM uses the standard output directory structure expected by my other build projects. For those who wish to stay with GMP, I now define a user configurable macro 'mp_lib' in the relevant VC++ property sheet that can be set to 'mpir' or 'gmp' (without the quotes) to specify whether MPIR or GMP should be used. However, as I am no longer supporting GMP on Windows, I feel that it now makes sense to make MPIR the default multiple precision library in all my related Windows build projects. I should also mention that although all the 32-bit builds work (as far as I know), I am no longer maintaining or testing them. But I will make an effort to solve any issues that people encounter in trying to use them. best regards to all, Brian Gladman |
matrix is corrupt
Just got this error when trying to factor a c125 with msieve 1.42 (official version, NOT a SVN)
[code]Thu Aug 13 18:18:07 2009 Msieve v. 1.42 Thu Aug 13 18:18:07 2009 random seeds: c9679c00 2495a4dc Thu Aug 13 18:18:07 2009 factoring 30847238864228677233128038323091306474220537109242200251939607189316654238514680080703938841681152942858064189230096287633139 (125 digits) Thu Aug 13 18:18:08 2009 searching for 15-digit factors Thu Aug 13 18:18:09 2009 commencing number field sieve (125-digit input) Thu Aug 13 18:18:09 2009 R0: -1172501988187314392977104 Thu Aug 13 18:18:09 2009 R1: 29839837535123 Thu Aug 13 18:18:09 2009 A0: 8038771366772384844170381434321 Thu Aug 13 18:18:09 2009 A1: 105845054410679713958453724 Thu Aug 13 18:18:09 2009 A2: -626862656395647554077 Thu Aug 13 18:18:09 2009 A3: -5075068330926564 Thu Aug 13 18:18:09 2009 A4: 11488823796 Thu Aug 13 18:18:09 2009 A5: 13920 Thu Aug 13 18:18:09 2009 skew 268580.71, size 5.069740e-012, alpha -6.326494, combined = 1.473385e-010 Thu Aug 13 18:18:09 2009 Thu Aug 13 18:18:09 2009 commencing relation filtering Thu Aug 13 18:18:09 2009 estimated available RAM is 2046.1 MB Thu Aug 13 18:18:09 2009 commencing duplicate removal, pass 1 Thu Aug 13 18:20:24 2009 found 1430783 hash collisions in 11279932 relations Thu Aug 13 18:21:07 2009 added 47 free relations Thu Aug 13 18:21:08 2009 commencing duplicate removal, pass 2 Thu Aug 13 18:21:35 2009 found 1197574 duplicates and 10082405 unique relations Thu Aug 13 18:21:35 2009 memory use: 49.3 MB Thu Aug 13 18:21:35 2009 reading ideals above 6356992 Thu Aug 13 18:21:39 2009 commencing singleton removal, initial pass Thu Aug 13 18:23:55 2009 memory use: 149.2 MB Thu Aug 13 18:23:55 2009 reading all ideals from disk Thu Aug 13 18:23:55 2009 memory use: 176.9 MB Thu Aug 13 18:23:57 2009 commencing in-memory singleton removal Thu Aug 13 18:23:58 2009 begin with 10082405 relations and 10221173 unique ideals Thu Aug 13 18:24:08 2009 reduce to 3931485 relations and 3050492 ideals in 19 passes Thu Aug 13 18:24:08 2009 max relations containing the same ideal: 38 Thu Aug 13 18:24:09 2009 reading ideals above 100000 Thu Aug 13 18:24:09 2009 commencing singleton removal, initial pass Thu Aug 13 18:25:16 2009 memory use: 74.6 MB Thu Aug 13 18:25:16 2009 reading all ideals from disk Thu Aug 13 18:25:16 2009 memory use: 142.9 MB Thu Aug 13 18:25:17 2009 keeping 3898404 ideals with weight <= 200, target excess is 22414 Thu Aug 13 18:25:18 2009 commencing in-memory singleton removal Thu Aug 13 18:25:19 2009 begin with 3931535 relations and 3898404 unique ideals Thu Aug 13 18:25:30 2009 reduce to 3915452 relations and 3882079 ideals in 13 passes Thu Aug 13 18:25:30 2009 max relations containing the same ideal: 200 Thu Aug 13 18:25:35 2009 relations with 0 large ideals: 85 Thu Aug 13 18:25:35 2009 relations with 1 large ideals: 34 Thu Aug 13 18:25:35 2009 relations with 2 large ideals: 486 Thu Aug 13 18:25:35 2009 relations with 3 large ideals: 7073 Thu Aug 13 18:25:35 2009 relations with 4 large ideals: 55417 Thu Aug 13 18:25:35 2009 relations with 5 large ideals: 253470 Thu Aug 13 18:25:35 2009 relations with 6 large ideals: 697708 Thu Aug 13 18:25:35 2009 relations with 7+ large ideals: 2901179 Thu Aug 13 18:25:35 2009 commencing 2-way merge Thu Aug 13 18:25:42 2009 reduce to 2180284 relation sets and 2147446 unique ideals Thu Aug 13 18:25:42 2009 ignored 535 oversize relation sets Thu Aug 13 18:25:42 2009 commencing full merge Thu Aug 13 18:28:03 2009 memory use: 66.9 MB Thu Aug 13 18:28:03 2009 found 19082 cycles, need 447614 Thu Aug 13 18:28:03 2009 weight of 19082 cycles is about 4142886 (217.11/cycle) Thu Aug 13 18:28:03 2009 distribution of cycle lengths: Thu Aug 13 18:28:03 2009 1 relations: 1617 Thu Aug 13 18:28:03 2009 2 relations: 781 Thu Aug 13 18:28:03 2009 3 relations: 663 Thu Aug 13 18:28:03 2009 4 relations: 670 Thu Aug 13 18:28:03 2009 5 relations: 674 Thu Aug 13 18:28:03 2009 6 relations: 677 Thu Aug 13 18:28:03 2009 7 relations: 678 Thu Aug 13 18:28:03 2009 8 relations: 681 Thu Aug 13 18:28:03 2009 9 relations: 703 Thu Aug 13 18:28:03 2009 10+ relations: 11938 Thu Aug 13 18:28:03 2009 heaviest cycle: 28 relations Thu Aug 13 18:28:03 2009 commencing cycle optimization Thu Aug 13 18:28:03 2009 start with 253849 relations Thu Aug 13 18:28:04 2009 pruned 5187 relations Thu Aug 13 18:28:04 2009 memory use: 7.5 MB Thu Aug 13 18:28:04 2009 distribution of cycle lengths: Thu Aug 13 18:28:04 2009 1 relations: 1617 Thu Aug 13 18:28:04 2009 2 relations: 787 Thu Aug 13 18:28:04 2009 3 relations: 666 Thu Aug 13 18:28:04 2009 4 relations: 688 Thu Aug 13 18:28:04 2009 5 relations: 690 Thu Aug 13 18:28:04 2009 6 relations: 687 Thu Aug 13 18:28:04 2009 7 relations: 697 Thu Aug 13 18:28:04 2009 8 relations: 708 Thu Aug 13 18:28:04 2009 9 relations: 726 Thu Aug 13 18:28:04 2009 10+ relations: 11816 Thu Aug 13 18:28:04 2009 heaviest cycle: 28 relations Thu Aug 13 18:28:04 2009 RelProcTime: 595 Thu Aug 13 18:28:04 2009 elapsed time 00:09:57 Thu Aug 13 18:28:05 2009 Thu Aug 13 18:28:05 2009 Thu Aug 13 18:28:05 2009 Msieve v. 1.42 Thu Aug 13 18:28:05 2009 random seeds: 87eeb368 8848f894 Thu Aug 13 18:28:05 2009 factoring 30847238864228677233128038323091306474220537109242200251939607189316654238514680080703938841681152942858064189230096287633139 (125 digits) Thu Aug 13 18:28:06 2009 searching for 15-digit factors Thu Aug 13 18:28:07 2009 commencing number field sieve (125-digit input) Thu Aug 13 18:28:07 2009 R0: -1172501988187314392977104 Thu Aug 13 18:28:07 2009 R1: 29839837535123 Thu Aug 13 18:28:07 2009 A0: 8038771366772384844170381434321 Thu Aug 13 18:28:07 2009 A1: 105845054410679713958453724 Thu Aug 13 18:28:07 2009 A2: -626862656395647554077 Thu Aug 13 18:28:07 2009 A3: -5075068330926564 Thu Aug 13 18:28:07 2009 A4: 11488823796 Thu Aug 13 18:28:07 2009 A5: 13920 Thu Aug 13 18:28:07 2009 skew 268580.71, size 5.069740e-012, alpha -6.326494, combined = 1.473385e-010 Thu Aug 13 18:28:07 2009 Thu Aug 13 18:28:07 2009 commencing linear algebra Thu Aug 13 18:28:07 2009 read 19082 cycles Thu Aug 13 18:28:07 2009 cycles contain 174109 unique relations Thu Aug 13 18:28:22 2009 read 174109 relations Thu Aug 13 18:28:23 2009 using 20 quadratic characters above 134216940 Thu Aug 13 18:28:24 2009 building initial matrix Thu Aug 13 18:28:26 2009 memory use: 27.0 MB Thu Aug 13 18:28:26 2009 read 19082 cycles Thu Aug 13 18:28:26 2009 matrix is 338312 x 19082 (11.9 MB) with weight 3633677 (190.42/col) Thu Aug 13 18:28:26 2009 sparse part has weight 2977983 (156.06/col) [B]Thu Aug 13 18:28:26 2009 matrix is corrupt; skipping linear algebra[/B] Thu Aug 13 18:28:26 2009 elapsed time 00:00:21 [/code] |
| All times are UTC. The time now is 15:42. |
Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.