mersenneforum.org

mersenneforum.org (https://www.mersenneforum.org/index.php)
-   GMP-ECM (https://www.mersenneforum.org/forumdisplay.php?f=55)
-   -   Links to Precompiled GMP-ECM versions (https://www.mersenneforum.org/showthread.php?t=4087)

WraithX 2012-02-07 00:26

[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.

Batalov 2012-02-07 03:01

Indeed, runs better!

A bit difficult to get from behind a corporate firewall -- and build without aclocal/automake etc already installed. See README.dev

Karl M Johnson 2012-02-07 09:31

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.

ATH 2012-02-08 02:09

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.

lorgix 2012-02-12 15:19

[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.

Xyzzy 2012-03-14 22:59

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]

WraithX 2012-03-16 02:15

[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.

ATH 2012-03-16 16:15

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]

firejuggler 2012-03-16 16:32

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]

ATH 2012-03-16 17:44

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.

firejuggler 2012-03-16 17:52

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

Xyzzy 2012-03-16 20:18

[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!

ATH 2012-03-17 01:00

[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.

Xyzzy 2012-03-17 03:37

Thanks!

:smile:

lorgix 2012-03-21 19:27

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]

Jeff Gilchrist 2012-03-30 01:35

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]

wreck 2012-04-07 11:13

[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.

akruppa 2012-04-07 12:03

Stage 2 is slower with MPIR. We're trying to find out why.

jwaltos 2012-04-08 02:57

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

Dubslow 2012-04-09 02:07

(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?

WraithX 2012-04-09 03:12

[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.

schickel 2012-04-09 03:18

[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]

Dubslow 2012-04-09 04:03

[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!)

lorgix 2012-05-17 14:21

[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?

akruppa 2012-05-17 16:27

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?

lorgix 2012-05-17 17:06

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:

akruppa 2012-05-17 17:15

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.

lorgix 2012-05-17 17:23

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.

Dubslow 2012-05-17 17:30

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]

akruppa 2012-06-01 21:30

The bug which lorgix reported should be fixed in the current svn version.

lorgix 2012-07-19 06:26

6.4.3 has been available for about a month. Anyone compile that?

lorgix 2012-11-06 18:43

Any precompiled binaries for Linux? GMP-ECM, ggnfs..

Has anyone compiled 6.4.3 with MPIR 2.5.2 or 2.6.0-beta?

Dubslow 2012-11-06 19:08

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.

lorgix 2012-11-06 22:41

[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.

Dubslow 2012-11-08 21:16

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.

akruppa 2012-11-09 08:24

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.

Dubslow 2012-11-09 19:54

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:

lorgix 2012-11-09 20:37

[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)

Jeff Gilchrist 2012-11-13 15:28

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]

lorgix 2012-11-13 15:46

[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?

Jeff Gilchrist 2012-11-13 15:47

[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.

lorgix 2012-11-13 16:14

[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?

henryzz 2012-11-13 22:13

[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?

lorgix 2012-11-13 22:20

[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)

ET_ 2012-12-02 16:00

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

RichD 2012-12-23 02:53

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.

ET_ 2013-01-14 13:23

[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

lorgix 2013-01-14 13:36

[QUOTE=ET_;324660]Never mind, I compiled my own source code...

Luigi[/QUOTE]
Care to share it with the rest of us?

ET_ 2013-01-14 13:52

[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

pinhodecarlos 2013-01-23 20:02

[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?

Dubslow 2013-01-23 20:09

[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?

pinhodecarlos 2013-01-23 20:54

[QUOTE=Dubslow;325584]What do you mean early one? 7.0-dev perhaps?[/QUOTE]

Yes.

Dubslow 2013-01-24 00:10

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.

pinhodecarlos 2013-01-24 00:29

[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

RichD 2013-12-18 21:07

[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?

pinhodecarlos 2014-03-13 13:13

[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.

ChristianB 2014-06-06 16:38

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.

xilman 2014-06-06 20:58

[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

ChristianB 2014-06-06 22:57

[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.

kracker 2014-07-17 15:25

I noticed a lot of binaries floating around here for Windows are linked with MPFR. Is there a reason? (vs GMP)

wombatman 2014-07-17 17:15

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.

lorgix 2014-07-17 17:20

Most speed-comparisons I remember favor MPIR.

Rysiu 2014-08-24 11:48

Could someone compile the ECM based on GMP 6.0 and with the option of multi-threading (OpenMP)? (for Linux 64-bit)

VBCurtis 2014-08-24 22:38

[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.

Karl M Johnson 2014-10-20 08:23

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!

Karl M Johnson 2014-10-22 07:19

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.

kracker 2014-10-23 18:50

[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.

Karl M Johnson 2014-10-23 19:02

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?

lorgix 2014-10-23 19:12

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?

kracker 2014-10-23 19:16

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.

Karl M Johnson 2014-10-24 04:50

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:

Karl M Johnson 2014-10-24 08:32

It gets worse on a C1000:
[CODE]MRIP-ECM: 15:33.286
GMP-ECM: 12:48.195[/CODE]

:no:

ET_ 2014-10-24 09:46

[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

ATH 2014-10-24 13:51

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]

kracker 2014-10-24 18:32

Hmm... interesting.
Also, how much does turning ecm affect performance?(ecm-params.h)

kracker 2014-10-24 23:33

1 Attachment(s)
Is this normal...?

Karl M Johnson 2014-10-25 07:13

ASM reduction should speed things up as far as I remember.
Well, not anymore.

henryzz 2014-10-25 13:04

[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.

Jayder 2014-11-04 06:01

[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?

ATH 2014-11-04 09:24

[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.

Jayder 2014-11-06 08:32

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.

amphoria 2014-11-06 18:02

[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.

Antonio 2014-11-06 19:47

[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.

amphoria 2014-11-06 20:49

[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.

ATH 2014-11-08 01:20

[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.

Xyzzy 2014-11-08 03:26

Do you want an FTP spot here on the forum?

lorgix 2015-02-14 15:25

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)

ATH 2015-11-28 20:48

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]

ATH 2015-11-28 22:25

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]

VictordeHolland 2015-12-07 21:39

[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.

ATH 2015-12-08 08:30

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.

VolMike 2015-12-08 20:29

Can anyone provide link to precompiled Win x64 executables for Haswell CPU's family?

VBCurtis 2015-12-08 20:48

[QUOTE=VolMike;418637]Can anyone provide link to precompiled Win x64 executables for Haswell CPU's family?[/QUOTE]

See post 379, no?

VolMike 2015-12-09 10:35

[QUOTE=VBCurtis;418640]See post 379, no?[/QUOTE]
Thank you!

pinhodecarlos 2015-12-09 16:23

Can I request linux 64-bit binaries for IB, SB, H and AMD processors? Thank you in advance. Carlos

VBCurtis 2015-12-09 20:43

[QUOTE=VolMike;418683]Thank you![/QUOTE]

Thanks, indeed, to ATH. On my Core-M (broadwell?) laptop, his Haswell binary improved stage 2 by 25%.

VictordeHolland 2015-12-10 02:03

[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.