![]() |
[QUOTE=ATH;287948]Added an option to compile the old GMP-ECM 6.3 since it seems a few percent faster.[/QUOTE]
Hello ATH, I just saw a note posted to the gmp-ecm discuss mailing list saying that there was a speed regression in 6.4. Paul says that he has corrected this in svn version 1708. You can find his post here: [url]http://lists.gforge.inria.fr/pipermail/ecm-discuss/2012-February/004103.html[/url] Hopefully you, and especially Bruce ;) , will find this patched version useful. |
Indeed, runs better!
A bit difficult to get from behind a corporate firewall -- and build without aclocal/automake etc already installed. See README.dev |
After a lot of compilation attempts and benchmarks, I've finally found out the optimal compiling flags for Bulldozer CPUs.
-mtune, along with -march should be "bdver1" and -mxop and -mavx flags should be added. By adding tho last flags you will have a 1-3% slowdown in stage1, but up to 7% increase in speed in stage2, which will result in a faster version overall. |
Added SVN 1711 binaries, they are comparable speed with GMP-ECM 6.3 now:[URL="http://www.hoegge.dk/GMP-ECM.html"]GMP-ECM.html[/URL]
I skipped both the GMP binaries (always slower) and the ones with --disable-asm-redc since there haven't been any difference lately. The Corei7 No AVX binary is SVN 1712. |
[QUOTE=ATH;288595]Added SVN 1711 binaries, they are comparable speed with GMP-ECM 6.3 now:[URL="http://www.hoegge.dk/GMP-ECM.html"]GMP-ECM.html[/URL]
I skipped both the GMP binaries (always slower) and the ones with --disable-asm-redc since there haven't been any difference lately. The Corei7 No AVX binary is SVN 1712.[/QUOTE] Works great, thanks. [QUOTE=lorgix;286589]I just did a quick test with a ~10k-digit number. Trying '-pp1' B1=30 works, but if I add '-B2scale 4' it fails. B1=100 fails, but if I add '-B2scale 0.5' it works. It prints the stage1 time before it fails. Higher bounds work for smaller inputs.[/QUOTE] Does anybody know why this happens? Compiling my own binaries didn't affect this problem. |
Which binary should we use for 64-bit Windows Vista when reliability and stability are of the utmost importance?
In Linux we are happily using the following package: [code]GMP-ECM 6.3 [configured with GMP 5.0.1 and --enable-asm-redc] $ ecm -printconfig Compilation options: Included GMP header files version 5.0.1 GWNUM_VERSION undefined HAVE_SSE2 undefined HAVE___GMPN_ADD_NC = 1 HAVE___GMPN_MOD_34LSUB1 = 1 HAVE___GMPN_REDC_1 = 1 MEMORY_DEBUG undefined NATIVE_REDC = 1 TUNE_MULREDC_THRESH = 16 TUNE_SQRREDC_THRESH = 11 WINDOWS64_ABI undefined WANT_ASSERT undefined WANT_SHELLCMD undefined _OPENMP undefined MPZMOD_THRESHOLD = 128 REDC_THRESHOLD = 512 MUL_NTT_THRESHOLD = 256 NTT_GFP_TWIDDLE_DIF_BREAKOVER = 11 NTT_GFP_TWIDDLE_DIT_BREAKOVER = 11 PREREVERTDIVISION_NTT_THRESHOLD = 16 POLYINVERT_NTT_THRESHOLD = 256 POLYEVALT_NTT_THRESHOLD = 128 MPZSPV_NORMALISE_STRIDE = 128[/code]Thanks! :max: [SIZE=1][I] Edit: The CPU is a Sandy Bridge i5, if that matters.[/I][/SIZE] |
[QUOTE=Xyzzy;293033]Which binary should we use for 64-bit Windows Vista when reliability and stability are of the utmost importance?
Thanks! :max: [SIZE=1][I] Edit: The CPU is a Sandy Bridge i5, if that matters.[/I][/SIZE][/QUOTE] Xyzzy, you should get a compiled binary of GMP-ECM 6.4.1, since that is the latest and greatest! Since you are on 64-bit Windows, you will want to make sure that your binary says [configured with MPIR 2.5.0, etc] or [configured with MPIR 2.5.1, etc]. Only MPIR has assembly for 64-bit Windows, which makes it much faster than GMP in such a case. Speaking of the latest and greatest, hopefully someone here can compile GMP-ECM 6.4.1. Here is the announcement: [CODE] Changes between ecm-6.4 and ecm-6.4.1: * GMP-ECM is now distributed under the GPL version 3 or later for the binary, and under the LGPL version 3 or later for the library * Fixed a speed regression with respect to ecm-6.3 http://lists.gforge.inria.fr/pipermail/ecm-discuss/2012-February/004103.html * Fixed a bug with the -treefile option which had been present for a long time * Several fixes for the Visual Studio 2010 build * New experimental option -batch=2, and speedup for -batch (i.e., -batch=1) * New tuning mechanism, now --enable-asm-redc is always recommended * New configure option --enable-mulredc-svoboda, for input numbers whose low limbs is congruent to -1 * New tuning parameters for Intel Core i5 * New ecmbench utility [/CODE] You can read the full announcement here: [url]http://lists.gforge.inria.fr/pipermail/ecm-discuss/2012-March/004161.html[/url] And here is a link to download the source: [url]https://gforge.inria.fr/frs/?group_id=135[/url] And, as an fyi, GMP-ECM 6.4.1 is based on svn 1844. |
GMP-ECM 6.4.1 SVN 1856 with MPIR 2.5.1: [URL="http://www.hoegge.dk/GMP-ECM.html"]GMP-ECM.html[/URL]
Also updated the "compile it yourself" zip-file: [URL="http://www.mersenneforum.org/showpost.php?p=287632&postcount=289"]http://www.mersenneforum.org/showpost.php?p=287632&postcount=289[/URL] |
hmmm bad build..
[code] C:\Users\Vincent\Downloads\aliqueit112>ecm -c 0 -I 3 -B2scale 12 -pm1 1e4 GMP-ECM 7.0-dev [configured with MPIR 2.5.1, --enable-asm-redc] [P-1] (10^14191*13-121)/9 -1 Input number is (10^14191*13-121)/9-1 (14192 digits) ********** Factor found in step 1: 2 Found probable prime factor of 1 digits: 2 Composite cofactor ((10^14191*13-121)/9-1)/2 has 14191 digits Run 2 out of 0: Using B1=11670, B2=6108-10908642, polynomial x^1, x0=2865919436 Step 1 took 4758ms ********** Factor found in step 1: 231522892386283549053680580683071788877728558 21440982634449214772314965319373035677845944412457679381184941760039376898453407 6667351135255633604890802851170903113386793805 Found composite factor of 171 digits: 231522892386283549053680580683071788877728 55821440982634449214772314965319373035677845944412457679381184941760039376898453 4076667351135255633604890802851170903113386793805 Composite cofactor (((10^14191*13-121)/9-1)/2)/231522892386283549053680580683071 78887772855821440982634449214772314965319373035677845944412457679381184941760039 3768984534076667351135255633604890802851170903113386793805 has 14021 digits Run 3 out of 0: Using B1=13426, B2=6710-15292210, polynomial x^1, x0=2998656422 Step 1 took 5523ms ********** Factor found in step 1: 173764977986891 Found composite factor of 15 digits: 173764977986891 Composite cofactor ((((10^14191*13-121)/9-1)/2)/23152289238628354905368058068307 17888777285582144098263444921477231496531937303567784594441245767938118494176003 93768984534076667351135255633604890802851170903113386793805)/173764977986891 has 14007 digits Run 4 out of 0: Using B1=15254, B2=6710-15292210, polynomial x^1, x0=3668471047 Step 1 took 6131ms Step 2 took 10561ms ********** Factor found in step 2: 226572642001614602729651203525370614457517624 943883535496753950980422871 Found composite factor of 72 digits: 2265726420016146027296512035253706144575176 24943883535496753950980422871 Composite cofactor (((((10^14191*13-121)/9-1)/2)/2315228923862835490536805806830 71788877728558214409826344492147723149653193730356778459444124576793811849417600 393768984534076667351135255633604890802851170903113386793805)/173764977986891)/2 26572642001614602729651203525370614457517624943883535496753950980422871 has 1393 5 digits Run 5 out of 0: Using B1=17157, B2=9660-19553730, polynomial x^1, x0=3054434240 Step 1 took 7208ms Assertion failed: (__builtin_constant_p (1UL) && (1UL) == 0 ? ((F[deg])->_mp_siz e < 0 ? -1 : (F[deg])->_mp_size > 0) : __gmpz_cmp_ui (F[deg],1UL)) == 0, file pm 1fs2.c, line 1853 This application has requested the Runtime to terminate it in an unusual way. Please contact the application's support team for more information. [/code] tried with a 3e4 start, crashed again in phase 2; tried with a 1e5, worked also.. [code]GMP-ECM 7.0-dev [configured with MPIR 2.5.1, --enable-asm-redc] [P-1] [/code] |
I get the same error with the official 6.4.1 SVN 1844.
I'm not sure why it says "Assertion failed", they were compiled with --disable-assert. |
pm1 and pp1 crash, regular work but display
[code] Using B1=81566, B2=81566-347578782, polynomial Dickson(3), A=7853019981317207749 63448936507528582619319644517657466844385351839709896798336879070280116710207338 82869869607365919172891506610055419288078994440364818140674418464303118665458337 36251842869919279230649607032436004925678183434890987340030848407909682329511103 90386329704247950451322023315468838187738901395842336963027365045663147168489698 80098183527876767241922164008109791929841179157029584882664991527825014401837637 22986892078491937385609654393480787844786837713766140612843966129355079762747434 67750903881233168397139176842435637375534772958392175981789780779044264192665117 13464634631742741973071185809002509780337024691099818526447038247341082520852470 86830271054098052718712173901723838761797115979242118021078034479659805846254296 74028734368227191131688610621730853874907023313574050041910654732985365936297377 48121578649680543274993356983823867356950970097429673396720867613394388781666448 48480050904224137948307170378607866456829343953581097646066307076908120141506603 21984316592722901188705630990364501985816787795756659783000941522905703752122193 51806814819219274633083367064232943780108993026162131834488686851416551015924231 56944313374017150693305756644238471893608289874972478640511643034266961830535970 04502878732756732289325160867847987017394233314664462473361550319980339139139814 23700828216608626465959246468845561400760648467809314298502897407935609169296084 11148765664123838140264096971085210354151562290512157177618546583200070505841159 18814094387264487736148718418589118690089559409335844608281848733078712728647061 05087566921282333014133660029815549892610721127579684133763660774242821303608127 27539907858487075492049145844412619241987271760813854930875649092612096683070310 47910987289332033453424055595955320881577899517559474104688003870763046737943601 33803866 [/code] I find the display of the A value annoying |
[QUOTE]Xyzzy, you should get a compiled binary of GMP-ECM 6.4.1, since that is the latest and greatest! Since you are on 64-bit Windows, you will want to make sure that your binary says [configured with MPIR 2.5.0, etc] or [configured with MPIR 2.5.1, etc]. Only MPIR has assembly for 64-bit Windows, which makes it much faster than GMP in such a case.[/QUOTE]Do we want the Core2, i7 no AVX or i7 AVX version? We have an i5.
Also, the download contains "ecm.exe", "ecmfactor.exe" and "ecmfactor2.exe". We have been using "ecm.exe". Is this the correct usage? Thanks! |
[QUOTE=Xyzzy;293233]Do we want the Core2, i7 no AVX or i7 AVX version? We have an i5.
Also, the download contains "ecm.exe", "ecmfactor.exe" and "ecmfactor2.exe". We have been using "ecm.exe". Is this the correct usage? Thanks![/QUOTE] Yours was a Sandy Bridge Core i5 so you can use the one with avx, and use ecm.exe. The timings with and without avx are identical on my machine, so it doesn't matter that much. The only difference is, that you can't use the one with avx on a "non-sandy bridge" processor. |
Thanks!
:smile: |
GMP-ECM 6.4.2 has been released.
[CODE] Changes between ecm-6.4.1 and ecm-6.4.2: * Corrected the copyright headers * Reduced memory usage in stage 1 with -batch={1,2} mode. * Fixed bug in modular reduction (could occur only for numbers larger than 386 digits on 64-bit computers and 193 digits on 32-bit computers). * Speedup in stage 2 with the NTT default mode[/CODE] |
Now that 6.4.2 is released that fixed some Windows/Visual Studio issues, I have released new binaries on my site for 32bit and 64bit (Core2 & i7/i5) Windows with MPIR 2.5.1.
[url]http://gilchrist.ca/jeff/factoring/[/url] |
[QUOTE=Jeff Gilchrist;294745]Now that 6.4.2 is released that fixed some Windows/Visual Studio issues, I have released new binaries on my site for 32bit and 64bit (Core2 & i7/i5) Windows with MPIR 2.5.1.
[url]http://gilchrist.ca/jeff/factoring/[/url][/QUOTE] Thanks for your provide. And here is a queston, why the binary you given of 6.4.2 is slower than 6.3? Log is [CODE] GMP-ECM 6.3-rc4 [configured with GMP 5.0.1 and --enable-asm-redc] [ECM] Input number is 149...201 (210 digits) [Sun Mar 11 19:44:02 2012] Using B1=11000000, B2=35133391030, polynomial Dickson(12), sigma=3428928237 Step 1 took 403828ms Step 2 took 100437ms Run 2 out of 100: GMP-ECM 6.4.2 [configured with MPIR 2.5.1] [ECM] Input number is 149...201 (210 digits) [Fri Mar 30 21:47:33 2012] Using B1=11000000, B2=35133391030, polynomial Dickson(12), sigma=3507668499 Step 1 took 703000ms Step 2 took 142969ms GMP-ECM 6.3-rc4 [configured with GMP 5.0.1 and --enable-asm-redc] [ECM] Input number is 149...201 (210 digits) [Sun Mar 04 07:53:41 2012] Using B1=110000000, B2=11521135090, polynomial Dickson(12), sigma=3306980849 Step 1 took 4100500ms Step 2 took 52547ms GMP-ECM 6.4.2 [configured with MPIR 2.5.1] [ECM] Input number is 149...201 (210 digits) [Sat Apr 07 16:45:22 2012] Using B1=110000000, B2=11521135090, polynomial Dickson(12), sigma=1864584657 Step 1 took 7101172ms Step 2 took 81078ms [/CODE] The CPU is Intel Pentium Dual T2330 and Operating System is Win XP 32. |
Stage 2 is slower with MPIR. We're trying to find out why.
|
6.4.2 bigint bug resolved; `resume` after power outage.
First, I am impressed with the level of information provided and the access to completed builds provided by some of the people in this thread. Thank you.
1. " Fixed bug in modular reduction (could occur only for numbers larger than 386 digits on 64-bit computers and 193 digits on 32-bit computers)." I regularly test values in excess of 500 digits on a 64-bit system and have been using earlier builds of ecm. Does this mean that this bug strikes 100% of the time on these large values or randomly for fun? 2. I finally experienced a power outage which killed a number of ecm programs that had been running for a few weeks. Is there a means of resuming the calculations from the point where the program was killed -- if I was at 41000/42017 @B1 260^6 is there an instruction set that will allow me to resume the evaluation from this point to completion (the remaining curves). One option I have considered is correlating 'Alperton's ECM' curves to the ecm curves and complete the remaining calculations on the Alpertron applet. Are there any other options available? Any pointers would be appreciated. JohnW |
(Possibly Stupid Question)
Did anyone else know that gmp-ecm is available in the Ubuntu (and therefore possibly Debian) repositories? I also found a Python ecm package "pyecm". [code]bill@Gravemind:~∰∂ sudo apt-get install gmp-ecm Reading package lists... Done Building dependency tree Reading state information... Done The following extra packages will be installed: libecm0 The following NEW packages will be installed: gmp-ecm libecm0 0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded. Need to get 203 kB of archives. After this operation, 705 kB of additional disk space will be used. Do you want to continue [Y/n]? y Get:1 http://us.archive.ubuntu.com/ubuntu/ natty/universe libecm0 amd64 6.3-5ubuntu1 [151 kB] Get:2 http://us.archive.ubuntu.com/ubuntu/ natty/universe gmp-ecm amd64 6.3-5ubuntu1 [52.3 kB] Fetched 203 kB in 1s (179 kB/s) Selecting previously deselected package libecm0. (Reading database ... 257878 files and directories currently installed.) Unpacking libecm0 (from .../libecm0_6.3-5ubuntu1_amd64.deb) ... Selecting previously deselected package gmp-ecm. Unpacking gmp-ecm (from .../gmp-ecm_6.3-5ubuntu1_amd64.deb) ... Processing triggers for man-db ... Setting up libecm0 (6.3-5ubuntu1) ... Setting up gmp-ecm (6.3-5ubuntu1) ... Processing triggers for libc-bin ... ldconfig deferred processing now taking place bill@Gravemind:~∰∂ <snip> bill@Gravemind:~∰∂ which ecm /usr/bin/ecm bill@Gravemind:~∰∂ ecm Invalid arguments. See ecm --help. bill@Gravemind:~∰∂ ecm --help Usage: ecm [options] B1 [[B2min-]B2] < file Parameters: B1 stage 1 bound B2 stage 2 bound (or interval B2min-B2max) Options: -x0 x use x as initial point -sigma s use s as curve generator [ecm] -A a use a as curve parameter [ecm] -k n perform >= n steps in stage 2 -power n use x^n for Brent-Suyama's extension -dickson n use n-th Dickson's polynomial for Brent-Suyama's extension -c n perform n runs for each input -pm1 perform P-1 instead of ECM -pp1 perform P+1 instead of ECM -q quiet mode -v verbose mode -timestamp print a time stamp with each number -mpzmod use GMP's mpz_mod for modular reduction -modmuln use Montgomery's MODMULN for modular reduction -redc use Montgomery's REDC for modular reduction -nobase2 disable special base-2 code -nobase2s2 disable special base-2 code in ecm stage 2 only -base2 n force base 2 mode with 2^n+1 (n>0) or 2^|n|-1 (n<0) -ntt enable NTT convolution routines in stage 2 -no-ntt disable NTT convolution routines in stage 2 -save file save residues at end of stage 1 to file -savea file like -save, appends to existing files -resume file resume residues from file, reads from stdin if file is "-" -chkpnt file save periodic checkpoints during stage 1 to file -primetest perform a primality test on input -treefile f store product tree of F in files f.0 f.1 ... -maxmem n use at most n MB of memory in stage 2 -stage1time n add n seconds to ECM stage 1 time (for expected time est.) -i n increment B1 by this constant on each run -I f auto-calculated increment for B1 multiplied by 'f' scale factor -inp file Use file as input (instead of redirecting stdin) -b Use breadth-first mode of file processing -d Use depth-first mode of file processing (default) -one Stop processing a candidate if a factor is found (looping mode) -n run ecm in "nice" mode (below normal priority) -nn run ecm in "very nice" mode (idle priority) -t n Trial divide candidates before P-1, P+1 or ECM up to n -ve n Verbosely show short (< n character) expressions on each loop -cofdec Force cofactor output in decimal (even if expressions are used) -B2scale f Multiplies the default B2 value by f -go val Preload with group order val, which can be a simple expression, or can use N as a placeholder for the number being factored. -printconfig Print compile-time configuration and exit. -h, --help Prints this help and exit. bill@Gravemind:~∰∂ <snip> bill@Gravemind:~∰∂ ecm -printconfig Compilation options: Included GMP header files version 4.3.2 GWNUM_VERSION undefined HAVE_SSE2 undefined HAVE___GMPN_ADD_NC = 1 HAVE___GMPN_MOD_34LSUB1 = 1 HAVE___GMPN_REDC_1 = 1 MEMORY_DEBUG undefined NATIVE_REDC = 1 TUNE_MULREDC_THRESH = 16 TUNE_SQRREDC_THRESH = 11 WINDOWS64_ABI undefined WANT_ASSERT undefined WANT_SHELLCMD undefined _OPENMP undefined MPZMOD_THRESHOLD = 128 REDC_THRESHOLD = 512 MUL_NTT_THRESHOLD = 256 NTT_GFP_TWIDDLE_DIF_BREAKOVER = 11 NTT_GFP_TWIDDLE_DIT_BREAKOVER = 11 PREREVERTDIVISION_NTT_THRESHOLD = 16 POLYINVERT_NTT_THRESHOLD = 256 POLYEVALT_NTT_THRESHOLD = 128 MPZSPV_NORMALISE_STRIDE = 128 bill@Gravemind:~∰∂ [/code] Can anybody recognize what version this is? |
[QUOTE=jwaltos;295782]1. I regularly test values in excess of 500 digits on a 64-bit system and have been using earlier builds of ecm. Does this mean that this bug strikes 100% of the time on these large values or randomly for fun?[/QUOTE]
Hello jwaltos, and welcome to the forum! To answer this first question, the line mentioning "Fixed bug in modular reduction", means that a problem was found in version 6.4.1 that was fixed in the 6.4.2 release. So, if you are running a version not equal to 6.4.1, this bug will not affect you. [QUOTE=jwaltos;295782] 2. I finally experienced a power outage which killed a number of ecm programs that had been running for a few weeks. Is there a means of resuming the calculations from the point where the program was killed -- if I was at 41000/42017 @B1 260^6 is there an instruction set that will allow me to resume the evaluation from this point to completion (the remaining curves).[/QUOTE] One thing to know about how ecm works is that each curve you run does not depend on any other curves you have run. gmp-ecm chooses random parameters for each curve that it runs on an input number. So, since you say you ran 41000/42017 curves, that means that you only have to run 1017 more curves to reach your goal. You don't need any information from those previous 41000 curves to finish running those 1017. However, lets say you were running 4 curves in parallel when the power went out, then that means that you lost at most 4 curves of work. You can just ask gmp-ecm to run 1017 more curves and then you have met your goal. We would need to know what program(s) you are using in conjunction with gmp-ecm before we can tell you any particular command line options regarding saving/resuming. @dubslow: [QUOTE]Can anybody recognize what version this is?[/QUOTE] Judging from the lines: [QUOTE]Setting up gmp-ecm (6.3-5ubuntu1) ... Included GMP header files version 4.3.2[/QUOTE] This looks like gmp-ecm 6.3 compiled with GMP 4.3.2. Both are old and it would be best for you if you downloaded the latest gmp-ecm (6.4.2) and GMP (5.0.4). Both are very easy to compile on your own, or there may be links around here for a precompiled version that will work on Ubuntu. |
[QUOTE=Dubslow;295858]Can anybody recognize what version this is?[/QUOTE]If you feed it a number and a B1, GMP-ECM prints its version, it just won't do that when you ask it for help....:whistle:[code]C:\Aliquot\Auto>ecm --help
Usage: ecm [options] B1 [[B2min-]B2] < file Parameters: B1 stage 1 bound B2 stage 2 bound (or interval B2min-B2max) Options: [snip] C:\Aliquot\Auto>ecm -c 5 1000000 <worktodo.ini [COLOR="Red"]GMP-ECM 6.2.3 [powered by GMP 4.2.1_MPIR_1.1.1] [ECM][/COLOR] Input number is 6672013022996705024592768110321174450385785855731122105404791484 27636206077367278802085179093115963853895235197422785028243040777454652040238360 7513685391641 (157 digits) Using B1=1000000, B2=1045563762, polynomial Dickson(6), sigma=514054654 Step 1 took 4103ms ^C C:\Aliquot\Auto>[/code][SIZE="1"][EDIT: Looks like WraithX beat me to the ID....I kind of skipped over the install log.][/SIZE] |
[QUOTE=WraithX;295863]
@dubslow: Judging from the lines: This looks like gmp-ecm 6.3 compiled with GMP 4.3.2. Both are old and it would be best for you if you downloaded the latest gmp-ecm (6.4.2) and GMP (5.0.4). Both are very easy to compile on your own, or there may be links around here for a precompiled version that will work on Ubuntu.[/QUOTE] Whoops :smile: As it turns out, I only installed it out of curiosity, not with any real intention to use it. I had found it after searching the repos for GMP, and gmp-ecm matched gmp, so like I said, just curious. I did wind up DLing and compiling 5.0.4 for the purpose of compiling Aliqueit, which was my original purpose. Thanks for the response though :smile: (and you too schickel!) |
[QUOTE=lorgix;286587]OK, do you know why there is an assertion failure?
This happens when I try to use pp1 & pm1. I get this message if [bounds]*[input] is too big.[/QUOTE] I have figured out that -no-ntt solves this problem. Can anyone explain what it's all about? Unrelated: Atom CPUs are poor sievers, right? But are they any good at ECM? Does hyper threading ever make sense when doing ECM? |
I had missed the posting about the failed assertion back then - sorry.
The assertion checks that when we multiply F(x * \gamma) * F(x * \gamma^{-1}) with F(x) a monic reciprocal Laurent polynomial, the result is still monic. That assertion is usually the first to blow when there's some problem in the underlying polynomial arithmetic code. My debugging capabilities for Windows binaries are very limited indeed, but I can take a look at trace output and see if there's obviously wrong. Which binary, input number and parameters did you use that triggered the error? |
1 Attachment(s)
[QUOTE=akruppa;299706]I had missed the posting about the failed assertion back then - sorry.
The assertion checks that when we multiply F(x * \gamma) * F(x * \gamma^{-1}) with F(x) a monic reciprocal Laurent polynomial, the result is still monic. That assertion is usually the first to blow when there's some problem in the underlying polynomial arithmetic code. My debugging capabilities for Windows binaries are very limited indeed, but I can take a look at trace output and see if there's obviously wrong. Which binary, input number and parameters did you use that triggered the error?[/QUOTE] I used the binaries provided by ATH. I later compiled my own, using the package provided by ATH. The error message was identical in both cases. Now I use 6.5-dev. The error message looks different now. 234^997+997^234 gave this output: |
Was that with a 64-bit binary? If yes, I can't run those under Wine.
Can you run the program with -v -v -v -v and PM me the full output? Thanks. |
1 Attachment(s)
[QUOTE=akruppa;299713]Was that with a 64-bit binary? If yes, I can't run those under Wine.
Can you run the program with -v -v -v -v and PM me the full output? Thanks.[/QUOTE] 64bit, yes. I couldn't attach the output to a PM so I'll post it here instead. |
You can compile wine with 64-bit support, and I think I may have done that earlier for another purpose. (Ubuntu 11.04.) Unfortunately, the executable requires stuff I installed into my path, so I don't think I can attach a standalone copy without a buttload of work.
Regardless, here's the instructions: [url]http://wiki.winehq.org/Wine64[/url] |
The bug which lorgix reported should be fixed in the current svn version.
|
6.4.3 has been available for about a month. Anyone compile that?
|
Any precompiled binaries for Linux? GMP-ECM, ggnfs..
Has anyone compiled 6.4.3 with MPIR 2.5.2 or 2.6.0-beta? |
There are Linux ggnfs binaries [URL="https://sites.google.com/site/bbuhrow/home/factorization-code-links"]here[/URL], and I have GMP-ECM 6.4.2 compiled against GMP 5.0.4 locally, though if you want I suppose I could compile 6.4.3 for you.
|
[QUOTE=Dubslow;317283]There are Linux ggnfs binaries [URL="https://sites.google.com/site/bbuhrow/home/factorization-code-links"]here[/URL], and I have GMP-ECM 6.4.2 compiled against GMP 5.0.4 locally, though if you want I suppose I could compile 6.4.3 for you.[/QUOTE]
It'd be very nice if you'd compile 6.4.3 with MPIR 2.6. ggnfs is working great, thanks. |
I'm trying the compile 6.4.3 against GMP 5.0.4, gcc 4.5.2, and am wondering how to achieve static linking. I threw a few `-static`s into the LINK, LTCOMPILE and LDFLAGS variables in the Makefile (not Makefile.*, I'm not sure what the difference is) but `ldd ecm` still shows it dynamically linked against GMP.
|
Use the --with=gmp= parameter for ./configure, and specify the directory under which the lib/ and and include/ directories with the GMP library and header files are, resp. E.g., --with-gmp=/usr/local/. Then GMP-ECM will link against libgmp.a.
|
Linux GMP-ECM 6.4.3, GMP 5.0.4, GCC 4.5.2
1 Attachment(s)
Ubuntu 11.04. Attached is a tar archive containing the binary, AUTHORS, COPYING, README, ChangeLog, and NEWS. It passed `make check`. Thanks of course to Alex for the compiling help. :smile:
|
[QUOTE=Dubslow;317739]Ubuntu 11.04. Attached is a tar archive containing the binary, AUTHORS, COPYING, README, ChangeLog, and NEWS. It passed `make check`. Thanks of course to Alex for the compiling help. :smile:[/QUOTE]
Thanks to both of you! A quick test showed a 2.3% speed increase in stg2. (over GMP-ECM 6.3 GMP 4.3.2 - t45 on a c237) |
Thanks to Brian Gladman compiling the binaries, the latest GMP-ECM (7.0dev SVN 2256) with MPIR 2.6.0 for 32bit and 64bit Windows for various CPUs is now available.
You can get those binaries here: [url]http://gilchrist.ca/jeff/factoring/[/url] |
[QUOTE=Jeff Gilchrist;318166]Thanks to Brian Gladman compiling the binaries, the latest GMP-ECM (7.0dev SVN 2256) with MPIR 2.6.0 for 32bit and 64bit Windows for various CPUs is now available.
You can get those binaries here: [URL]http://gilchrist.ca/jeff/factoring/[/URL][/QUOTE] Thanks to both of you! Why does the Nehalem one say "i7/i5"? I have some Clarkdale i3s. Which binary should I use for those? |
[QUOTE=lorgix;318168]Why does the Nehalem one say "i7/i5"? I have some Clarkdale i3s. Which binary should I use for those?[/QUOTE]
Sorry, because I was running out of room on the line, the i3 should work fine there too. |
[QUOTE=Jeff Gilchrist;318169]Sorry, because I was running out of room on the line, the i3 should work fine there too.[/QUOTE]
OK, thanks. A quick test suggests that the Nehalem one is ~1% faster than the Core2 one on a Clarkdale. Has '-b' been removed? |
[QUOTE=Jeff Gilchrist;318166]Thanks to Brian Gladman compiling the binaries, the latest GMP-ECM (7.0dev SVN 2256) with MPIR 2.6.0 for 32bit and 64bit Windows for various CPUs is now available.
You can get those binaries here: [url]http://gilchrist.ca/jeff/factoring/[/url][/QUOTE] What improvement is there over 6.4.3? |
[QUOTE=henryzz;318211]What improvement is there over 6.4.3?[/QUOTE]
From NEWS.txt: [CODE] Changes between GMP-ECM 6.4.2 and GMP-ECM 7.0: * The configure --enable-shellcmd option was removed, and also the --enable-memory-debug configure option (now obsolete with valgrind). * The -b and -t options were removed (breadth-first mode and trial division). * Added GPU code for Step 1 (command-line option -gpu). * Command-line option -param allows to choose the parametrization (valid values are 0, 1, 2, 3). Command-line option -sigma allows to choose the parameter. "-sigma i:s" is a shortcut to "-param i -sigma s". Use -param 0 to get historical Suyama parametrization. * The batch mode is now chosen with -param command-line option. The default parametrization depends on others command-line options. * Now possible to give curves in Weierstrass forms for Stage 1 (see README). * For P-1 stage 2, by default the NTT code is always used. * Fixed PowerPC64 assembly code with --enable-shared (thanks Leif Leonhardy) * Speedup in stage 2 with -no-ntt[/CODE](I think the top row should say 6.4.3 instead of 6.4.2, the difference between 6.4.2 and 6.4.3 is listed separately in NEWS.txt) |
I'm looking for a precompiled Ubuntu Linux64 binary of 7.0 compiled for GPU, with README, NEWS and HOWTOs...
The home site is still at 6.x Thanks :smile: Luigi |
GMP-5.1.0
A new version of [URL="http://gmplib.org"]GMP[/URL] has recently been released.
I guess ECM will not be far behind. |
[QUOTE=ET_;320234]I'm looking for a precompiled Ubuntu Linux64 binary of 7.0 compiled for GPU, with README, NEWS and HOWTOs...
The home site is still at 6.x Thanks :smile: Luigi[/QUOTE] Never mind, I compiled my own source code... Luigi |
[QUOTE=ET_;324660]Never mind, I compiled my own source code...
Luigi[/QUOTE] Care to share it with the rest of us? |
[QUOTE=lorgix;324664]Care to share it with the rest of us?[/QUOTE]
I explained it in another subthread of GMP-ECM (specifically [url]http://www.mersenneforum.org/showthread.php?p=324618#post324618[/url] ) That's how (thank you WraithX) --------- Now, I'm not sure what would cause this problem, but, since you are building these things yourself, could you try the following as a temporary work-around: 1) In your ecm directory run "make clean" 2) Then run your "./configure" again 3) Then, go into the config.h and if you find the following line: #define HAVE___GMPN_REDC_1 1 replace it with: /* #define HAVE___GMPN_REDC_1 1 */ 4) Then run "make" and "make check" to be sure those complete successfully 5) Then try your number again and let us know the results -------- Luigi |
[QUOTE=Dubslow;317739]Ubuntu 11.04. Attached is a tar archive containing the binary, AUTHORS, COPYING, README, ChangeLog, and NEWS. It passed `make check`. Thanks of course to Alex for the compiling help. :smile:[/QUOTE]
I'm using your version but do you have now an early one? |
[QUOTE=pinhodecarlos;325583]I'm using your version but do you have now an early one?[/QUOTE]
What do you mean early one? 7.0-dev perhaps? |
[QUOTE=Dubslow;325584]What do you mean early one? 7.0-dev perhaps?[/QUOTE]
Yes. |
1 Attachment(s)
Okay then.
Attached is a GMP-ECM 7.0-dev, SVN r2345 binary for GNU-Linux (x86-64), compiled with gcc 4.7.2 and statically linked against GMP 5.1.0. Documentation included. |
[QUOTE=Dubslow;325614]Okay then.
Attached is a GMP-ECM 7.0-dev, SVN r2345 binary for GNU-Linux (x86-64), compiled with gcc 4.7.2 and statically linked against GMP 5.1.0. Documentation included.[/QUOTE] Thank you. Carlos |
[QUOTE=Dubslow;325614]Attached is a GMP-ECM 7.0-dev, SVN r2345 binary for GNU-Linux (x86-64), compiled with gcc 4.7.2 and statically linked against GMP 5.1.0. Documentation included.[/QUOTE]
I don't think Bill is around these parts but could anyone else build a Linux x86_64 build from the latest SVN which has several fixes in the past year? |
[QUOTE=RichD;362418]I don't think Bill is around these parts but could anyone else build a Linux x86_64 build from the latest SVN which has several fixes in the past year?[/QUOTE]
I am also interested. Thank you in advance. |
Hi,
I'm currently investigating new applications for yoyo@home. We want to update the server code of yoyo@home in the future and this would give us the possibility to run optimized applications for specific hardware. I already set up a test project for this with the yoyo@home ecm application. With my next step I would like to update ecm to a current version and also support optimized versions (if available) since a [URL="http://www.mersenneforum.org/showpost.php?p=375191&postcount=240"]cuda version[/URL] seems to be not an option. Could someone provide me with an optimized version? Especially a recent windows one would be nice as I don't have a windows build system. I already have a recent stock gmp-ecm for Linux 64 bit. |
[QUOTE=ChristianB;375201]With my next step I would like to update ecm to a current version and also support optimized versions (if available) since a [URL="http://www.mersenneforum.org/showpost.php?p=375191&postcount=240"]cuda version[/URL] seems to be not an option.[/QUOTE]That may be the case; it may not be. On hardware that supports it the CUDA version tends to be [b]much[/b] more efficient than a pure cpu solution. I see an improvement of at least twice on a relatively lowly 460 compared with a 6-core AMD box clocked at 3.2GHz.
If I remember correctly what Cedric told me, the CC>=2.0 limitation is to do with atomic operations that could be implemented (at lower efficiency of course) in other ways on older hardware. As run-time selection of the correct code for different compute capabilities is straightforward, it shouldn't be too hard to port GMP-ECM to cc<2.0 cards. It is the case that only stage 1 can presently run under CUDA. I've already been thinking about how to incorporate this behaviour into the ECMNET framework. We (you, me, Cedric and anyone else seriously interested) should probably take this to email. Paul |
[QUOTE=xilman;375225]If I remember correctly what Cedric told me, the CC>=2.0 limitation is to do with atomic operations that could be implemented (at lower efficiency of course) in other ways on older hardware. As run-time selection of the correct code for different compute capabilities is straightforward, it shouldn't be too hard to port GMP-ECM to cc<2.0 cards.[/QUOTE]
Porting to CC<2.0 cards seems to be too much effort for what I want to do. I successfully compiled binaries for ecm-cuda for the three CC classes. I will switch my GPU for one with CC=2.1 and see if it works (for CC<=2.1). I still have to work on the possible Pipeline here. As only stage 1 is done on the GPU I then have to distribute the stage 2 work as a normal CPU app which must be a different app than the one doing stage 1 and stage 2 on CPU (because of BOINC limitations). It would be easier if ecm could call the BOINC API directly, I will investigate this a little more I think. |
I noticed a lot of binaries floating around here for Windows are linked with MPFR. Is there a reason? (vs GMP)
|
I can't speak for anyone else, but it's much simpler for me to compile with MPIR in Visual Studio on Windows. I also can't compile the GPU-enabled version in MinGW, where GMP makes more sense.
|
Most speed-comparisons I remember favor MPIR.
|
Could someone compile the ECM based on GMP 6.0 and with the option of multi-threading (OpenMP)? (for Linux 64-bit)
|
[QUOTE=Rysiu;381294]Could someone compile the ECM based on GMP 6.0 and with the option of multi-threading (OpenMP)? (for Linux 64-bit)[/QUOTE]
What do you expect multi-threading to get you that the python ECM script does not do for you already? We use the python script to set the number of independent threads for ECM, where each thread does its own curve. |
1 Attachment(s)
What a glorious day for a new ECM binary!
This one is a native binary for Haswell 4xxx/5xxx CPUs, with AVX2 support. A great deal of gratitude goes to ATH for providing the updated automated compilation environment. MPIR 2.7.0 was used for compilation of GMP-ECM 6.4.4. Of course, the native binary performed best in a preliminary benchmark (512 curves B1=1M B2=1B against C98; 5960X @ 4 GHz; YAFU 1.34): [CODE]ECM 7 SVN Nehalem: 03:41.880 Core 2.: 03:42.380 Generic: 04:20.390 ECM 6.4.4 Haswell native: 03:19.018 Core i7.......: 03:45.265 ECM 6.4.2 Core i7: 03:39.280 Core 2.: 03:45.585[/CODE] Very interested in the performance of latest dev version of ECM, but its compilation fails right now. Happy factoring! |
1 Attachment(s)
Another binary, latest SVN this time, for Haswell.
Has taken 184.36 seconds to complete the benchmark, making it the fastest Haswell binary. |
[QUOTE=Karl M Johnson;385749]Another binary, latest SVN this time, for Haswell.
Has taken 184.36 seconds to complete the benchmark, making it the fastest Haswell binary.[/QUOTE] Hmm... is gmp faster than mpir? On a Haswell 4670K: Your latest Haswell binary [URL="http://mersenneforum.org/showpost.php?p=385588&postcount=356"]here[/URL]: [code] Step 1 took 66281ms Step 2 took 20531ms [/code] My binary which I linked with GMP 6.0.0 [code] Step 1 took 50421ms Step 2 took 16688ms [/code] EDIT: Both binaries are the same GMP-ECM version. |
Well I'll be!
Mayhaps it has something to do with using beta MPIR? Or, perhaps GMP is indeed faster than MPIR? Need more data. PS Can I get that binary of yours, please? |
I'd be very surprised if GMP turned out to be faster than MPIR.
Also, I suggest you use something like a c200 for benchmarking. Anyone have a recent binary for Nehalem? |
1 Attachment(s)
[QUOTE=Karl M Johnson;385864]Well I'll be!
Mayhaps it has something to do with using beta MPIR? Or, perhaps GMP is indeed faster than MPIR? Need more data. PS Can I get that binary of yours, please?[/QUOTE] Sure. I hope my numbers are right though... I ran them both atleast twice. |
Got interesting results.
On a C100, the difference between the binaries is too little to be evident. However, on a C200: [CODE]GMP-ECM: 02:11.230 MPIR-ECM: 02:28.293 [/CODE] GMP-ECM is indeed faster on a C200 than MPIR-ECM! Well, whaddaya know :smile: |
It gets worse on a C1000:
[CODE]MRIP-ECM: 15:33.286 GMP-ECM: 12:48.195[/CODE] :no: |
[QUOTE=kracker;385866]Sure. I hope my numbers are right though... I ran them both atleast twice.[/QUOTE]
Why do I get permission denied when executing it on Windows 8.1 64-bit? :surprised: Luigi |
I updated my "automatic" GMP-ECM compiling zip-file to include GMP 6.0.0a and MPIR 2.7.0 alpha 12, and to include the newer processors in the list to choose from:
[URL="www.hoegge.dk/mersenne/gmpecmcompile.zip"]gmpecmcompile.zip[/URL] The zip-files should be extracted to the root of the c-drive: C:\. I will unpack 3 folders: msys, mingw64 and python27 and 1 bat file: c:\msys.bat. It takes about 550 Mb of space. To start it use c:\msys.bat and it will start up msys and guide from there (note it will copy python27.dll to the windows\system32 folder, so Python 2.7 can run). Just type "mpir-compile.bat" or "gmp-compile" to compile MPIR/GMP and choose the processor in the menu. Then type "gmpecm-compile.bat" to compile GMP-ECM and choose if you want GMPECM 6.4.4 or the latest svn. My timing also shows GMP 6.0.0a is faster for higher B1/B2 and higher digits: [CODE]GMP-ECM 7.0-dev SVN 2540: MPIR 2.7.0 alpha 12 vs GMP 6.0.0a B1=1000000 digits=100 MPIR Step 1 took 1264ms Step 2 took 1123ms GMP Step 1 took 1280ms Step 2 took 998ms B1=1000000 digits=200 MPIR Step 1 took 3416ms Step 2 took 2106ms GMP Step 1 took 3120ms Step 2 took 1825ms B1=1000000 digits=500 MPIR Step 1 took 22745ms Step 2 took 9687ms GMP Step 1 took 25740ms Step 2 took 8893ms B1=1000000 digits=1000 MPIR Step 1 took 90824ms Step 2 took 24679ms GMP Step 1 took 82681ms Step 2 took 23119ms B1=3000000 digits=100 MPIR Step 1 took 5741ms Step 2 took 4836ms GMP Step 1 took 5648ms Step 2 took 4383ms B1=3000000 digits=200 MPIR Step 1 took 15164ms Step 2 took 8892ms GMP Step 1 took 13744ms Step 2 took 7972ms B1=3000000 digits=500 MPIR Step 1 took 86846ms Step 2 took 27877ms GMP Step 1 took 76706ms Step 2 took 26052ms B1=3000000 digits=1000 MPIR Step 1 took 271660ms Step 2 took 60466ms GMP Step 1 took 248198ms Step 2 took 56129ms B1=11000000 digits=100 MPIR Step 1 took 20452ms Step 2 took 15101ms GMP Step 1 took 20717ms Step 2 took 14102ms B1=11000000 digits=200 MPIR Step 1 took 55474ms Step 2 took 27752ms GMP Step 1 took 50388ms Step 2 took 25288ms B1=11000000 digits=500 MPIR Step 1 took 317665ms Step 2 took 90949ms GMP Step 1 took 281160ms Step 2 took 85130ms B1=11000000 digits=1000 MPIR Step 1 took 996363ms Step 2 took 234360ms GMP Step 1 took 912917ms Step 2 took 213254ms [/CODE] |
Hmm... interesting.
Also, how much does turning ecm affect performance?(ecm-params.h) |
1 Attachment(s)
Is this normal...?
|
ASM reduction should speed things up as far as I remember.
Well, not anymore. |
[QUOTE=Karl M Johnson;386039]ASM reduction should speed things up as far as I remember.
Well, not anymore.[/QUOTE] I think it is small numbers it speeds up. |
[QUOTE=ATH;385963]I updated my "automatic" GMP-ECM compiling zip-file[/QUOTE]
Thank you again, ATH. What do I have to change in order to get it to compile without asm-redc enabled? I tried changing the three gmpecm-compile.bat files, but it didn't succeed. I would like to see if having it disabled is any faster when working on numbers > 4000. Also, is it weird that I get worse performance with both GMP 6.0.0a and MPIR 2.7.0 alpha 12 over MPIR 2.5.1? |
[QUOTE=Jayder;386833]Thank you again, ATH. What do I have to change in order to get it to compile without asm-redc enabled?[/QUOTE]
It is the file "C:\msys\1.0\home\bat\gmpecm-compile2.bat". I suggest you just search and replace the all words "enable" with "disable" to get them all (there are 28 "enable"). If you do not want to replace all, then you need to find the section for your cpu. If you press A in the cpu menu it is the ":OPT1" section, B is ":OPT2" and so on down to N for ":OPT14". Then in the correct section there are 2 configure lines, the first is just an echo line, so it is the second one at the bottom of the section. You need to remove "--enable-asm-redc" or change it to "--disable-asm-redc". Let me know if it is better without asm-redc, then I might add an option for that as well. |
Thank you. I got it to work after correcting one small error I'd made before. With it disabled, using MPIR 2.5.1, on a C4949 you shave less than 1% off of the time taken per curve. We're talking 10-25 seconds saved on a curve that takes 3200 seconds. It does add up, of course. I haven't tested any smaller numbers, though, so I'm not sure at what size it begins to benefit you.
|
[QUOTE=ATH;385963]I updated my "automatic" GMP-ECM compiling zip-file to include GMP 6.0.0a and MPIR 2.7.0 alpha 12, and to include the newer processors in the list to choose from:
[URL="www.hoegge.dk/mersenne/gmpecmcompile.zip"]gmpecmcompile.zip[/URL] [/QUOTE] The zip file appears to be corrupt now. I have tried a number of different means of downloading and different unzip tools. Please could you re-post it. |
[QUOTE=amphoria;387026]The zip file appears to be corrupt now. I have tried a number of different means of downloading and different unzip tools. Please could you re-post it.[/QUOTE]
I used 7zip to extract the files - worked fine. However, Windows 7 thinks it is a corrupt compressed folder. |
[QUOTE=Antonio;387036]I used 7zip to extract the files - worked fine. However, Windows 7 thinks it is a corrupt compressed folder.[/QUOTE]
Thanks - that worked. It appears to have been compressed with a 7-zip specific compression method. |
[QUOTE=amphoria;387039]Thanks - that worked. It appears to have been compressed with a 7-zip specific compression method.[/QUOTE]
Yes, I forgot to mention below that you need 7-zip. It is actually a .7z file because it takes like only half the space compared to compressing it with normal zip compression. But I have to manually rename .7z to .zip or my site will block it. |
Do you want an FTP spot here on the forum?
|
1 Attachment(s)
Anyone have gmp-ecm and/or ggnfs (linux) binaries for a Opteron?
I have a dual socket system with Opteron 6172. Soon one with 6166HE. It drew this nice fractal btw. (compressed image, 3% of original size) |
Lastest SVN 2745 compiled on for Haswell with GMP 6.1.0 with the following:
./configure ABI=64 CC=gcc CFLAGS="-O3 -m64 -mavx2 -mfma -march=haswell -mtune=haswell" LDFLAGS="-Wl,--stack,16777216" --build=x86_64-w64-mingw32 --disable-assert [URL="http://www.hoegge.dk/mersenne/gmpecm7-svn2745.zip"]gmpecm7-svn2745.zip[/URL] |
Lastest SVN 2745 compiled for [B]Sandy Bridge[/B] with GMP 6.1.0 with the following:
./configure ABI=64 CC=gcc CFLAGS="-O3 -m64 -mavx -march=sandybridge -mtune=sandybridge" LDFLAGS="-Wl,--stack,16777216" --build=x86_64-w64-mingw32 --disable-assert [URL="http://hoegge.dk/mersenne/gmpecm7-svn2745-sbr.zip"]gmpecm7-svn2745-sbr.zip[/URL] |
[QUOTE=ATH;417552]Lastest SVN 2745 compiled for [B]Sandy Bridge[/B] with GMP 6.1.0 with the following:
./configure ABI=64 CC=gcc CFLAGS="-O3 -m64 -mavx -march=sandybridge -mtune=sandybridge" LDFLAGS="-Wl,--stack,16777216" --build=x86_64-w64-mingw32 --disable-assert [URL="http://hoegge.dk/mersenne/gmpecm7-svn2745-sbr.zip"]gmpecm7-svn2745-sbr.zip[/URL][/QUOTE] Massive thanks! That one is almost 20% faster in stage 2 on my Sandy and Ivy Bridge processors compared to the ancient one I was using (GMP-ECM 6.4.4 with MPIR2.6.0 for processor type i7 from [URL="http://gilchrist.ca/jeff/factoring/index.html"]this page[/URL]) . I wanted to get/compile more recent ones myself, but never got around to do so. |
No problem.
Here is an svn 2745 for [B]Ivy Bridge[/B] with GMP 6.1.0 (compiled on a IB laptop I5-3320M): [URL="www.hoegge.dk/mersenne/gmpecm7-svn2745-i5-3320M-IB.zip"]gmpecm7-svn2745-i5-3320M-IB.zip[/URL] and here is another [B]Sandy Bridge[/B] but compiled on a SB Xeon E5 1620: [URL="www.hoegge.dk/mersenne/gmpecm7-svn2745-XeonE5-1620-SB.zip"]gmpecm7-svn2745-XeonE5-1620-SB-zip[/URL] The other SB below was compiled on a laptop i7-2720QM while the Haswell one was compiled on a Haswell-E 5960X. |
Can anyone provide link to precompiled Win x64 executables for Haswell CPU's family?
|
[QUOTE=VolMike;418637]Can anyone provide link to precompiled Win x64 executables for Haswell CPU's family?[/QUOTE]
See post 379, no? |
[QUOTE=VBCurtis;418640]See post 379, no?[/QUOTE]
Thank you! |
Can I request linux 64-bit binaries for IB, SB, H and AMD processors? Thank you in advance. Carlos
|
[QUOTE=VolMike;418683]Thank you![/QUOTE]
Thanks, indeed, to ATH. On my Core-M (broadwell?) laptop, his Haswell binary improved stage 2 by 25%. |
[QUOTE=ATH;417552]Lastest SVN 2745 compiled for [B]Sandy Bridge[/B] with GMP 6.1.0 with the following:
./configure ABI=64 CC=gcc CFLAGS="-O3 -m64 -mavx -march=sandybridge -mtune=sandybridge" LDFLAGS="-Wl,--stack,16777216" --build=x86_64-w64-mingw32 --disable-assert [/QUOTE] I tested your executable (SVN 2745, GMP6.1.0 SandyBridge) versus (GMP-ECM 6.4.4 MPIR2.6.0) on some Mersenne numbers with large known ECM factors (M1069, M1163, M1181), the speed differences are quite noticable. It's also good to know it finds the factors with the lucky sigmas ;) . Mersenne B1 and B2 values Stage2time 6.4.4 - SVN2745 M1069 (B1=40e6 , B2=12.7e12) 1113 sec - 790 sec M1163 (B1=500e6 , B2=15.8e12) 1,547 sec - 1,103 sec M1181 (B1=2.9e9 , B2=82.6e12) 6,967 sec - 5,101 sec [B]GMP-ECM 6.4.4 [configured with MPIR 2.6.0] [ECM][/B] [code] Resuming ECM residue saved with Prime95 Input number is 0x524EB487386A7910F4BD06831FC6E00169AD6462B2E8F3FA67871F815C1EFA553F229D464ECEE9AF1BA9DE7DFE60FFBEC3E38DF878DDE9041D8F90958054729DB7D394C3BEC0512041E7E47DD7C2964D4F86E4628B2F7D0EA6137C0DBC794C1FC46E383925D786B616E39 (256 digits) Using special division for factor of 2^1069-1 Using B1=40000000-40000000, B2=12713429328616, polynomial Dickson(30), sigma=3725672826 dF=524288, k=4, d=5705700, d2=17, i0=-9 Step 1 took 16ms Step 2 took [B]1112614ms[/B] ********** Factor found in step 2: 5557036167944892502666285821951871600803581019193074182942021552512721 Found probable prime factor of 70 digits: 5557036167944892502666285821951871600803581019193074182942021552512721 Resuming ECM residue saved with Prime95 Input number is 0x9147A2E44DC7CF72A0E935C6A5B17DB9B421E806990653A5CE2270883D931F04BC0E4B92D7C2A951DCFE8DCEBBD97C4B6A948C38A95B8E8AB435984DA07D775B77D2DF227C0178F23596DB9444226F908FC44E71AF85FCEAE217AFB8005E0750DABFCEC0EA93DD74F7B3359901CB33BEC52F607D3C521AC9851E95AAA1BE025DAC012E09 (318 digits) Using special division for factor of 2^1163-1 Using B1=500000000-500000000, B2=15892280203816, polynomial Dickson(30), sigma=3000085158 dF=524288, k=5, d=5705700, d2=17, i0=71 Step 1 took 0ms Step 2 took [B]1547358ms[/B] ********** Factor found in step 2: 1042816042941845750042952206680089794415014668329850393031910483526456487 Found probable prime factor of 73 digits: 1042816042941845750042952206680089794415014668329850393031910483526456487 Resuming ECM residue saved with Prime95 Input number is 0x1214395AD012FF6F732747927DA7F9F1684B0A4396B182F9030AC8D53DFBA4C66B6BF1F17321FE0918762863C338F490D3EEBDDE0B051E21917932F1A8A788241C1EEDDF977C28153D7FCA61364600F25C1A55E5D8D634024284477D712079C06B26B057DEE465C1004898499F274C7227E5432845DCDD5EC7 (291 digits) Using special division for factor of 2^1181-1 Using B1=2900000000-2900000000, B2=82640965106716, polynomial Dickson(30), sigma=4000027779 dF=524288, k=26, d=5705700, d2=17, i0=492 Step 1 took 0ms Step 2 took [B]6966536ms[/B] ********** Factor found in step 2: 1808422353177349564546512035512530001279481259854248860454348989451026887 Found probable prime factor of 73 digits: 1808422353177349564546512035512530001279481259854248860454348989451026887 [/code][B]GMP-ECM 7.0-dev SVN2745 [configured with GMP 6.1.0, --enable-asm-redc] [ECM][/B] [code] Resuming ECM residue saved with Prime95 Input number is 0x524EB487386A7910F4BD06831FC6E00169AD6462B2E8F3FA67871F815C1EFA553F229D464ECEE9AF1BA9DE7DFE60FFBEC3E38DF878DDE9041D8F90958054729DB7D394C3BEC0512041E7E47DD7C2964D4F86E4628B2F7D0EA6137C0DBC794C1FC46E383925D786B616E39 (256 digits) Using special division for factor of 2^1069-1 Using B1=40000000-40000000, B2=12713429328616, polynomial Dickson(30), sigma=0:3725672826 dF=524288, k=4, d=5705700, d2=17, i0=-9 Step 1 took 15ms Step 2 took [B]790442ms[/B] ********** Factor found in step 2: 5557036167944892502666285821951871600803581019193074182942021552512721 Found prime factor of 70 digits: 5557036167944892502666285821951871600803581019193074182942021552512721 Resuming ECM residue saved with Prime95 Input number is 0x9147A2E44DC7CF72A0E935C6A5B17DB9B421E806990653A5CE2270883D931F04BC0E4B92D7C2A951DCFE8DCEBBD97C4B6A948C38A95B8E8AB435984DA07D775B77D2DF227C0178F23596DB9444226F908FC44E71AF85FCEAE217AFB8005E0750DABFCEC0EA93DD74F7B3359901CB33BEC52F607D3C521AC9851E95AAA1BE025DAC012E09 (318 digits) Using special division for factor of 2^1163-1 Using B1=500000000-500000000, B2=15892280203816, polynomial Dickson(30), sigma=0:3000085158 dF=524288, k=5, d=5705700, d2=17, i0=71 Step 1 took 0ms Step 2 took [B]1102802ms[/B] ********** Factor found in step 2: 1042816042941845750042952206680089794415014668329850393031910483526456487 Found prime factor of 73 digits: 1042816042941845750042952206680089794415014668329850393031910483526456487 Resuming ECM residue saved with Prime95 Input number is 0x1214395AD012FF6F732747927DA7F9F1684B0A4396B182F9030AC8D53DFBA4C66B6BF1F17321FE0918762863C338F490D3EEBDDE0B051E21917932F1A8A788241C1EEDDF977C28153D7FCA61364600F25C1A55E5D8D634024284477D712079C06B26B057DEE465C1004898499F274C7227E5432845DCDD5EC7 (291 digits) Using special division for factor of 2^1181-1 Using B1=2900000000-2900000000, B2=82640965106716, polynomial Dickson(30), sigma=0:4000027779 dF=524288, k=26, d=5705700, d2=17, i0=492 Step 1 took 15ms Step 2 took [B]5101311ms[/B] ********** Factor found in step 2: 1808422353177349564546512035512530001279481259854248860454348989451026887 Found prime factor of 73 digits: 1808422353177349564546512035512530001279481259854248860454348989451026887 [/code] |
| All times are UTC. The time now is 23:19. |
Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.