mersenneforum.org  

Go Back   mersenneforum.org > Great Internet Mersenne Prime Search > Software > Mlucas

Reply
 
Thread Tools
Old 2017-11-08, 18:26   #1
Damian
 
Damian's Avatar
 
May 2005
Argentina

2×3×31 Posts
Default Mlucas on ubuntu

Hi! I'd like to run mlucas on an ubuntu machine. I installed it with

Code:
sudo apt-get install mlucas
Then i cd into
Code:
~/.mlucas.d/
and I write a worktodo.ini file with this

Code:
Test=DDD21F2A0B252E499A9F9020E02FE232,11213,69,0
where the only number I understand what it means is the exponent I changed from some example I found on the net, 11213.

The I run mlucas, and this is the output I get

Code:
Old stack_limits: cur = 8388608, max = 0, [RLIM_INFINITY = 4294967295]
New stack_limits: cur = 4294967295, max = 4294967295
Old stack_limits: cur = 4294967295, max = 4294967295, [RLIM_INFINITY = 4294967295]

    Mlucas 14.1

    http://hogranch.com/mayer/README.html

INFO: testing qfloat routines...
INFO: qfloat routines using subroutine form of MUL_LOHI
CPU Family = x86, OS = Linux, 32-bit Version, compiled with Gnu C [or other compatible], Version 5.2.1 20151022.
INFO: CPU supports SSE2 instruction set, but using scalar floating-point build.
INFO: Using prefetch.
INFO: Using subroutine form of MUL_LOHI64.
INFO: MLUCAS_PATH is set to "/home/damian/.mlucas.d/"
INFO: mkdir -p "/home/damian/.mlucas.d/" succeeded
INFO: using 64-bit-significand form of floating-double rounding constant for scalar-mode DNINT emulation.
INFO: testing IMUL routines...
INFO: System has 4 available processor cores.
INFO: testing FFT radix tables...
 looking for number of threads to use in nthreads.ini file...
Using NTHREADS = #CPUs = 4.
 looking for worktodo.ini file...
 worktodo.ini file found...checking next exponent in range...
INFO: local.ini file local.ini not found.
INFO: primary restart file p11213 not found...looking for secondary...
INFO: no restart file found...starting run from scratch.
INFO: Using default value of ROCheckIter = 200000.
Mers_mod_square: Init threadpool of 4 threads
executing worker thread id 2, syscall_id = 28890
syscall_id = 28890, setaffinity[2] = 0, ISSET[2] = 1
executing worker thread id 0, syscall_id = 28888
executing worker thread id 3, syscall_id = 28891
Using 4 threads in carry step
executing worker thread id 1, syscall_id = 28889
syscall_id = 28889, setaffinity[1] = 0, ISSET[1] = 1
syscall_id = 28891, setaffinity[3] = 0, ISSET[3] = 1
syscall_id = 28888, setaffinity[0] = 0, ISSET[0] = 1
INFO: local.ini file local.ini not found.
 INFO: restart file p11213 found...reading...
INFO: RO warnings > 0.40625 detected in first 200K iterations;
Leaving error checking on for rest of the LL test of this exponent.
INFO: Using default value of ROCheckIter = 200000.

 Return with code ERR_INCORRECT_RES64		
 The error is not reproducible, but encountered a different ROE in the retry of the interval ... as this is
  an indicator of likely data corruption, quitting. Please restart the program at your earliest convenience.
ERROR: at line 2999 of file ./src/Mlucas.c
Assertion failed:  The error is not reproducible, but encountered a different ROE in the retry of the interval ... as this is
  an indicator of likely data corruption, quitting. Please restart the program at your earliest convenience.
The program exists, and I have new files p11213 p11213.stat q11213. If I run it again it shows in a loop this

Code:
Leaving error checking on for rest of the LL test of this exponent.
INFO: Using default value of ROCheckIter = 200000.
INFO: local.ini file local.ini not found.
 INFO: restart file p11213 found...reading...
INFO: RO warnings > 0.40625 detected in first 200K iterations;
Leaving error checking on for rest of the LL test of this exponent.
INFO: Using default value of ROCheckIter = 200000.
INFO: local.ini file local.ini not found.
 INFO: restart file p11213 found...reading...
INFO: RO warnings > 0.40625 detected in first 200K iterations;
Leaving error checking on for rest of the LL test of this exponent.
INFO: Using default value of ROCheckIter = 200000.
INFO: local.ini file local.ini not found.
 INFO: restart file p11213 found...reading...
INFO: RO warnings > 0.40625 detected in first 200K iterations;
Leaving error checking on for rest of the LL test of this exponent.
INFO: Using default value of ROCheckIter = 200000.
INFO: local.ini file local.ini not found.
 INFO: restart file p11213 found...reading...
INFO: RO warnings > 0.40625 detected in first 200K iterations;
Leaving error checking on for rest of the LL test of this exponent.
INFO: Using default value of ROCheckIter = 200000.
INFO: local.ini file local.ini not found.
 INFO: restart file p11213 found...reading...
INFO: RO warnings > 0.40625 detected in first 200K iterations;
Leaving error checking on for rest of the LL test of this exponent.
INFO: Using default value of ROCheckIter = 200000.
INFO: local.ini file local.ini not found.
 INFO: restart file p11213 found...reading...
INFO: RO warnings > 0.40625 detected in first 200K iterations;
Leaving error checking on for rest of the LL test of this exponent.
INFO: Using default value of ROCheckIter = 200000.
What am I doing wrong? How can I make it work?
Thanks!
Damian is offline   Reply With Quote
Old 2017-11-08, 18:46   #2
GP2
 
GP2's Avatar
 
Sep 2003

A1516 Posts
Default

The exponent 11213 is ridiculously small by modern standards. If it worked correctly, it would complete in a fraction of a second.

Perhaps the program simply hasn't been verified for such small ranges, I don't know.

Try a slightly more realistic exponent, like perhaps 6972593
GP2 is offline   Reply With Quote
Old 2017-11-08, 18:49   #3
Damian
 
Damian's Avatar
 
May 2005
Argentina

2·3·31 Posts
Default From source

I now tried compiling the source, following this guide

http://www.mersenneforum.org/mayer/README.html

I downloaded the mlucas_v17.txz file, checked the md5sum, and uncompressed it with

tar xJf mlucas_v17.txz

the I cd into /mlucas_v17/src, mkdir obj, cd obj and tried to compile with

gcc -c -O3 -DUSE_SSE2 -DUSE_THREADS ../*.c >& build.log

but when I

grep -i error build.log

I get many errors, all of them look like these

Code:
../sse2_macro_gcc32.h:710:2: error: unknown register name ‘xmm7’ in ‘asm’
../sse2_macro_gcc32.h:710:2: error: unknown register name ‘xmm6’ in ‘asm’
../sse2_macro_gcc32.h:710:2: error: unknown register name ‘xmm5’ in ‘asm’
../sse2_macro_gcc32.h:710:2: error: unknown register name ‘xmm4’ in ‘asm’
../sse2_macro_gcc32.h:710:2: error: unknown register name ‘xmm3’ in ‘asm’
../sse2_macro_gcc32.h:710:2: error: unknown register name ‘xmm2’ in ‘asm’
../sse2_macro_gcc32.h:710:2: error: unknown register name ‘xmm1’ in ‘asm’
../sse2_macro_gcc32.h:710:2: error: unknown register name ‘xmm0’ in ‘asm’
../radix09_sse_macro.h:3002:2: error: unknown register name ‘xmm7’ in ‘asm’
../radix09_sse_macro.h:3002:2: error: unknown register name ‘xmm6’ in ‘asm’
../radix09_sse_macro.h:3002:2: error: unknown register name ‘xmm5’ in ‘asm’
../radix09_sse_macro.h:3002:2: error: unknown register name ‘xmm4’ in ‘asm’
../radix09_sse_macro.h:3002:2: error: unknown register name ‘xmm3’ in ‘asm’
../radix09_sse_macro.h:3002:2: error: unknown register name ‘xmm2’ in ‘asm’
../radix09_sse_macro.h:3002:2: error: unknown register name ‘xmm1’ in ‘asm’
../radix09_sse_macro.h:3002:2: error: unknown register name ‘xmm0’ in ‘asm’
../radix09_sse_macro.h:3313:2: error: unknown register name ‘xmm7’ in ‘asm’
../radix09_sse_macro.h:3313:2: error: unknown register name ‘xmm6’ in ‘asm’
../radix09_sse_macro.h:3313:2: error: unknown register name ‘xmm5’ in ‘asm’
../radix09_sse_macro.h:3313:2: error: unknown register name ‘xmm4’ in ‘asm’
../radix09_sse_macro.h:3313:2: error: unknown register name ‘xmm3’ in ‘asm’
../radix09_sse_macro.h:3313:2: error: unknown register name ‘xmm2’ in ‘asm’
../radix09_sse_macro.h:3313:2: error: unknown register name ‘xmm1’ in ‘asm’
../radix09_sse_macro.h:3313:2: error: unknown register name ‘xmm0’ in ‘asm’
../sse2_macro_gcc32.h:710:2: error: unknown register name ‘xmm7’ in ‘asm’
../sse2_macro_gcc32.h:710:2: error: unknown register name ‘xmm6’ in ‘asm’
../sse2_macro_gcc32.h:710:2: error: unknown register name ‘xmm5’ in ‘asm’
../sse2_macro_gcc32.h:710:2: error: unknown register name ‘xmm4’ in ‘asm’
../sse2_macro_gcc32.h:710:2: error: unknown register name ‘xmm3’ in ‘asm’
../sse2_macro_gcc32.h:710:2: error: unknown register name ‘xmm2’ in ‘asm’
../sse2_macro_gcc32.h:710:2: error: unknown register name ‘xmm1’ in ‘asm’
../sse2_macro_gcc32.h:710:2: error: unknown register name ‘xmm0’ in ‘asm’
../sse2_macro_gcc32.h:1120:2: error: unknown register name ‘xmm7’ in ‘asm’
../sse2_macro_gcc32.h:1120:2: error: unknown register name ‘xmm6’ in ‘asm’
../sse2_macro_gcc32.h:1120:2: error: unknown register name ‘xmm5’ in ‘asm’
../sse2_macro_gcc32.h:1120:2: error: unknown register name ‘xmm4’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm0’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm7’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm6’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm5’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm4’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm3’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm2’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm1’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm0’ in ‘asm’
../radix8_dif_dit_pass_asm.h:2489:2: error: unknown register name ‘xmm7’ in ‘asm’
../radix8_dif_dit_pass_asm.h:2489:2: error: unknown register name ‘xmm6’ in ‘asm’
../radix8_dif_dit_pass_asm.h:2489:2: error: unknown register name ‘xmm5’ in ‘asm’
../radix8_dif_dit_pass_asm.h:2489:2: error: unknown register name ‘xmm4’ in ‘asm’
../radix8_dif_dit_pass_asm.h:2489:2: error: unknown register name ‘xmm3’ in ‘asm’
../radix8_dif_dit_pass_asm.h:2489:2: error: unknown register name ‘xmm2’ in ‘asm’
../radix8_dif_dit_pass_asm.h:2489:2: error: unknown register name ‘xmm1’ in ‘asm’
../radix8_dif_dit_pass_asm.h:2489:2: error: unknown register name ‘xmm0’ in ‘asm’
../radix8_dif_dit_pass_asm.h:2736:2: error: unknown register name ‘xmm7’ in ‘asm’
../radix8_dif_dit_pass_asm.h:2736:2: error: unknown register name ‘xmm6’ in ‘asm’
../radix8_dif_dit_pass_asm.h:2736:2: error: unknown register name ‘xmm5’ in ‘asm’
../radix8_dif_dit_pass_asm.h:2736:2: error: unknown register name ‘xmm4’ in ‘asm’
../radix8_dif_dit_pass_asm.h:2736:2: error: unknown register name ‘xmm3’ in ‘asm’
../radix8_dif_dit_pass_asm.h:2736:2: error: unknown register name ‘xmm2’ in ‘asm’
../radix8_dif_dit_pass_asm.h:2736:2: error: unknown register name ‘xmm1’ in ‘asm’
../radix8_dif_dit_pass_asm.h:2736:2: error: unknown register name ‘xmm0’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm7’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm6’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm5’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm4’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm3’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm2’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm1’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm0’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm7’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm6’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm5’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm4’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm3’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm2’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm1’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm0’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm7’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm6’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm5’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm4’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm3’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm2’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm1’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm0’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm7’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm6’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm5’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm4’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm3’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm2’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm1’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm0’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm7’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm6’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm5’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm4’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm3’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm2’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm1’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm0’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm7’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm6’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm5’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm4’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm3’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm2’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm1’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm0’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm7’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm6’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm5’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm4’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm3’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm2’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm1’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm0’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm7’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm6’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm5’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm4’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm3’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm2’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm1’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm0’ in ‘asm’
../carry_gcc32.h:1412:2: error: unknown register name ‘xmm7’ in ‘asm’
../carry_gcc32.h:1412:2: error: unknown register name ‘xmm6’ in ‘asm’
../carry_gcc32.h:1412:2: error: unknown register name ‘xmm5’ in ‘asm’
../carry_gcc32.h:1412:2: error: unknown register name ‘xmm4’ in ‘asm’
../carry_gcc32.h:1412:2: error: unknown register name ‘xmm3’ in ‘asm’
../carry_gcc32.h:1412:2: error: unknown register name ‘xmm2’ in ‘asm’
../carry_gcc32.h:1412:2: error: unknown register name ‘xmm1’ in ‘asm’
../carry_gcc32.h:1412:2: error: unknown register name ‘xmm0’ in ‘asm’
../carry_gcc32.h:1639:2: error: unknown register name ‘xmm7’ in ‘asm’
../carry_gcc32.h:1639:2: error: unknown register name ‘xmm6’ in ‘asm’
../carry_gcc32.h:1639:2: error: unknown register name ‘xmm5’ in ‘asm’
../carry_gcc32.h:1639:2: error: unknown register name ‘xmm4’ in ‘asm’
../carry_gcc32.h:1639:2: error: unknown register name ‘xmm3’ in ‘asm’
../carry_gcc32.h:1639:2: error: unknown register name ‘xmm2’ in ‘asm’
../carry_gcc32.h:1639:2: error: unknown register name ‘xmm1’ in ‘asm’
../carry_gcc32.h:1639:2: error: unknown register name ‘xmm0’ in ‘asm’
../carry_gcc32.h:340:2: error: unknown register name ‘xmm7’ in ‘asm’
../carry_gcc32.h:340:2: error: unknown register name ‘xmm6’ in ‘asm’
../carry_gcc32.h:340:2: error: unknown register name ‘xmm5’ in ‘asm’
../carry_gcc32.h:340:2: error: unknown register name ‘xmm4’ in ‘asm’
../carry_gcc32.h:340:2: error: unknown register name ‘xmm3’ in ‘asm’
../carry_gcc32.h:340:2: error: unknown register name ‘xmm2’ in ‘asm’
../carry_gcc32.h:340:2: error: unknown register name ‘xmm1’ in ‘asm’
../carry_gcc32.h:340:2: error: unknown register name ‘xmm0’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm7’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm6’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm5’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm4’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm3’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm2’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm1’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm0’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm7’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm6’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm5’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm4’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm3’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm2’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm1’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm0’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm7’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm6’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm5’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm4’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm3’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm2’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm1’ in ‘asm’
../sse2_macro_gcc32.h:595:2: error: unknown register name ‘xmm0’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm7’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm6’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm5’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm4’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm3’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm2’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm1’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm0’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm7’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm6’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm5’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm4’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm3’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm2’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm1’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm0’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm7’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm6’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm5’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm4’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm3’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm2’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm1’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm0’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm7’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm6’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm5’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm4’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm3’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm2’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm1’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm0’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm7’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm6’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm5’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm4’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm3’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm2’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm1’ in ‘asm’
../sse2_macro_gcc32.h:280:2: error: unknown register name ‘xmm0’ in ‘asm’
../twopmodq80.c:1274:2: error: unknown register name ‘xmm6’ in ‘asm’
../twopmodq80.c:1274:2: error: unknown register name ‘xmm5’ in ‘asm’
../twopmodq80.c:1274:2: error: unknown register name ‘xmm3’ in ‘asm’
../twopmodq80.c:1274:2: error: unknown register name ‘xmm2’ in ‘asm’
../twopmodq80.c:1274:2: error: unknown register name ‘xmm1’ in ‘asm’
../twopmodq80.c:1274:2: error: unknown register name ‘xmm0’ in ‘asm’
../twopmodq80.c:1391:2: error: unknown register name ‘xmm6’ in ‘asm’
../twopmodq80.c:1391:2: error: unknown register name ‘xmm2’ in ‘asm’
../twopmodq80.c:1391:2: error: unknown register name ‘xmm1’ in ‘asm’
../twopmodq80.c:1391:2: error: unknown register name ‘xmm0’ in ‘asm’
../twopmodq80.c:1580:2: error: unknown register name ‘xmm7’ in ‘asm’
../twopmodq80.c:1580:2: error: unknown register name ‘xmm3’ in ‘asm’
../twopmodq80.c:1580:2: error: unknown register name ‘xmm2’ in ‘asm’
../twopmodq80.c:1580:2: error: unknown register name ‘xmm1’ in ‘asm’
../twopmodq80.c:1580:2: error: unknown register name ‘xmm0’ in ‘asm’
../twopmodq80.c:2386:2: error: unknown register name ‘xmm7’ in ‘asm’
../twopmodq80.c:2386:2: error: unknown register name ‘xmm6’ in ‘asm’
../twopmodq80.c:2386:2: error: unknown register name ‘xmm5’ in ‘asm’
../twopmodq80.c:2386:2: error: unknown register name ‘xmm4’ in ‘asm’
../twopmodq80.c:2386:2: error: unknown register name ‘xmm3’ in ‘asm’
../twopmodq80.c:2386:2: error: unknown register name ‘xmm2’ in ‘asm’
../twopmodq80.c:2386:2: error: unknown register name ‘xmm1’ in ‘asm’
../twopmodq80.c:2386:2: error: unknown register name ‘xmm0’ in ‘asm’
../twopmodq80.c:2543:3: error: unknown register name ‘xmm6’ in ‘asm’
../twopmodq80.c:2543:3: error: unknown register name ‘xmm5’ in ‘asm’
../twopmodq80.c:2543:3: error: unknown register name ‘xmm4’ in ‘asm’
../twopmodq80.c:2543:3: error: unknown register name ‘xmm3’ in ‘asm’
../twopmodq80.c:2543:3: error: unknown register name ‘xmm2’ in ‘asm’
../twopmodq80.c:2543:3: error: unknown register name ‘xmm1’ in ‘asm’
../twopmodq80.c:2543:3: error: unknown register name ‘xmm0’ in ‘asm’
../twopmodq80.c:2932:3: error: unknown register name ‘xmm7’ in ‘asm’
../twopmodq80.c:2932:3: error: unknown register name ‘xmm6’ in ‘asm’
../twopmodq80.c:2932:3: error: unknown register name ‘xmm5’ in ‘asm’
../twopmodq80.c:2932:3: error: unknown register name ‘xmm4’ in ‘asm’
../twopmodq80.c:2932:3: error: unknown register name ‘xmm3’ in ‘asm’
../twopmodq80.c:2932:3: error: unknown register name ‘xmm2’ in ‘asm’
../twopmodq80.c:2932:3: error: unknown register name ‘xmm1’ in ‘asm’
../twopmodq80.c:2932:3: error: unknown register name ‘xmm0’ in ‘asm’
I'm not sure if it is important, but I think this old computer is 32-bit only.
Damian is offline   Reply With Quote
Old 2017-11-08, 19:37   #4
GP2
 
GP2's Avatar
 
Sep 2003

50258 Posts
Default

I get the similar errors when trying to compile Mlucas v17 on Amazon Linux 2017.09.0 on a c5 instance, except it complains about xmm16 through xmm31

On this OS, the output of gcc -v shows that it's gcc version 4.8.5 20150623


Whereas on Ubuntu 17.10, I can compile it just fine on a Skylake machine, using the command

Code:
gcc -c -O3 -DUSE_AVX512 -DUSE_THREADS -march=skylake-avx512 -mtune=skylake-avx512 ../*.c >& bu
ild.log
On that computer, the output of gcc -v shows that this is gcc version 7.2.0


On your computer, what do you get when you run the command gcc -v

And what do you see when you run the command grep flags /proc/cpuinfo

Last fiddled with by GP2 on 2017-11-08 at 19:38
GP2 is offline   Reply With Quote
Old 2017-11-08, 19:46   #5
Damian
 
Damian's Avatar
 
May 2005
Argentina

2728 Posts
Default

Quote:
Originally Posted by GP2 View Post
The exponent 11213 is ridiculously small by modern standards. If it worked correctly, it would complete in a fraction of a second.

Perhaps the program simply hasn't been verified for such small ranges, I don't know.

Try a slightly more realistic exponent, like perhaps 6972593

I am running with the exponent 6972593 now. I can see it writes to the file p6972593 from time to time. But how do I know what percentage/iteration is running now? For the time being this is the output on the console

Code:
Old stack_limits: cur = 8388608, max = 0, [RLIM_INFINITY = 4294967295]
New stack_limits: cur = 4294967295, max = 4294967295
Old stack_limits: cur = 4294967295, max = 4294967295, [RLIM_INFINITY = 4294967295]

    Mlucas 14.1

    http://hogranch.com/mayer/README.html

INFO: testing qfloat routines...
INFO: qfloat routines using subroutine form of MUL_LOHI
CPU Family = x86, OS = Linux, 32-bit Version, compiled with Gnu C [or other compatible], Version 5.2.1 20151022.
INFO: CPU supports SSE2 instruction set, but using scalar floating-point build.
INFO: Using prefetch.
INFO: Using subroutine form of MUL_LOHI64.
INFO: MLUCAS_PATH is set to "/home/damian/.mlucas.d/"
INFO: mkdir -p "/home/damian/.mlucas.d/" succeeded
INFO: using 64-bit-significand form of floating-double rounding constant for scalar-mode DNINT emulation.
INFO: testing IMUL routines...
INFO: System has 4 available processor cores.
INFO: testing FFT radix tables...
 looking for number of threads to use in nthreads.ini file...
Using NTHREADS = #CPUs = 4.
 looking for worktodo.ini file...
 worktodo.ini file found...checking next exponent in range...

 Return with code ERR_RUN_SELFTEST_FORLENGTH	

           Mlucas selftest running.....


**** You will need to manually verify that the Res64s output
**** for this user-set p match for all FFT radix combinations!!


/****************************************************************************/

NTHREADS = 4
M7036339: using FFT length 352K = 360448 8-byte floats.
 this gives an average   19.521093195134942 bits per digit
Using complex FFT radices        44        16        16        16
mers_mod_square: radix_vec0/2 not exactly divisible by NTHREADS - This will hurt performance.
executing worker thread id 0, syscall_id = 29976
Mers_mod_square: Init threadpool of 4 threads
executing worker thread id 1, syscall_id = 29977
syscall_id = 29977, setaffinity[1] = 0, ISSET[1] = 1
executing worker thread id 2, syscall_id = 29978
executing worker thread id 3, syscall_id = 29979
syscall_id = 29979, setaffinity[3] = 0, ISSET[3] = 1
syscall_id = 29976, setaffinity[0] = 0, ISSET[0] = 1
syscall_id = 29978, setaffinity[2] = 0, ISSET[2] = 1
executing worker thread id 0, syscall_id = 29980
Using 4 threads in carry step
executing worker thread id 1, syscall_id = 29981
syscall_id = 29981, setaffinity[1] = 0, ISSET[1] = 1
syscall_id = 29980, setaffinity[0] = 0, ISSET[0] = 1
executing worker thread id 3, syscall_id = 29983
executing worker thread id 2, syscall_id = 29982
syscall_id = 29982, setaffinity[2] = 0, ISSET[2] = 1
syscall_id = 29983, setaffinity[3] = 0, ISSET[3] = 1
100 iterations of M7036339 with FFT length 360448 = 352 K
Res64: D6A226BAB5E14D62. AvgMaxErr = 0.203695922. MaxErr = 0.274047852. Program: E14.1
Res mod 2^36     =          46001114466
Res mod 2^35 - 1 =           9444972171
Res mod 2^36 - 1 =          28639488018
Clocks = 00:00:01.688

NTHREADS = 4
 looking for worktodo.ini file...
 worktodo.ini file found...checking next exponent in range...
INFO: local.ini file local.ini not found.
INFO: primary restart file p6972593 not found...looking for secondary...
INFO: no restart file found...starting run from scratch.
INFO: Using default value of ROCheckIter = 200000.
mers_mod_square: radix_vec0/2 not exactly divisible by NTHREADS - This will hurt performance.
executing worker thread id 1, syscall_id = 29985
syscall_id = 29985, setaffinity[1] = 0, ISSET[1] = 1
executing worker thread id 2, syscall_id = 29986
Mers_mod_square: Init threadpool of 4 threads
executing worker thread id 0, syscall_id = 29984
syscall_id = 29986, setaffinity[2] = 0, ISSET[2] = 1
executing worker thread id 3, syscall_id = 29987
syscall_id = 29987, setaffinity[3] = 0, ISSET[3] = 1
syscall_id = 29984, setaffinity[0] = 0, ISSET[0] = 1
executing worker thread id 0, syscall_id = 29988
Using 4 threads in carry step
executing worker thread id 1, syscall_id = 29989
executing worker thread id 2, syscall_id = 29990
syscall_id = 29990, setaffinity[2] = 0, ISSET[2] = 1
executing worker thread id 3, syscall_id = 29991
syscall_id = 29991, setaffinity[3] = 0, ISSET[3] = 1
syscall_id = 29989, setaffinity[1] = 0, ISSET[1] = 1
syscall_id = 29988, setaffinity[0] = 0, ISSET[0] = 1
Quote:
Originally Posted by GP2 View Post
On your computer, what do you get when you run the command gcc -v

And what do you see when you run the command grep flags /proc/cpuinfo
This is the output of gcc -v

Code:
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/i686-linux-gnu/5/lto-wrapper
Target: i686-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 5.4.0-6ubuntu1~16.04.5' --with-bugurl=file:///usr/share/doc/gcc-5/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-5 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-5-i386/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-5-i386 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-5-i386 --with-arch-directory=i386 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-targets=all --enable-multiarch --disable-werror --with-arch-32=i686 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-checking=release --build=i686-linux-gnu --host=i686-linux-gnu --target=i686-linux-gnu
Thread model: posix
gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.5)
And this is the output of grep flags /proc/cpuinfo

Code:
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm 3dnowext 3dnow constant_tsc rep_good nonstop_tsc extd_apicid pni monitor cx16 popcnt lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt hw_pstate vmmcall npt lbrv svm_lock nrip_save
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm 3dnowext 3dnow constant_tsc rep_good nonstop_tsc extd_apicid pni monitor cx16 popcnt lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt hw_pstate vmmcall npt lbrv svm_lock nrip_save
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm 3dnowext 3dnow constant_tsc rep_good nonstop_tsc extd_apicid pni monitor cx16 popcnt lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt hw_pstate vmmcall npt lbrv svm_lock nrip_save
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm 3dnowext 3dnow constant_tsc rep_good nonstop_tsc extd_apicid pni monitor cx16 popcnt lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt hw_pstate vmmcall npt lbrv svm_lock nrip_save
Damian is offline   Reply With Quote
Old 2017-11-08, 19:51   #6
Damian
 
Damian's Avatar
 
May 2005
Argentina

2×3×31 Posts
Default

If I compile with

Code:
gcc -c -O3 -DUSE_AVX512 -DUSE_THREADS -march=skylake-avx512 -mtune=skylake-avx512 ../*.c >& build.log
this is the output of grep -i error build.log

Code:
../br.c:1:0: error: bad value (skylake-avx512) for -march= switch
../br.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../dft_macro.c:1:0: error: bad value (skylake-avx512) for -march= switch
../dft_macro.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../factor.c:1:0: error: bad value (skylake-avx512) for -march= switch
../factor.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../fermat_mod_square.c:1:0: error: bad value (skylake-avx512) for -march= switch
../fermat_mod_square.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../fgt_m61.c:1:0: error: bad value (skylake-avx512) for -march= switch
../fgt_m61.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../gcd_lehmer.c:1:0: error: bad value (skylake-avx512) for -march= switch
../gcd_lehmer.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../get_cpuid.c:1:0: error: bad value (skylake-avx512) for -march= switch
../get_cpuid.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../get_fft_radices.c:1:0: error: bad value (skylake-avx512) for -march= switch
../get_fft_radices.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../get_fp_rnd_const.c:1:0: error: bad value (skylake-avx512) for -march= switch
../get_fp_rnd_const.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../get_preferred_fft_radix.c:1:0: error: bad value (skylake-avx512) for -march= switch
../get_preferred_fft_radix.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../getRealTime.c:1:0: error: bad value (skylake-avx512) for -march= switch
../getRealTime.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../imul_macro.c:1:0: error: bad value (skylake-avx512) for -march= switch
../imul_macro.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../mers_mod_square.c:1:0: error: bad value (skylake-avx512) for -march= switch
../mers_mod_square.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../mi64.c:1:0: error: bad value (skylake-avx512) for -march= switch
../mi64.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../Mlucas.c:1:0: error: bad value (skylake-avx512) for -march= switch
../Mlucas.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../pairFFT_mul.c:1:0: error: bad value (skylake-avx512) for -march= switch
../pairFFT_mul.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../qfloat.c:1:0: error: bad value (skylake-avx512) for -march= switch
../qfloat.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix1008_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix1008_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix1024_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix1024_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix104_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix104_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix10_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix10_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix112_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix112_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix11_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix11_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix120_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix120_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix128_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix128_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix12_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix12_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix13_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix13_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix144_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix144_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix14_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix14_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix15_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix15_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix160_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix160_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix16_dif_dit_pass.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix16_dif_dit_pass.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix16_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix16_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix16_dyadic_square.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix16_dyadic_square.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix16_pairFFT_mul.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix16_pairFFT_mul.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix16_wrapper_ini.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix16_wrapper_ini.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix16_wrapper_square.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix16_wrapper_square.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix176_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix176_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix18_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix18_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix192_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix192_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix208_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix208_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix20_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix20_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix224_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix224_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix22_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix22_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix240_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix240_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix24_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix24_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix256_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix256_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix26_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix26_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix288_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix288_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix28_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix28_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix30_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix30_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix31_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix31_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix32_dif_dit_pass.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix32_dif_dit_pass.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix32_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix32_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix32_dyadic_square.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix32_dyadic_square.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix32_wrapper_ini.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix32_wrapper_ini.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix32_wrapper_square.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix32_wrapper_square.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix36_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix36_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix4032_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix4032_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix40_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix40_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix44_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix44_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix48_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix48_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix512_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix512_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix52_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix52_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix56_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix56_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix5_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix5_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix60_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix60_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix63_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix63_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix64_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix64_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix6_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix6_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix72_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix72_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix768_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix768_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix7_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix7_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix80_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix80_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix88_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix88_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix8_dif_dit_pass.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix8_dif_dit_pass.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix8_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix8_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix960_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix960_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix96_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix96_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix992_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix992_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../radix9_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -march= switch
../radix9_ditN_cy_dif1.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../rng_isaac.c:1:0: error: bad value (skylake-avx512) for -march= switch
../rng_isaac.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../test_fft_radix.c:1:0: error: bad value (skylake-avx512) for -march= switch
../test_fft_radix.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../threadpool.c:1:0: error: bad value (skylake-avx512) for -march= switch
../threadpool.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../twopmodq100.c:1:0: error: bad value (skylake-avx512) for -march= switch
../twopmodq100.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../twopmodq128_96.c:1:0: error: bad value (skylake-avx512) for -march= switch
../twopmodq128_96.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../twopmodq128.c:1:0: error: bad value (skylake-avx512) for -march= switch
../twopmodq128.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../twopmodq160.c:1:0: error: bad value (skylake-avx512) for -march= switch
../twopmodq160.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../twopmodq192.c:1:0: error: bad value (skylake-avx512) for -march= switch
../twopmodq192.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../twopmodq256.c:1:0: error: bad value (skylake-avx512) for -march= switch
../twopmodq256.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../twopmodq64_test.c:1:0: error: bad value (skylake-avx512) for -march= switch
../twopmodq64_test.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../twopmodq80.c:1:0: error: bad value (skylake-avx512) for -march= switch
../twopmodq80.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../twopmodq96.c:1:0: error: bad value (skylake-avx512) for -march= switch
../twopmodq96.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../twopmodq.c:1:0: error: bad value (skylake-avx512) for -march= switch
../twopmodq.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../types.c:1:0: error: bad value (skylake-avx512) for -march= switch
../types.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
../util.c:1:0: error: bad value (skylake-avx512) for -march= switch
../util.c:1:0: error: bad value (skylake-avx512) for -mtune= switch
Damian is offline   Reply With Quote
Old 2017-11-08, 20:19   #7
GP2
 
GP2's Avatar
 
Sep 2003

1010000101012 Posts
Default

Quote:
I am running with the exponent 6972593 now. I can see it writes to the file p6972593 from time to time. But how do I know what percentage/iteration is running now?
Look at the file which ends in .stat

It should be called p6972593.stat

Quote:
Originally Posted by Damian View Post
If I compile with [ -DUSE_AVX512 ]
You shouldn't compile with AVX512 since you don't have a Skylake machine. If you did, that would show up as one or more "avx512" items in the flags output.

On the other hand, the flags output shows your machine supports SSE2, so your original compile command should have worked.

The author of Mlucas is active on MersenneForum, but right now he's busy finalizing some ARM code, and so might not be able to address these issues in the near future.


You could still try the packaged version (which is based on Mlucas version 14), it might work if you try more realistic exponents, in the millions or tens of millions range.

But you might also want to consider mprime, which is faster than Mlucas on most hardware. Mlucas is a bit more competitive on the newest Skylake machines since Mlucas v17 takes advantage of AVX512, while mprime hasn't been updated to do so. But since you have an older machine, mprime is a better choice.

Last fiddled with by GP2 on 2017-11-08 at 20:22
GP2 is offline   Reply With Quote
Old 2017-11-08, 21:41   #8
Damian
 
Damian's Avatar
 
May 2005
Argentina

101110102 Posts
Default

Thanks. Yes, it seems the binary install of Mlucas 14.1 is running fine, this is the output so far of p6972593.stat

Code:
INFO: no restart file found...starting run from scratch.
M6972593: using FFT length 352K = 360448 8-byte floats.
 this gives an average   19.344241055575285 bits per digit
Using complex FFT radices        44        16        16        16
[Nov 08 15:54:13] M6972593 Iter# = 10000 clocks = 00:02:50.160 [  0.0170 sec/iter] Res64: 88F1D2640ADB89E1. AvgMaxErr = 0.159919499. MaxErr = 0.258438110
[Nov 08 15:56:52] M6972593 Iter# = 20000 clocks = 00:02:38.790 [  0.0159 sec/iter] Res64: 9B345731827B9A25. AvgMaxErr = 0.160369828. MaxErr = 0.260711670
[Nov 08 15:59:31] M6972593 Iter# = 30000 clocks = 00:02:38.892 [  0.0159 sec/iter] Res64: CE5BA3E233214969. AvgMaxErr = 0.160501188. MaxErr = 0.249908447
[Nov 08 16:02:12] M6972593 Iter# = 40000 clocks = 00:02:40.736 [  0.0161 sec/iter] Res64: 026EFA56C441ED7E. AvgMaxErr = 0.160377773. MaxErr = 0.254302979
[Nov 08 16:05:16] M6972593 Iter# = 50000 clocks = 00:03:04.715 [  0.0185 sec/iter] Res64: 47F7A70A1CCC0A62. AvgMaxErr = 0.160594896. MaxErr = 0.251647949
[Nov 08 16:08:01] M6972593 Iter# = 60000 clocks = 00:02:44.451 [  0.0164 sec/iter] Res64: 6F82ECB5DF548A2A. AvgMaxErr = 0.160351937. MaxErr = 0.242538452
[Nov 08 16:11:05] M6972593 Iter# = 70000 clocks = 00:03:03.530 [  0.0184 sec/iter] Res64: 959EF0288AE4F218. AvgMaxErr = 0.160414728. MaxErr = 0.242401123
[Nov 08 16:14:16] M6972593 Iter# = 80000 clocks = 00:03:10.938 [  0.0191 sec/iter] Res64: 35C0D448FE3B2A82. AvgMaxErr = 0.160388560. MaxErr = 0.238533020
[Nov 08 16:17:21] M6972593 Iter# = 90000 clocks = 00:03:05.513 [  0.0186 sec/iter] Res64: 006A4D6BDD6D88A2. AvgMaxErr = 0.160677370. MaxErr = 0.248703003
[Nov 08 16:20:09] M6972593 Iter# = 100000 clocks = 00:02:47.452 [  0.0167 sec/iter] Res64: D96976DA492DD84B. AvgMaxErr = 0.160484017. MaxErr = 0.283203125
[Nov 08 16:23:06] M6972593 Iter# = 110000 clocks = 00:02:56.952 [  0.0177 sec/iter] Res64: BCBCA8BFFDF04F4C. AvgMaxErr = 0.160297382. MaxErr = 0.288497925
[Nov 08 16:25:45] M6972593 Iter# = 120000 clocks = 00:02:39.696 [  0.0160 sec/iter] Res64: A3DB9FF4BA4E053F. AvgMaxErr = 0.160336920. MaxErr = 0.246566772
[Nov 08 16:28:40] M6972593 Iter# = 130000 clocks = 00:02:54.640 [  0.0175 sec/iter] Res64: 506AEDBBAE3C6863. AvgMaxErr = 0.160377873. MaxErr = 0.251712799
[Nov 08 16:31:37] M6972593 Iter# = 140000 clocks = 00:02:56.810 [  0.0177 sec/iter] Res64: C20D0DCBD5CB340F. AvgMaxErr = 0.160518240. MaxErr = 0.256835938
[Nov 08 16:34:16] M6972593 Iter# = 150000 clocks = 00:02:39.201 [  0.0159 sec/iter] Res64: 9166B52B8E6A12DF. AvgMaxErr = 0.160468196. MaxErr = 0.262115479
[Nov 08 16:37:12] M6972593 Iter# = 160000 clocks = 00:02:55.448 [  0.0175 sec/iter] Res64: D137E96E1BC11E30. AvgMaxErr = 0.160501154. MaxErr = 0.259613037
[Nov 08 16:40:07] M6972593 Iter# = 170000 clocks = 00:02:54.940 [  0.0175 sec/iter] Res64: 2DEC7F199B2B5FE0. AvgMaxErr = 0.160288604. MaxErr = 0.247787476
[Nov 08 16:42:58] M6972593 Iter# = 180000 clocks = 00:02:51.034 [  0.0171 sec/iter] Res64: 39C6770D92D7BDCC. AvgMaxErr = 0.160659555. MaxErr = 0.237014771
[Nov 08 16:46:06] M6972593 Iter# = 190000 clocks = 00:03:08.413 [  0.0188 sec/iter] Res64: EF2E0C9C088370D0. AvgMaxErr = 0.160616725. MaxErr = 0.259323120
[Nov 08 16:49:16] M6972593 Iter# = 200000 clocks = 00:03:09.519 [  0.0190 sec/iter] Res64: 87D2D0D2B81517A8. AvgMaxErr = 0.160641979. MaxErr = 0.241500854
[Nov 08 16:52:29] M6972593 Iter# = 210000 clocks = 00:03:13.115 [  0.0193 sec/iter] Res64: B2BFB122833B8776. AvgMaxErr = 0.160566632. MaxErr = 0.277709961
[Nov 08 16:55:08] M6972593 Iter# = 220000 clocks = 00:02:38.667 [  0.0159 sec/iter] Res64: B8B116FF66005C5D. AvgMaxErr = 0.160411763. MaxErr = 0.235961914
[Nov 08 16:58:03] M6972593 Iter# = 230000 clocks = 00:02:55.273 [  0.0175 sec/iter] Res64: 9F17A7C7D46338C6. AvgMaxErr = 0.160398066. MaxErr = 0.253250122
[Nov 08 17:00:45] M6972593 Iter# = 240000 clocks = 00:02:41.871 [  0.0162 sec/iter] Res64: DD680C64B1F2475A. AvgMaxErr = 0.160384577. MaxErr = 0.240478516
[Nov 08 17:03:41] M6972593 Iter# = 250000 clocks = 00:02:55.968 [  0.0176 sec/iter] Res64: 35380A283F796D25. AvgMaxErr = 0.160329223. MaxErr = 0.248153687
[Nov 08 17:06:38] M6972593 Iter# = 260000 clocks = 00:02:56.952 [  0.0177 sec/iter] Res64: D84FD0E0022E0EDB. AvgMaxErr = 0.160185370. MaxErr = 0.249526978
[Nov 08 17:09:16] M6972593 Iter# = 270000 clocks = 00:02:37.449 [  0.0157 sec/iter] Res64: A6F104D45E510117. AvgMaxErr = 0.160548379. MaxErr = 0.272140503
[Nov 08 17:12:12] M6972593 Iter# = 280000 clocks = 00:02:55.837 [  0.0176 sec/iter] Res64: F85A7729F77A626A. AvgMaxErr = 0.160353202. MaxErr = 0.267684937
[Nov 08 17:14:51] M6972593 Iter# = 290000 clocks = 00:02:39.628 [  0.0160 sec/iter] Res64: D7571D4AFD4E73F0. AvgMaxErr = 0.160387232. MaxErr = 0.245361328
[Nov 08 17:17:46] M6972593 Iter# = 300000 clocks = 00:02:54.218 [  0.0174 sec/iter] Res64: FFE349823712CB1E. AvgMaxErr = 0.160368912. MaxErr = 0.247879028
[Nov 08 17:20:42] M6972593 Iter# = 310000 clocks = 00:02:55.852 [  0.0176 sec/iter] Res64: C2EFEDA6DD3D07CA. AvgMaxErr = 0.160397664. MaxErr = 0.255661011
[Nov 08 17:23:20] M6972593 Iter# = 320000 clocks = 00:02:38.518 [  0.0159 sec/iter] Res64: 213A65558470A702. AvgMaxErr = 0.160589681. MaxErr = 0.244400024
[Nov 08 17:26:16] M6972593 Iter# = 330000 clocks = 00:02:55.567 [  0.0176 sec/iter] Res64: 4CE7B1B65B72945A. AvgMaxErr = 0.160557830. MaxErr = 0.250656128
[Nov 08 17:28:55] M6972593 Iter# = 340000 clocks = 00:02:38.774 [  0.0159 sec/iter] Res64: 14D3858778BA8827. AvgMaxErr = 0.160577794. MaxErr = 0.261550903
[Nov 08 17:31:33] M6972593 Iter# = 350000 clocks = 00:02:37.831 [  0.0158 sec/iter] Res64: B44268EF1855E52A. AvgMaxErr = 0.160368319. MaxErr = 0.243316650
[Nov 08 17:34:25] M6972593 Iter# = 360000 clocks = 00:02:52.509 [  0.0173 sec/iter] Res64: 35EB98BB2ED15D02. AvgMaxErr = 0.160505397. MaxErr = 0.264526367
[Nov 08 17:37:19] M6972593 Iter# = 370000 clocks = 00:02:53.465 [  0.0173 sec/iter] Res64: 3C14476823F6ED4E. AvgMaxErr = 0.160566374. MaxErr = 0.235153198
[Nov 08 17:39:55] M6972593 Iter# = 380000 clocks = 00:02:36.158 [  0.0156 sec/iter] Res64: 295E33047F962CD5. AvgMaxErr = 0.160578039. MaxErr = 0.242431641
[Nov 08 17:42:50] M6972593 Iter# = 390000 clocks = 00:02:54.949 [  0.0175 sec/iter] Res64: 683DEB70BF5EA380. AvgMaxErr = 0.160392807. MaxErr = 0.300231934
[Nov 08 17:45:27] M6972593 Iter# = 400000 clocks = 00:02:36.725 [  0.0157 sec/iter] Res64: 707EACCE9C33B78A. AvgMaxErr = 0.160555159. MaxErr = 0.239532471
[Nov 08 17:48:06] M6972593 Iter# = 410000 clocks = 00:02:39.367 [  0.0159 sec/iter] Res64: 67E6FB306A4F29B2. AvgMaxErr = 0.160368104. MaxErr = 0.242218018
[Nov 08 17:51:01] M6972593 Iter# = 420000 clocks = 00:02:55.192 [  0.0175 sec/iter] Res64: 4AA863EA5590CDA2. AvgMaxErr = 0.160348218. MaxErr = 0.259353638
[Nov 08 17:53:41] M6972593 Iter# = 430000 clocks = 00:02:39.188 [  0.0159 sec/iter] Res64: 748CC79262614C7D. AvgMaxErr = 0.160437451. MaxErr = 0.247825623
[Nov 08 17:56:34] M6972593 Iter# = 440000 clocks = 00:02:53.106 [  0.0173 sec/iter] Res64: 7E09B4C9498D37FF. AvgMaxErr = 0.160634390. MaxErr = 0.237915039
[Nov 08 17:59:11] M6972593 Iter# = 450000 clocks = 00:02:37.239 [  0.0157 sec/iter] Res64: E8241AB42F8EEFF0. AvgMaxErr = 0.160349778. MaxErr = 0.245925903
[Nov 08 18:01:49] M6972593 Iter# = 460000 clocks = 00:02:37.250 [  0.0157 sec/iter] Res64: 84CFBBE17BB62C1C. AvgMaxErr = 0.160573408. MaxErr = 0.235702515
[Nov 08 18:04:44] M6972593 Iter# = 470000 clocks = 00:02:55.797 [  0.0176 sec/iter] Res64: 82AB49892185CB35. AvgMaxErr = 0.160626003. MaxErr = 0.244537354
[Nov 08 18:07:21] M6972593 Iter# = 480000 clocks = 00:02:36.917 [  0.0157 sec/iter] Res64: FCC3FC7F34515BD7. AvgMaxErr = 0.160522213. MaxErr = 0.268310547
[Nov 08 18:10:15] M6972593 Iter# = 490000 clocks = 00:02:53.637 [  0.0174 sec/iter] Res64: A7E1671F78139DFA. AvgMaxErr = 0.160336564. MaxErr = 0.237884521
[Nov 08 18:12:53] M6972593 Iter# = 500000 clocks = 00:02:38.055 [  0.0158 sec/iter] Res64: CA2BBFD27FCEAFEE. AvgMaxErr = 0.160474241. MaxErr = 0.241867065
[Nov 08 18:15:48] M6972593 Iter# = 510000 clocks = 00:02:54.883 [  0.0175 sec/iter] Res64: 39A2D63EFF9A24EC. AvgMaxErr = 0.160385943. MaxErr = 0.241134644
[Nov 08 18:18:25] M6972593 Iter# = 520000 clocks = 00:02:37.186 [  0.0157 sec/iter] Res64: 4914101F8CD04A3B. AvgMaxErr = 0.160516066. MaxErr = 0.258041382
[Nov 08 18:21:03] M6972593 Iter# = 530000 clocks = 00:02:37.530 [  0.0158 sec/iter] Res64: B967C840DED486B9. AvgMaxErr = 0.160396748. MaxErr = 0.282913208
[Nov 08 18:23:45] M6972593 Iter# = 540000 clocks = 00:02:41.643 [  0.0162 sec/iter] Res64: 6488FCB14E1DDC57. AvgMaxErr = 0.160191282. MaxErr = 0.244781494
[Nov 08 18:26:50] M6972593 Iter# = 550000 clocks = 00:03:05.645 [  0.0186 sec/iter] Res64: F361A26CAA954C7E. AvgMaxErr = 0.160567614. MaxErr = 0.263549805
[Nov 08 18:29:36] M6972593 Iter# = 560000 clocks = 00:02:44.992 [  0.0165 sec/iter] Res64: 910548B53C0A72DB. AvgMaxErr = 0.160440907. MaxErr = 0.240142822
[Nov 08 18:32:39] M6972593 Iter# = 570000 clocks = 00:03:03.769 [  0.0184 sec/iter] Res64: 5EF148C0A346BE58. AvgMaxErr = 0.160307335. MaxErr = 0.232040405
My interest in mlucas is purely technical, I am already running mprime on the same machine (it seems to be using only 1 of the 4 cores), and for years have been running prime95 on some windows machines. I already heard that prime95 is faster than mlucas, but mlucas is more free (open source and use as you like license), and it is used to verify the knew found primes, so I got curios and wanted to know how to use it.

I also want to know how to interact with primenet using mlucas. For the time being I will let the LL-test on 6972593 finish, and later if this works I will see how I can check out some DD work from primenet and check in the results from mlucas.

Another question/curiosity I have: The last line in p6972593.stat reads

[Nov 08 18:26:50] M6972593 Iter# = 550000 clocks = 00:03:05.645 [ 0.0186 sec/iter] Res64: F361A26CAA954C7E. AvgMaxErr = 0.160567614. MaxErr = 0.263549805

I wanted to interpret the Res64. I thought those were the last 64 bit of the residue in hexadecimal, so I run hexdump p6972593 and search for F361A26CAA954C7E thinking I would find it at the end of the file, but didn't. How is exactly the format of the file p6972593? Shouldn't the full reside be in there?

Thanks.
Damian is offline   Reply With Quote
Old 2017-11-08, 21:50   #9
Damian
 
Damian's Avatar
 
May 2005
Argentina

2×3×31 Posts
Default

I think I found it about the Res64. Now the last line of p6972593.stat reads

Code:
[Nov 08 18:41:48] M6972593 Iter# = 600000 clocks = 00:03:09.393 [  0.0189 sec/iter] Res64: 8ECCC1F0B731A104. AvgMaxErr = 0.160373920. MaxErr = 0.244796753
The end of the hexdump p6972593 reads

Code:
00d4c70 44bc 32fb 1b05 abb1 286e 30d4 599c 78df
00d4c80 c71a 23d7 a6a5 e8fe b4cb 7bd2 5b16 d96a
00d4c90 f949 9b3d 847b ae71 a51d cc9e d9d2 a442
00d4ca0 0401 31a1 f0b7 ccc1 638e 9a65 037d 7a46
00d4cb0 41d6 000d                              
00d4cb3
So it seems to be there, with only some difference of little-endian-like problem and maybe some other information next to it
Damian is offline   Reply With Quote
Old 2017-11-09, 00:35   #10
GP2
 
GP2's Avatar
 
Sep 2003

29·89 Posts
Default

Quote:
Originally Posted by Damian View Post
I also want to know how to interact with primenet using mlucas. For the time being I will let the LL-test on 6972593 finish, and later if this works I will see how I can check out some DD work from primenet and check in the results from mlucas.
Mlucas does not communicate with Primenet. There are some auxiliary programs that take the output of Mlucas and send it to Primenet, but they are a bit of a hack.

You can submit the final residue manually. When the program finishes an exponent, the final four lines of the .stat file will look something like this:

Mxxxxxxxx is not prime. Res64: nnnnnnnnnnnnnnnn. Program: E17.0
Mxxxxxxxx mod 2^36 = nnnnnnnnnnn
Mxxxxxxxx mod 2^35 - 1 = nnnnnnnnnnn
Mxxxxxxxx mod 2^36 - 1 = nnnnnnnnnn

You can copy the first of those lines (the one with the Res64 value) and paste it into the Manual Results form at https://www.mersenne.org/manual_result/

The other three lines are mostly historical curiosities.

Note, there is no need to do so for M6972593, since it is a known Mersenne prime. It is a good test to make sure your computer is doing the calculations properly.

I have to say, your computer is a bit on the slow side. You will need patience if you tackle actual current assignments, for instance double-checks in the 50-million range. Those will take more than fifty times longer to complete than M6972593.

I estimate your machine will take a total of about 33 hours to finish M6972593, and an exponent around 50 million will take it more than 70 days.
GP2 is offline   Reply With Quote
Old 2017-11-09, 02:03   #11
ewmayer
2ω=0
 
ewmayer's Avatar
 
Sep 2002
República de California

2·59·83 Posts
Default

Damian, no idea why you are getting those "unknown register name 'xmm0'" errors in your build attempts ... xmm0-7 are all proper 32-bit SSE2 register names. Been a while since I did a 32-bit build, but when I try compiling a couple sample files which make use of the macros appearing in your errors list and forcing 32-bit compile on my 64-bit OS X system, I get no compile errors, e.g. 'gcc -c -m32 -Os -DUSE_SSE2 -DUSE_THREADS ../radix28_*c' works, also using the clang compiler instead of gcc. I suspect something is off in your compiler/bintils installation.

Re. p=11213, the ideal FFT length for that tiny exponent based on roundoff error levels is < 1024 (i.e. 1K), but the current Mlucas only supports FFT lengths 2K and greater. When I paste 11213 into a worktodo.ini file (you don't really need any of the other junk for simple LL tests, that is just the Primenet server added info) and try ./Mlucas, I get this:

M11213: using FFT length 2K = 2048 8-byte floats.
this gives an average 5.475097656250000 bits per digit
FATAL: n/radix0 must be >= 1024!
ERROR: at line 339 of file ../mers_mod_square.c
Assertion failed: FATAL: n/radix0 must be >= 1024!

That is a result of the program trying to do a set of self-tests at FFT 2K (since the default mlucas.cfg file resulting from the usual recommened self-tests won't have FFT lengths anywhere near that small), and amounts to "FFT length way too small". In theory 2K should work but in practice the current default array-padding-scheme for cache-friendliness need FFT lengths of at least 16K. When I try 1000 iterations of M11213 at that FFT length it runs but gives all-0 residues because the bits-per-word count is so small that the carry routine is losing the data bits. M110503 seems OK at 16K. I clearly need to add some more-restrictive assertions for small exponents, but the code development is for GIMPS, and no one cares about LL testing such small numbers anymore using code geared for big numbers - it's like trying to swat a gnat with a sledgehammer.

Re. your run of p6972593, you are looking at the wrong file - p6972593 is a bytewise full LL residue used by the code in case of restart-after-interrupt. You want to look at the p6972593.stat file, as described on the readme page, in the paragraph starting "The program will run silently in the background...". FYI, the format of the full residue files (2 of them for each exponent X, pX and qX, for redundancy) is laid out in my codebase in Mlucas.c, functions read|write_ppm1_savefiles:

1 byte for internally-defined test type (e.g. primality test, p-1, trial-factoring)
1 byte for modulus type (e.g. Mersenne, Fermat)
8 bytes for an iteration number or similar (e.g. prime bound for p-1 and ecm) corresponding to the residue
N bytes for the bytewise residue R, low to high byte. For Fermat F_n, N = 2^(n-3)+1, e.g. 16777217 bytes for F27
18 bytes of checksums on R - 8 for R%2^64, 5 for R%(2^35-1), 5 for R%(2^36-1)

For LL tests, test type = 1 and modulus type = 1, but I don't see the hex chars 01 01 which should thus indicate the start of the file in your hexdump snippet - maybe I'm parsing it incorrectly.

Re. primenet - even if you are unable to build the latest code, you should be able to use the primenet.py script from the v17 tarball to manage your work using an older build.

p.s.: Thanks for your support! (Both the moral and the $ kind :).
ewmayer is offline   Reply With Quote
Reply

Thread Tools


Similar Threads
Thread Thread Starter Forum Replies Last Post
Mlucas and mprime on the same box daxmick Software 5 2018-01-05 09:48
Mlucas version 17 ewmayer Mlucas 3 2017-06-17 11:18
MLucas on IBM Mainframe Lorenzo Mlucas 52 2016-03-13 08:45
Mlucas on Sparc - Unregistered Mlucas 0 2009-10-27 20:35
mlucas on sun delta_t Mlucas 14 2007-10-04 05:45

All times are UTC. The time now is 17:15.

Wed Oct 28 17:15:14 UTC 2020 up 48 days, 14:26, 2 users, load averages: 2.56, 2.72, 2.60

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.