mersenneforum.org  

Go Back   mersenneforum.org > Factoring Projects > GMP-ECM

Reply
 
Thread Tools
Old 2020-08-09, 16:28   #496
chris2be8
 
chris2be8's Avatar
 
Sep 2009

22×487 Posts
Default

Hello,

Consecutive sigmas should not be a problem. I've been running ECM-GPU on my GPUs for several years and it seems to make no difference.

The only thing I can think of is to check the ranges don't overlap (eg if colab always seeds the RNG with the same values).

If it's not that then just put down to fate. I've had enough lucky hits and unlucky misses to balance out over the long run.

Chris
chris2be8 is offline   Reply With Quote
Old 2020-09-27, 19:47   #497
EdH
 
EdH's Avatar
 
"Ed Hall"
Dec 2009
Adirondack Mtns

3,463 Posts
Default GMP-ECM Won't Compile for my System - edit: Card is arch 2.0

Edit: I'm leaving this post up in case someone else has this issue, but adding a note that the card I have is apparently rather old and is only arch 2.0. Therefore, I have given up attempting to make it useful.

GMP-ECM compiles fine without GPU. But, with "--enable-gpu" I get a "memcpy" error:
Code:
. . .
  ptxas info    : Function properties for _Z15Cuda_Ell_DblAddPA32_VjS1_S1_S1_j
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 32 registers, 12288 bytes smem, 356 bytes cmem[0]
ptxas info    : Compiling entry function '_Z16Cuda_Init_Devicev' for 'sm_50'
ptxas info    : Function properties for _Z16Cuda_Init_Devicev
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 2 registers, 320 bytes cmem[0]
ptxas info    : 384 bytes gmem, 4 bytes cmem[3]
ptxas info    : Compiling entry function '_Z15Cuda_Ell_DblAddPA32_VjS1_S1_S1_j' for 'sm_52'
ptxas info    : Function properties for _Z15Cuda_Ell_DblAddPA32_VjS1_S1_S1_j
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 32 registers, 12288 bytes smem, 356 bytes cmem[0]
ptxas info    : Compiling entry function '_Z16Cuda_Init_Devicev' for 'sm_52'
ptxas info    : Function properties for _Z16Cuda_Init_Devicev
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 2 registers, 320 bytes cmem[0]
ptxas info    : 384 bytes gmem, 4 bytes cmem[3]
ptxas info    : Compiling entry function '_Z15Cuda_Ell_DblAddPA32_VjS1_S1_S1_j' for 'sm_53'
ptxas info    : Function properties for _Z15Cuda_Ell_DblAddPA32_VjS1_S1_S1_j
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 32 registers, 12288 bytes smem, 356 bytes cmem[0]
ptxas info    : Compiling entry function '_Z16Cuda_Init_Devicev' for 'sm_53'
ptxas info    : Function properties for _Z16Cuda_Init_Devicev
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 2 registers, 320 bytes cmem[0]
/usr/include/string.h: In function 'void* __mempcpy_inline(void*, const void*, size_t)':
/usr/include/string.h:652:42: error: 'memcpy' was not declared in this scope
   return (char *) memcpy (__dest, __src, __n) + __n;
                                          ^
Makefile:2558: recipe for target 'cudakernel.lo' failed
make[2]: *** [cudakernel.lo] Error 1
make[2]: Leaving directory '/home/math99/Math/ecmgpu'
Makefile:1897: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/math99/Math/ecmgpu'
Makefile:777: recipe for target 'all' failed
make: *** [all] Error 2
Here's the "./configure" output, in case that is of help:
Code:
$ ./configure --enable-gpu --with-gmp=/usr/local/
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for a sed that does not truncate output... /bin/sed
checking for CC and CFLAGS in gmp.h... yes CC=gcc CFLAGS=-O2 -pedantic -fomit-frame-pointer -m64 -mtune=sandybridge -march=sandybridge
checking whether CC=gcc and CFLAGS=-O2 -pedantic -fomit-frame-pointer -m64 -mtune=sandybridge -march=sandybridge works... yes
checking for style of include used by make... GNU
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking whether gcc understands -c and -o together... yes
checking dependency style of gcc... gcc3
checking for gcc option to accept ISO C99... none needed
checking dependency style of gcc... gcc3
checking how to print strings... printf
checking for a sed that does not truncate output... (cached) /bin/sed
checking for fgrep... /bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking how to convert x86_64-pc-linux-gnu file names to x86_64-pc-linux-gnu format... func_convert_file_noop
checking how to convert x86_64-pc-linux-gnu file names to toolchain format... func_convert_file_noop
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for ar... ar
checking for archiver @FILE support... @
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for sysroot... no
checking for a working dd... /bin/dd
checking how to truncate binary pipes... /bin/dd bs=4096 count=1
checking for mt... mt
checking if mt is a manifest tool... no
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... no
checking whether to build static libraries... yes
checking for int64_t... yes
checking for uint64_t... yes
checking for unsigned long long int... yes
checking for long long int... yes
checking for an ANSI C-conforming const... yes
checking for inline... inline
checking whether time.h and sys/time.h may both be included... yes
checking for size_t... yes
checking if assembly code is ELF... yes
checking for suitable m4... m4
checking how to switch to text section... .text
checking how to export a symbol... .globl
checking what assembly label suffix to use... :
checking if globals are prefixed by underscore... no
checking how to switch to text section... (cached) .text
checking how to export a symbol... (cached) .globl
checking for assembler .type directive... .type    $1,@$2
checking for working alloca.h... yes
checking for alloca... yes
checking for ANSI C header files... (cached) yes
checking math.h usability... yes
checking math.h presence... yes
checking for math.h... yes
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking malloc.h usability... yes
checking malloc.h presence... yes
checking for malloc.h... yes
checking for strings.h... (cached) yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking for unistd.h... (cached) yes
checking io.h usability... no
checking io.h presence... no
checking for io.h... no
checking signal.h usability... yes
checking signal.h presence... yes
checking for signal.h... yes
checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking for windows.h... no
checking for psapi.h... no
checking ctype.h usability... yes
checking ctype.h presence... yes
checking for ctype.h... yes
checking for sys/types.h... (cached) yes
checking sys/resource.h usability... yes
checking sys/resource.h presence... yes
checking for sys/resource.h... yes
checking aio.h usability... yes
checking aio.h presence... yes
checking for aio.h... yes
checking for working strtod... yes
checking for pow in -lm... yes
checking for floor in -lm... yes
checking for sqrt in -lm... yes
checking for fmod in -lm... yes
checking for cos in -lm... yes
checking for aio_read in -lrt... yes
checking for GetProcessMemoryInfo in -lpsapi... no
checking for isascii... yes
checking for memset... yes
checking for strchr... yes
checking for strlen... yes
checking for strncasecmp... yes
checking for strstr... yes
checking for access... yes
checking for unlink... yes
checking for isspace... yes
checking for isdigit... yes
checking for isxdigit... yes
checking for time... yes
checking for ctime... yes
checking for gethostname... yes
checking for gettimeofday... yes
checking for getrusage... yes
checking for memmove... yes
checking for signal... yes
checking for fcntl... yes
checking for fileno... yes
checking for setvbuf... yes
checking for fallocate... yes
checking for aio_read... yes
checking for aio_init... yes
checking for _fseeki64... no
checking for _ftelli64... no
checking for malloc_usable_size... yes
checking gmp.h usability... yes
checking gmp.h presence... yes
checking for gmp.h... yes
checking for recent GMP... yes
checking if GMP is MPIR... no
checking whether we can link against GMP... yes
checking if gmp.h version and libgmp version are the same... (6.2.0/6.2.0) yes
checking for __gmpn_add_nc... yes
checking for __gmpn_mod_34lsub1... yes
checking for __gmpn_redc_1... yes
checking for __gmpn_redc_2... yes
checking for __gmpn_mullo_n... yes
checking for __gmpn_redc_n... yes
checking for __gmpn_preinv_mod_1... yes
checking for __gmpn_mod_1s_4p_cps... yes
checking for __gmpn_mod_1s_4p... yes
checking for __gmpn_mul_fft... yes
checking for __gmpn_fft_next_size... yes
checking for __gmpn_fft_best_k... yes
checking for __gmpn_mulmod_bnm1... yes
checking for __gmpn_mulmod_bnm1_next_size... yes
checking whether assembler supports --noexecstack option... yes
checking whether compiler knows __attribute__((hot))... yes
checking for xsltproc... no
checking whether self tests are run under valgrind... no
checking cuda.h usability... yes
checking cuda.h presence... yes
checking for cuda.h... yes
checking that CUDA Toolkit version is at least 3.0... (7.5) yes
checking for cuInit in -lcuda... yes
checking that CUDA Toolkit version and runtime version are the same... (7.5/7.5) yes
checking for nvcc... /usr/bin/nvcc
checking for compatibility between gcc and nvcc... yes
checking that nvcc know compute capability 20... yes
checking that nvcc know compute capability 21... yes
checking that nvcc know compute capability 30... yes
checking that nvcc know compute capability 32... yes
checking that nvcc know compute capability 35... yes
checking that nvcc know compute capability 37... yes
checking that nvcc know compute capability 50... yes
checking that nvcc know compute capability 52... yes
checking that nvcc know compute capability 53... yes
checking that nvcc know compute capability 60... no
checking that nvcc know compute capability 61... no
checking that nvcc know compute capability 62... no
checking that nvcc know compute capability 70... no
checking that nvcc know compute capability 72... no
checking that nvcc know compute capability 75... no
checking if nvcc know ptx instruction madc... yes
creating config.m4
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating athlon/Makefile
config.status: creating pentium4/Makefile
config.status: creating x86_64/Makefile
config.status: creating powerpc64/Makefile
config.status: creating aprtcle/Makefile
config.status: creating build.vc12/Makefile
config.status: creating build.vc12/assembler/Makefile
config.status: creating build.vc12/ecm/Makefile
config.status: creating build.vc12/ecm_gpu/Makefile
config.status: creating build.vc12/libecm/Makefile
config.status: creating build.vc12/libecm_gpu/Makefile
config.status: creating build.vc12/tune/Makefile
config.status: creating build.vc12/bench_mulredc/Makefile
config.status: creating config.h
config.status: creating ecm.h
config.status: ecm.h is unchanged
config.status: executing depfiles commands
config.status: executing libtool commands
configure: Configuration:
configure: Build for host type x86_64-pc-linux-gnu
configure: CC=gcc, CFLAGS=-W -Wall -Wundef -O2 -pedantic -fomit-frame-pointer -m64 -mtune=sandybridge -march=sandybridge -DWITH_GPU -DECM_GPU_CURVES_BY_BLOCK=16
configure: Linking GMP with /usr/local//lib/libgmp.a
configure: Using asm redc code from directory x86_64
configure: Not using SSE2 instructions in NTT code
configure: Using APRCL to prove factors prime/composite
configure: Assertions enabled
configure: Shell command execution disabled
configure: OpenMP disabled
configure: Memory debugging disabled
Any assistance would be appreciated.
Edit: Assistance no longer requested.

Last fiddled with by EdH on 2020-09-29 at 21:05 Reason: Added note about architecture - no longer pursuing use of card.
EdH is offline   Reply With Quote
Old 2020-10-10, 15:32   #498
storm5510
Random Account
 
storm5510's Avatar
 
Aug 2009
U.S.A.

25·53 Posts
Default

I have two different variations of GMP-ECM. Below are the titles each displays when they are fist started:

Quote:
GMP-ECM 7.0.4-dev [configured with MPIR 2.7.2, --enable-gpu, --enable-openmp] [ECM]

GMP-ECM 7.0.5-dev [configured with GMP 6.1.2, --enable-asm-redc] [ECM]
The compiled binaries are vastly different in size. The top is 761K bytes. The bottom is 4,396K bytes. I have two machines with the same OS, Windows 7 Pro. One is an i5 and the other is a Xeon. The top runs on both. The bottom will not run on the Xeon. Both will run on my i7 with Windows 10 Pro. I stick with the one which runs on everything.

The GPU functions in the top, I do not bother with. Only going to 2^1014 would not help anything that may go beyond.

It appears that development on GMP-ECM has stalled. If this is true, then it is very sad.

storm5510 is offline   Reply With Quote
Old 2020-10-13, 09:36   #499
kruoli
 
kruoli's Avatar
 
"Oliver"
Sep 2017
Porta Westfalica, DE

1011110012 Posts
Default

Quote:
Originally Posted by storm5510 View Post
It appears that development on GMP-ECM has stalled. If this is true, then it is very sad.
There were seven commits in the last month: http://gforge.inria.fr/activity/?group_id=135.
kruoli is online now   Reply With Quote
Old 2020-10-13, 15:16   #500
kriesel
 
kriesel's Avatar
 
"TF79LL86GIMPS96gpu17"
Mar 2017
US midwest

476610 Posts
Default

Quote:
Originally Posted by kruoli View Post
There were seven commits in the last month: http://gforge.inria.fr/activity/?group_id=135.
At a glance, those appear to me to be maintenance, not development.
kriesel is offline   Reply With Quote
Old 2020-10-13, 19:27   #501
mathwiz
 
Mar 2019

2018 Posts
Default

Quote:
Originally Posted by kriesel View Post
At a glance, those appear to me to be maintenance, not development.
It would be great to get an official comment from the primary developers about what future development, if any, is planned.
mathwiz is online now   Reply With Quote
Old 2020-10-14, 00:48   #502
SethTro
 
SethTro's Avatar
 
"Seth"
Apr 2019

3168 Posts
Default

the repository was moved to https://gitlab.inria.fr/zimmerma/ecm

as gforge.inria.fr is being deprecated.

I believe it is still being actively developed
SethTro is offline   Reply With Quote
Old 2020-10-14, 14:21   #503
storm5510
Random Account
 
storm5510's Avatar
 
Aug 2009
U.S.A.

25·53 Posts
Default

I assume if anything major comes along, it will be posted here?
storm5510 is offline   Reply With Quote
Reply

Thread Tools


Similar Threads
Thread Thread Starter Forum Replies Last Post
Running CUDA on non-Nvidia GPUs Rodrigo GPU Computing 3 2016-05-17 05:43
Error in GMP-ECM 6.4.3 and latest svn ATH GMP-ECM 10 2012-07-29 17:15
latest SVN 1677 ATH GMP-ECM 7 2012-01-07 18:34
Has anyone seen my latest treatise? davieddy Lounge 0 2011-01-21 19:29
Latest version? [CZ]Pegas Software 3 2002-08-23 17:05

All times are UTC. The time now is 23:34.

Fri Dec 4 23:34:34 UTC 2020 up 1 day, 19:45, 0 users, load averages: 1.38, 1.52, 1.50

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.

This forum has received and complied with 0 (zero) government requests for information.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation.
A copy of the license is included in the FAQ.