![]() |
![]() |
#78 |
May 2022
2·5 Posts |
![]()
Hello,
thanks for useful comments in this thread and private emails! Following some of the suggestions, I made a new git snapshot available on the homepage of the CM software at https://www.multiprecision.org/cm/ (notice that the software is called CM, although this is even more generic than fastECPP, which designates the algorithm). When file output of the certificate is chosen, the new version automatically creates a second file in Primo format. And I have added a quick primality test, which can be disabled by passing "-t" on the command line. Concerning Primo format, its documentation states that hexadecimal numbers can be prefixed by $ or 0x; so software reading Primo certificates should also handle 0x, which I chose in line with PARI/GP. The MPI version now falls into microsleep following a suggestion by Greg Childers, to avoid busy waits, which apparently are disastrous when enabling hyperthreading during the second phase. Notice that the quite efficient parallelisation of ecpp-mpi in the first phase assumes that hyperthreading is disabled - it takes decisions based on the number of effectively available cores. If you are in a situation where you cannot turn off hyperthreading, I would suggest to allocate as many MPI processes per machine as there are real cores. Cheers, Andreas Last fiddled with by andreas on 2022-05-16 at 18:10 |
![]() |
![]() |
![]() |
#79 |
"Serge"
Mar 2008
Phi(4,2^7658614+1)/2
19·232 Posts |
![]()
Welcome, Andreas!
![]() |
![]() |
![]() |
![]() |
#80 |
Bamboozled!
"๐บ๐๐ท๐ท๐ญ"
May 2003
Down not across
23×3×5×97 Posts |
![]()
As a consequence of my incompetence, the latest git version has an initial probable prime test, and a -t switch to disable that functionality.
My thanks to Andreas! |
![]() |
![]() |
![]() |
#81 |
Bemusing Prompter
"Danny"
Dec 2002
California
2·29·43 Posts |
![]()
First of all, welcome!
I do have a suggestion regarding this change: https://gitlab.inria.fr/enge/cm/-/co...773c99f1aaecc6 It doesn't really make sense to throw an error on failing the initial primality test because the purpose of this program is to determine whether or not a number is prime. Instead of giving an error message, the program should just indicate that the number is composite. |
![]() |
![]() |
![]() |
#82 | |
Jul 2003
So Cal
2,593 Posts |
![]() Quote:
|
|
![]() |
![]() |
![]() |
#83 |
Bemusing Prompter
"Danny"
Dec 2002
California
2×29×43 Posts |
![]()
Fair enough. ECPP does stand for elliptic curve primality proving after all.
Last fiddled with by ixfd64 on 2022-05-17 at 04:53 |
![]() |
![]() |
![]() |
#84 |
"Robert Gerbicz"
Oct 2005
Hungary
31138 Posts |
![]()
Used ./configure then make install
I have only ecpp in src library, what I can nicely run, using one thread. Why the ecpp.mpi is not compiled?? |
![]() |
![]() |
![]() |
#85 |
"Oliver"
Sep 2017
Porta Westfalica, DE
101001001102 Posts |
![]()
It is necessary to run ./configure --enable-mpi instead.
|
![]() |
![]() |
![]() |
#86 |
Jun 2012
Boulder, CO
52×17 Posts |
![]()
How sensitive is ecpp-mpi to latency between physical hosts?
For example, how much performance degradation would there be if some hosts are 20-30ms from the node on which mpirun ecpp-mpi ... is invoked? |
![]() |
![]() |
![]() |
#87 |
Jul 2003
So Cal
2,593 Posts |
![]()
Negligible. It's a server/client framework with comparatively long workunit times implemented using MPI.
|
![]() |
![]() |
![]() |
#88 |
Sep 2002
Database er0rr
2·33·83 Posts |
![]()
The attached code can be compiled with GWNUM (after that has compiled from P95 source) in the P95 directory
Then make the change to lib/nt.c of CM (FastECCP code): Code:
int cm_nt_is_prime (mpz_t a) { char str[60000]; if ( mpz_sizeinbase (a, 2) < 26000 ) { // is 26000 optimal? return (mpz_probab_prime_p(a, 0)>0); } strcpy (str, "/home/paul/Downloads/p95/gw_prp "); // note the space strcat (str, mpz_get_str(NULL, 10, a)); return (system(str)); } ![]() Note: running this code messes up CM's internal clock -- better to prefix the command with time to get wall time. I am pretty sure it would be way better if the code was internal to CM instead of making use of system(). Check the sanity of the code! Last fiddled with by paulunderwood on 2022-05-19 at 00:23 |
![]() |
![]() |
![]() |
Thread Tools | |
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
what is the best primality software? | bbb120 | Proth Prime Search | 75 | 2022-10-08 11:45 |
Fastest software for Mersenne primality test? | JonathanM | Information & Answers | 25 | 2020-06-16 02:47 |
APR-CL as primality proof | f1pokerspeed | FactorDB | 14 | 2014-01-09 21:06 |
Proof of Primality Test for Fermat Numbers | princeps | Math | 15 | 2012-04-02 21:49 |
PRIMALITY PROOF for Wagstaff numbers! | AntonVrba | Math | 96 | 2009-02-25 10:37 |