joblo (OP)
Legendary
Offline
Activity: 1470
Merit: 1114
|
|
December 15, 2017, 06:46:49 PM Last edit: December 15, 2017, 07:36:58 PM by joblo |
|
I've tried running cpuminer-opt 3.7.6 with lyra2z on a 48 CPU system - unfortunately, only 32 CPUs are used.
The program says "48 miner threads started, using 'lyra2z' algorithm", with or without -t 48 option.
cpuminer-opt 3.7.3 behaves correctly and runs on all 48 cores.
Can you clarify? Does it start 48 threads and run 2 on some cores? Posting the program output would help. What kind of CPU architecture do you have, multisocket? Edit: also what OS and please post command line. I always need this, I shouldn't have to ask.
|
|
|
|
joblo (OP)
Legendary
Offline
Activity: 1470
Merit: 1114
|
|
December 15, 2017, 06:55:00 PM |
|
Does this also apply forgotten NVIDIA tesla architecture? I would like to at least make the attempt,but I'm a newbie to what programming language refers,there are also no guides on how to work from 0 or how to start my question although a bit vague, it is possible to work old and new some algorithms such as "cryptonight" ,has some impediment to what it refers to level of instructions or obstacle? (I know that this is not the indicated site I only ask for opinions regarding this) Any opinion is appreciated You're asking in the wrong place. This is for CPU mining, don't expect any GPU advice here.
|
|
|
|
Mr.merson
|
|
December 15, 2017, 08:50:59 PM |
|
Does this also apply forgotten NVIDIA tesla architecture? I would like to at least make the attempt,but I'm a newbie to what programming language refers,there are also no guides on how to work from 0 or how to start my question although a bit vague, it is possible to work old and new some algorithms such as "cryptonight" ,has some impediment to what it refers to level of instructions or obstacle? (I know that this is not the indicated site I only ask for opinions regarding this) Any opinion is appreciated You're asking in the wrong place. This is for CPU mining, don't expect any GPU advice here. i agree, as I said just comment to see if I could run into any valuable information
|
|
|
|
mangoo
Newbie
Offline
Activity: 23
Merit: 0
|
|
December 15, 2017, 10:04:52 PM |
|
I've tried running cpuminer-opt 3.7.6 with lyra2z on a 48 CPU system - unfortunately, only 32 CPUs are used.
The program says "48 miner threads started, using 'lyra2z' algorithm", with or without -t 48 option.
cpuminer-opt 3.7.3 behaves correctly and runs on all 48 cores.
Can you clarify? Does it start 48 threads and run 2 on some cores? Posting the program output would help. What kind of CPU architecture do you have, multisocket? Edit: also what OS and please post command line. I always need this, I shouldn't have to ask. Ubuntu 16.04. When I start cpuminer-opt 3.7.6 on a 48 CPU system, in top/htop I can see only 32 CPUs are used (unexpected). When I start cpuminer-opt 3.7.3 on a 48 CPU system, in top/htop I can see 48 CPUs are used (expected). Didn't try other versions. Command line: # ./cpuminer -c config.conf -q ********** cpuminer-opt 3.7.6 *********** A CPU miner with multi algo support and optimized for CPUs with AES_NI and AVX2 and SHA extensions. BTC donation address: 12tdvfF7KmAsihBXQXynT6E6th2c2pByTT
CPU: AMD EPYC 7401P 24-Core Processor . SW built on Dec 15 2017 with GCC 5.4.0. CPU features: SSE2 AES AVX AVX2 SHA. SW features: SSE2 AES AVX AVX2 SHA. Algo features: AVX AVX2. Start mining with AVX2.
[2017-12-15 22:06:13] Starting Stratum on stratum+tcp://address:port [2017-12-15 22:06:13] 48 miner threads started, using 'lyra2z' algorithm. [2017-12-15 22:06:13] Stratum difficulty set to 10
config.conf: {
"url" : "some-url:port", "user" : "some.01234.worker", "pass" : "pass",
"algo" : "lyra2z", "api-bind" : 0 }
CPU: AMD Epyc (single CPU): http://www.amd.com/en/products/cpu/amd-epyc-7401p# grep -c processor /proc/cpuinfo 48
processor : 47 vendor_id : AuthenticAMD cpu family : 23 model : 1 model name : AMD EPYC 7401P 24-Core Processor stepping : 2 microcode : 0x8001207 cpu MHz : 2000.000 cache size : 512 KB physical id : 0 siblings : 48 core id : 0 cpu cores : 24 apicid : 61 initial apicid : 61 fpu : yes fpu_exception : yes cpuid level : 13 wp : yes 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 constant_tsc rep_good nopl nonstop_tsc extd_apicid amd_dcm aperfmperf pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx cpb hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca bugs : fxsave_leak sysret_ss_attrs null_seg bogomips : 3992.21 TLB size : 2560 4K pages clflush size : 64 cache_alignment : 64 address sizes : 48 bits physical, 48 bits virtual power management: ts ttp tm hwpstate cpb eff_freq_ro [13] [14]
|
|
|
|
joblo (OP)
Legendary
Offline
Activity: 1470
Merit: 1114
|
|
December 15, 2017, 10:59:25 PM |
|
Ubuntu 16.04. When I start cpuminer-opt 3.7.6 on a 48 CPU system, in top/htop I can see only 32 CPUs are used (unexpected). When I start cpuminer-opt 3.7.3 on a 48 CPU system, in top/htop I can see 48 CPUs are used (expected). Didn't try other versions. Command line: # ./cpuminer -c config.conf -q ********** cpuminer-opt 3.7.6 *********** A CPU miner with multi algo support and optimized for CPUs with AES_NI and AVX2 and SHA extensions. BTC donation address: 12tdvfF7KmAsihBXQXynT6E6th2c2pByTT
CPU: AMD EPYC 7401P 24-Core Processor . SW built on Dec 15 2017 with GCC 5.4.0. CPU features: SSE2 AES AVX AVX2 SHA. SW features: SSE2 AES AVX AVX2 SHA. Algo features: AVX AVX2. Start mining with AVX2.
[2017-12-15 22:06:13] Starting Stratum on stratum+tcp://address:port [2017-12-15 22:06:13] 48 miner threads started, using 'lyra2z' algorithm. [2017-12-15 22:06:13] Stratum difficulty set to 10
config.conf: {
"url" : "some-url:port", "user" : "some.01234.worker", "pass" : "pass",
"algo" : "lyra2z", "api-bind" : 0 }
I presume this is the same system using both versions of cpuminer-opt. I've reviewed the changes I made for 64 CPU support and they should only have an effect when there are more than 64 vcores. It's as simple as if num_cpus > 64 do something different else do as usual. I can find no reason why it behaves differently or why it maxes at 32. Test both versions with -D, the debug output may provide a clue. Edit: Also is there anything unusual about that system? Any virtualization or NUMA?
|
|
|
|
7BEN7
Newbie
Offline
Activity: 14
Merit: 0
|
|
December 15, 2017, 11:29:33 PM |
|
Has anyone tried to compile cpuminer-opt on ARM architecture? I've tried, but it fails miserably...
Tried, works fine. How are you trying to do it?
|
|
|
|
mangoo
Newbie
Offline
Activity: 23
Merit: 0
|
|
December 16, 2017, 01:08:10 AM |
|
I presume this is the same system using both versions of cpuminer-opt.
I've reviewed the changes I made for 64 CPU support and they should only have an effect when there are more than 64 vcores. It's as simple as if num_cpus > 64 do something different else do as usual.
I can find no reason why it behaves differently or why it maxes at 32.
Test both versions with -D, the debug output may provide a clue.
Edit: Also is there anything unusual about that system? Any virtualization or NUMA?
Tried 3.7.5 vs 3.7.6 - 3.7.5 runs on all CPUs, 3.7.6 only works on 32 CPUs and gives lower hash rates. Both versions start the same number of threads: # ps -eLf|grep -c cpuminer 52
Both versions start in the same way with -D: [2017-12-16 01:03:56] Starting Stratum on stratum+tcp://ip:port [2017-12-16 01:03:56] Binding thread 0 to cpu 0 (mask 1) [2017-12-16 01:03:56] Binding thread 1 to cpu 1 (mask 2) [2017-12-16 01:03:56] Binding thread 2 to cpu 2 (mask 4) [2017-12-16 01:03:56] Binding thread 3 to cpu 3 (mask 8) [2017-12-16 01:03:56] Binding thread 4 to cpu 4 (mask 10) [2017-12-16 01:03:56] Binding thread 5 to cpu 5 (mask 20) [2017-12-16 01:03:56] Binding thread 6 to cpu 6 (mask 40) [2017-12-16 01:03:56] Binding thread 7 to cpu 7 (mask 80) [2017-12-16 01:03:56] Binding thread 8 to cpu 8 (mask 100) [2017-12-16 01:03:56] Binding thread 9 to cpu 9 (mask 200) [2017-12-16 01:03:56] Binding thread 10 to cpu 10 (mask 400) [2017-12-16 01:03:56] Binding thread 11 to cpu 11 (mask 800) [2017-12-16 01:03:56] Binding thread 12 to cpu 12 (mask 1000) [2017-12-16 01:03:56] Binding thread 13 to cpu 13 (mask 2000) [2017-12-16 01:03:56] Binding thread 14 to cpu 14 (mask 4000) [2017-12-16 01:03:56] Binding thread 15 to cpu 15 (mask 8000) [2017-12-16 01:03:56] Binding thread 16 to cpu 16 (mask 10000) [2017-12-16 01:03:56] Binding thread 17 to cpu 17 (mask 20000) [2017-12-16 01:03:56] Binding thread 18 to cpu 18 (mask 40000) [2017-12-16 01:03:56] Binding thread 19 to cpu 19 (mask 80000) [2017-12-16 01:03:56] Binding thread 20 to cpu 20 (mask 100000) [2017-12-16 01:03:56] Binding thread 21 to cpu 21 (mask 200000) [2017-12-16 01:03:56] Binding thread 22 to cpu 22 (mask 400000) [2017-12-16 01:03:56] Binding thread 23 to cpu 23 (mask 800000) [2017-12-16 01:03:56] Binding thread 24 to cpu 24 (mask 1000000) [2017-12-16 01:03:56] Binding thread 25 to cpu 25 (mask 2000000) [2017-12-16 01:03:56] Binding thread 26 to cpu 26 (mask 4000000) [2017-12-16 01:03:56] Binding thread 27 to cpu 27 (mask 8000000) [2017-12-16 01:03:56] Binding thread 28 to cpu 28 (mask 10000000) [2017-12-16 01:03:56] Binding thread 29 to cpu 29 (mask 20000000) [2017-12-16 01:03:56] Binding thread 30 to cpu 30 (mask 40000000) [2017-12-16 01:03:56] Binding thread 31 to cpu 31 (mask 80000000) [2017-12-16 01:03:56] Binding thread 32 to cpu 32 (mask 1) [2017-12-16 01:03:56] Binding thread 33 to cpu 33 (mask 2) [2017-12-16 01:03:56] Binding thread 34 to cpu 34 (mask 4) [2017-12-16 01:03:56] Binding thread 35 to cpu 35 (mask 8) [2017-12-16 01:03:56] Binding thread 36 to cpu 36 (mask 10) [2017-12-16 01:03:56] Binding thread 37 to cpu 37 (mask 20) [2017-12-16 01:03:56] Binding thread 38 to cpu 38 (mask 40) [2017-12-16 01:03:56] Binding thread 39 to cpu 39 (mask 80) [2017-12-16 01:03:56] Binding thread 40 to cpu 40 (mask 100) [2017-12-16 01:03:56] Binding thread 41 to cpu 41 (mask 200) [2017-12-16 01:03:56] Binding thread 42 to cpu 42 (mask 400) [2017-12-16 01:03:56] Binding thread 43 to cpu 43 (mask 800) [2017-12-16 01:03:56] Binding thread 44 to cpu 44 (mask 1000) [2017-12-16 01:03:56] Binding thread 45 to cpu 45 (mask 2000) [2017-12-16 01:03:56] Binding thread 46 to cpu 46 (mask 4000) [2017-12-16 01:03:56] 48 miner threads started, using 'lyra2z' algorithm. [2017-12-16 01:03:56] Binding thread 47 to cpu 47 (mask 8000) [2017-12-16 01:03:57] Stratum session id: deadbeefcafebabef76c160000000000 [2017-12-16 01:03:57] Stratum difficulty set to 10 [2017-12-16 01:03:58] Stratum difficulty set to 5 [2017-12-16 01:03:58] DEBUG: job_id='1e40' extranonce2=00000000 ntime=5a3470e6 [2017-12-16 01:03:58] Stratum difficulty set to 10 (0.03906) (...)
Edit: Also is there anything unusual about that system? Any virtualization or NUMA?
There isn't anything unusual about this system, no virtualization, no multiple sockets etc.
|
|
|
|
mangoo
Newbie
Offline
Activity: 23
Merit: 0
|
|
December 16, 2017, 01:29:00 AM |
|
I presume this is the same system using both versions of cpuminer-opt.
Of course I'm seeing these results on the same system. I've reviewed the changes I made for 64 CPU support and they should only have an effect when there are more than 64 vcores. It's as simple as if num_cpus > 64 do something different else do as usual.
The issue must be somewhere in cpu-miner.c. If we copy cpu-miner.c from v3.7.5.tar.gz to 3.7.6 and compile it, all 48 CPUs are used. If we copy cpu-miner.c from v3.7.6.tar.gz to 3.7.5 and compile it, only 32 CPUs are used.
|
|
|
|
joblo (OP)
Legendary
Offline
Activity: 1470
Merit: 1114
|
|
December 16, 2017, 02:01:13 AM |
|
Tried 3.7.5 vs 3.7.6 - 3.7.5 runs on all CPUs, 3.7.6 only works on 32 CPUs and gives lower hash rates. Both versions start in the same way with -D: [2017-12-16 01:03:56] Starting Stratum on stratum+tcp://ip:port [2017-12-16 01:03:56] Binding thread 0 to cpu 0 (mask 1) [2017-12-16 01:03:56] Binding thread 1 to cpu 1 (mask 2) [2017-12-16 01:03:56] Binding thread 2 to cpu 2 (mask 4) [2017-12-16 01:03:56] Binding thread 3 to cpu 3 (mask 8) [2017-12-16 01:03:56] Binding thread 4 to cpu 4 (mask 10) [2017-12-16 01:03:56] Binding thread 5 to cpu 5 (mask 20) [2017-12-16 01:03:56] Binding thread 6 to cpu 6 (mask 40) [2017-12-16 01:03:56] Binding thread 7 to cpu 7 (mask 80) [2017-12-16 01:03:56] Binding thread 8 to cpu 8 (mask 100) [2017-12-16 01:03:56] Binding thread 9 to cpu 9 (mask 200) [2017-12-16 01:03:56] Binding thread 10 to cpu 10 (mask 400) [2017-12-16 01:03:56] Binding thread 11 to cpu 11 (mask 800) [2017-12-16 01:03:56] Binding thread 12 to cpu 12 (mask 1000) [2017-12-16 01:03:56] Binding thread 13 to cpu 13 (mask 2000) [2017-12-16 01:03:56] Binding thread 14 to cpu 14 (mask 4000) [2017-12-16 01:03:56] Binding thread 15 to cpu 15 (mask 8000) [2017-12-16 01:03:56] Binding thread 16 to cpu 16 (mask 10000) [2017-12-16 01:03:56] Binding thread 17 to cpu 17 (mask 20000) [2017-12-16 01:03:56] Binding thread 18 to cpu 18 (mask 40000) [2017-12-16 01:03:56] Binding thread 19 to cpu 19 (mask 80000) [2017-12-16 01:03:56] Binding thread 20 to cpu 20 (mask 100000) [2017-12-16 01:03:56] Binding thread 21 to cpu 21 (mask 200000) [2017-12-16 01:03:56] Binding thread 22 to cpu 22 (mask 400000) [2017-12-16 01:03:56] Binding thread 23 to cpu 23 (mask 800000) [2017-12-16 01:03:56] Binding thread 24 to cpu 24 (mask 1000000) [2017-12-16 01:03:56] Binding thread 25 to cpu 25 (mask 2000000) [2017-12-16 01:03:56] Binding thread 26 to cpu 26 (mask 4000000) [2017-12-16 01:03:56] Binding thread 27 to cpu 27 (mask 8000000) [2017-12-16 01:03:56] Binding thread 28 to cpu 28 (mask 10000000) [2017-12-16 01:03:56] Binding thread 29 to cpu 29 (mask 20000000) [2017-12-16 01:03:56] Binding thread 30 to cpu 30 (mask 40000000) [2017-12-16 01:03:56] Binding thread 31 to cpu 31 (mask 80000000) [2017-12-16 01:03:56] Binding thread 32 to cpu 32 (mask 1) [2017-12-16 01:03:56] Binding thread 33 to cpu 33 (mask 2) [2017-12-16 01:03:56] Binding thread 34 to cpu 34 (mask 4) [2017-12-16 01:03:56] Binding thread 35 to cpu 35 (mask 8) [2017-12-16 01:03:56] Binding thread 36 to cpu 36 (mask 10) [2017-12-16 01:03:56] Binding thread 37 to cpu 37 (mask 20) [2017-12-16 01:03:56] Binding thread 38 to cpu 38 (mask 40) [2017-12-16 01:03:56] Binding thread 39 to cpu 39 (mask 80) [2017-12-16 01:03:56] Binding thread 40 to cpu 40 (mask 100) [2017-12-16 01:03:56] Binding thread 41 to cpu 41 (mask 200) [2017-12-16 01:03:56] Binding thread 42 to cpu 42 (mask 400) [2017-12-16 01:03:56] Binding thread 43 to cpu 43 (mask 800) [2017-12-16 01:03:56] Binding thread 44 to cpu 44 (mask 1000) [2017-12-16 01:03:56] Binding thread 45 to cpu 45 (mask 2000) [2017-12-16 01:03:56] Binding thread 46 to cpu 46 (mask 4000) [2017-12-16 01:03:56] 48 miner threads started, using 'lyra2z' algorithm. [2017-12-16 01:03:56] Binding thread 47 to cpu 47 (mask 8000) [2017-12-16 01:03:57] Stratum session id: deadbeefcafebabef76c160000000000 [2017-12-16 01:03:57] Stratum difficulty set to 10 [2017-12-16 01:03:58] Stratum difficulty set to 5 [2017-12-16 01:03:58] DEBUG: job_id='1e40' extranonce2=00000000 ntime=5a3470e6 [2017-12-16 01:03:58] Stratum difficulty set to 10 (0.03906) (...)
Are you sure? Which version is this? The mask changed from thread 32 up, yet the debug output says it's binding to the correct CPU for threads 32 and up I've reviewed the changes I made for 64 CPU support and they should only have an effect when there are more than 64 vcores. It's as simple as if num_cpus > 64 do something different else do as usual.
The issue must be somewhere in cpu-miner.c. If we copy cpu-miner.c from v3.7.5.tar.gz to 3.7.6 and compile it, all 48 CPUs are used. If we copy cpu-miner.c from v3.7.6.tar.gz to 3.7.5 and compile it, only 32 CPUs are used. Are you sure the output is exactly the same? Which version is this? The mask changed from thread 32 up, yet the debug output says it's binding to the correct CPU. Since I have no way to test this I'm relying on you. Without some kind of clue my only choice is to backout the change that added support for more than 64 CPUs. applog( LOG_DEBUG, "Binding thread %d to cpu %d (mask %x)", thr_id, thr_id % num_cpus, ( 1 << (thr_id % num_cpus) ) ); affine_to_cpu_mask( thr_id, 1 << (thr_id % num_cpus) );
Something isn't making sense. The mask is rolling over at 32. The only way that happens is if num_cpus == 32. Can you try with a 48 bit affinity mask to see what that does? --cpu-affinity 0xffffffffffff
|
|
|
|
mangoo
Newbie
Offline
Activity: 23
Merit: 0
|
|
December 16, 2017, 02:23:30 AM |
|
Can you try with a 48 bit affinity mask to see what that does? --cpu-affinity 0xffffffffffff Using --cpu-affinity 0xffffffffffff makes it correctly run on 48 CPUs: # ./cpuminer -c conf.conf -q -D --cpu-affinity 0xffffffffffff
********** cpuminer-opt 3.7.6 *********** A CPU miner with multi algo support and optimized for CPUs with AES_NI and AVX2 and SHA extensions. BTC donation address: 12tdvfF7KmAsihBXQXynT6E6th2c2pByTT
CPU: AMD EPYC 7401P 24-Core Processor . SW built on Dec 16 2017 with GCC 5.4.0. CPU features: SSE2 AES AVX AVX2 SHA. SW features: SSE2 AES AVX AVX2 SHA. Algo features: AVX AVX2. Start mining with AVX2.
[2017-12-16 02:19:58] Starting Stratum on stratum+tcp://pool:80 [2017-12-16 02:19:58] Binding thread 0 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 1 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 2 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 3 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 4 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 5 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 6 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 7 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 8 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 9 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 10 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 11 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 12 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 13 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 14 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 15 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 16 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 17 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 18 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 19 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 20 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 21 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 22 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 23 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 24 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 25 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 26 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 27 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 28 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 29 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 30 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 31 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 33 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 32 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 34 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 35 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 36 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 37 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 38 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 39 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 40 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 41 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 42 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 43 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 44 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 45 to cpu mask ffffffff [2017-12-16 02:19:58] Binding thread 46 to cpu mask ffffffff [2017-12-16 02:19:58] 48 miner threads started, using 'lyra2z' algorithm. [2017-12-16 02:19:58] Binding thread 47 to cpu mask ffffffff [2017-12-16 02:19:59] Stratum session id: deadbeefcafebabe61fe000000000000 [2017-12-16 02:19:59] Stratum difficulty set to 10 [2017-12-16 02:20:00] Stratum difficulty set to 5 [2017-12-16 02:20:00] DEBUG: job_id='1ea2' extranonce2=00000000 ntime=5a34829d [2017-12-16 02:20:00] Stratum difficulty set to 10 (0.03906) [2017-12-16 02:20:04] DEBUG: job_id='1ea3' extranonce2=00000000 ntime=5a3482d4 [2017-12-16 02:20:04] Stratum difficulty set to 5 (0.01953) (...)
If we don't use --cpu-affinity 0xffffffffffff, it runs on 32 CPUs (as observed in htop or top - it still fires 48 threads though): # ./cpuminer -c conf.conf -q -D
********** cpuminer-opt 3.7.6 *********** A CPU miner with multi algo support and optimized for CPUs with AES_NI and AVX2 and SHA extensions. BTC donation address: 12tdvfF7KmAsihBXQXynT6E6th2c2pByTT
CPU: AMD EPYC 7401P 24-Core Processor . SW built on Dec 16 2017 with GCC 5.4.0. CPU features: SSE2 AES AVX AVX2 SHA. SW features: SSE2 AES AVX AVX2 SHA. Algo features: AVX AVX2. Start mining with AVX2.
[2017-12-16 02:22:34] Starting Stratum on stratum+tcp://pool:80 [2017-12-16 02:22:34] Binding thread 0 to cpu 0 (mask 1) [2017-12-16 02:22:34] Binding thread 1 to cpu 1 (mask 2) [2017-12-16 02:22:34] Binding thread 2 to cpu 2 (mask 4) [2017-12-16 02:22:34] Binding thread 3 to cpu 3 (mask 8) [2017-12-16 02:22:34] Binding thread 4 to cpu 4 (mask 10) [2017-12-16 02:22:34] Binding thread 5 to cpu 5 (mask 20) [2017-12-16 02:22:34] Binding thread 6 to cpu 6 (mask 40) [2017-12-16 02:22:34] Binding thread 7 to cpu 7 (mask 80) [2017-12-16 02:22:34] Binding thread 8 to cpu 8 (mask 100) [2017-12-16 02:22:34] Binding thread 9 to cpu 9 (mask 200) [2017-12-16 02:22:34] Binding thread 10 to cpu 10 (mask 400) [2017-12-16 02:22:34] Binding thread 11 to cpu 11 (mask 800) [2017-12-16 02:22:34] Binding thread 12 to cpu 12 (mask 1000) [2017-12-16 02:22:34] Binding thread 13 to cpu 13 (mask 2000) [2017-12-16 02:22:34] Binding thread 14 to cpu 14 (mask 4000) [2017-12-16 02:22:34] Binding thread 15 to cpu 15 (mask 8000) [2017-12-16 02:22:34] Binding thread 16 to cpu 16 (mask 10000) [2017-12-16 02:22:34] Binding thread 17 to cpu 17 (mask 20000) [2017-12-16 02:22:34] Binding thread 18 to cpu 18 (mask 40000) [2017-12-16 02:22:34] Binding thread 19 to cpu 19 (mask 80000) [2017-12-16 02:22:34] Binding thread 20 to cpu 20 (mask 100000) [2017-12-16 02:22:34] Binding thread 21 to cpu 21 (mask 200000) [2017-12-16 02:22:34] Binding thread 22 to cpu 22 (mask 400000) [2017-12-16 02:22:34] Binding thread 23 to cpu 23 (mask 800000) [2017-12-16 02:22:34] Binding thread 24 to cpu 24 (mask 1000000) [2017-12-16 02:22:34] Binding thread 25 to cpu 25 (mask 2000000) [2017-12-16 02:22:34] Binding thread 26 to cpu 26 (mask 4000000) [2017-12-16 02:22:34] Binding thread 27 to cpu 27 (mask 8000000) [2017-12-16 02:22:34] Binding thread 28 to cpu 28 (mask 10000000) [2017-12-16 02:22:34] Binding thread 29 to cpu 29 (mask 20000000) [2017-12-16 02:22:34] Binding thread 30 to cpu 30 (mask 40000000) [2017-12-16 02:22:34] Binding thread 31 to cpu 31 (mask 80000000) [2017-12-16 02:22:34] Binding thread 32 to cpu 32 (mask 1) [2017-12-16 02:22:34] Binding thread 33 to cpu 33 (mask 2) [2017-12-16 02:22:34] Binding thread 34 to cpu 34 (mask 4) [2017-12-16 02:22:34] Binding thread 35 to cpu 35 (mask 8) [2017-12-16 02:22:34] Binding thread 36 to cpu 36 (mask 10) [2017-12-16 02:22:34] Binding thread 37 to cpu 37 (mask 20) [2017-12-16 02:22:34] Binding thread 38 to cpu 38 (mask 40) [2017-12-16 02:22:34] Binding thread 39 to cpu 39 (mask 80) [2017-12-16 02:22:34] Binding thread 40 to cpu 40 (mask 100) [2017-12-16 02:22:34] Binding thread 41 to cpu 41 (mask 200) [2017-12-16 02:22:34] Binding thread 42 to cpu 42 (mask 400) [2017-12-16 02:22:34] Binding thread 43 to cpu 43 (mask 800) [2017-12-16 02:22:34] Binding thread 44 to cpu 44 (mask 1000) [2017-12-16 02:22:34] Binding thread 45 to cpu 45 (mask 2000) [2017-12-16 02:22:34] Binding thread 46 to cpu 46 (mask 4000) [2017-12-16 02:22:34] 48 miner threads started, using 'lyra2z' algorithm. [2017-12-16 02:22:34] Binding thread 47 to cpu 47 (mask 8000) [2017-12-16 02:22:35] Stratum session id: deadbeefcafebabec147160000000000 [2017-12-16 02:22:35] Stratum difficulty set to 10 [2017-12-16 02:22:36] Stratum difficulty set to 5 [2017-12-16 02:22:36] DEBUG: job_id='1e9f' extranonce2=00000000 ntime=5a348344 [2017-12-16 02:22:36] Stratum difficulty set to 10 (0.03906) [2017-12-16 02:22:52] DEBUG: job_id='1ea0' extranonce2=00000000 ntime=5a34837b [2017-12-16 02:22:52] Stratum difficulty set to 5 (0.01953) (...)
|
|
|
|
joblo (OP)
Legendary
Offline
Activity: 1470
Merit: 1114
|
|
December 16, 2017, 02:28:29 AM |
|
Using --cpu-affinity 0xffffffffffff makes it correctly run on 48 CPUs:
Well, that's something. I'll take a closer look and may provide some test code to gather more info.
|
|
|
|
joblo (OP)
Legendary
Offline
Activity: 1470
Merit: 1114
|
|
December 16, 2017, 03:25:26 AM |
|
[2017-12-16 01:03:56] Starting Stratum on stratum+tcp://ip:port [2017-12-16 01:03:56] Binding thread 0 to cpu 0 (mask 1) [2017-12-16 01:03:56] Binding thread 1 to cpu 1 (mask 2) [2017-12-16 01:03:56] Binding thread 2 to cpu 2 (mask 4) [2017-12-16 01:03:56] Binding thread 3 to cpu 3 (mask 8) [2017-12-16 01:03:56] Binding thread 4 to cpu 4 (mask 10) [2017-12-16 01:03:56] Binding thread 5 to cpu 5 (mask 20) [2017-12-16 01:03:56] Binding thread 6 to cpu 6 (mask 40) [2017-12-16 01:03:56] Binding thread 7 to cpu 7 (mask 80) [2017-12-16 01:03:56] Binding thread 8 to cpu 8 (mask 100) [2017-12-16 01:03:56] Binding thread 9 to cpu 9 (mask 200) [2017-12-16 01:03:56] Binding thread 10 to cpu 10 (mask 400) [2017-12-16 01:03:56] Binding thread 11 to cpu 11 (mask 800) [2017-12-16 01:03:56] Binding thread 12 to cpu 12 (mask 1000) [2017-12-16 01:03:56] Binding thread 13 to cpu 13 (mask 2000) [2017-12-16 01:03:56] Binding thread 14 to cpu 14 (mask 4000) [2017-12-16 01:03:56] Binding thread 15 to cpu 15 (mask 8000) [2017-12-16 01:03:56] Binding thread 16 to cpu 16 (mask 10000) [2017-12-16 01:03:56] Binding thread 17 to cpu 17 (mask 20000) [2017-12-16 01:03:56] Binding thread 18 to cpu 18 (mask 40000) [2017-12-16 01:03:56] Binding thread 19 to cpu 19 (mask 80000) [2017-12-16 01:03:56] Binding thread 20 to cpu 20 (mask 100000) [2017-12-16 01:03:56] Binding thread 21 to cpu 21 (mask 200000) [2017-12-16 01:03:56] Binding thread 22 to cpu 22 (mask 400000) [2017-12-16 01:03:56] Binding thread 23 to cpu 23 (mask 800000) [2017-12-16 01:03:56] Binding thread 24 to cpu 24 (mask 1000000) [2017-12-16 01:03:56] Binding thread 25 to cpu 25 (mask 2000000) [2017-12-16 01:03:56] Binding thread 26 to cpu 26 (mask 4000000) [2017-12-16 01:03:56] Binding thread 27 to cpu 27 (mask 8000000) [2017-12-16 01:03:56] Binding thread 28 to cpu 28 (mask 10000000) [2017-12-16 01:03:56] Binding thread 29 to cpu 29 (mask 20000000) [2017-12-16 01:03:56] Binding thread 30 to cpu 30 (mask 40000000) [2017-12-16 01:03:56] Binding thread 31 to cpu 31 (mask 80000000) [2017-12-16 01:03:56] Binding thread 32 to cpu 32 (mask 1) [2017-12-16 01:03:56] Binding thread 33 to cpu 33 (mask 2) [2017-12-16 01:03:56] Binding thread 34 to cpu 34 (mask 4) [2017-12-16 01:03:56] Binding thread 35 to cpu 35 (mask 8) [2017-12-16 01:03:56] Binding thread 36 to cpu 36 (mask 10) [2017-12-16 01:03:56] Binding thread 37 to cpu 37 (mask 20) [2017-12-16 01:03:56] Binding thread 38 to cpu 38 (mask 40) [2017-12-16 01:03:56] Binding thread 39 to cpu 39 (mask 80) [2017-12-16 01:03:56] Binding thread 40 to cpu 40 (mask 100) [2017-12-16 01:03:56] Binding thread 41 to cpu 41 (mask 200) [2017-12-16 01:03:56] Binding thread 42 to cpu 42 (mask 400) [2017-12-16 01:03:56] Binding thread 43 to cpu 43 (mask 800) [2017-12-16 01:03:56] Binding thread 44 to cpu 44 (mask 1000) [2017-12-16 01:03:56] Binding thread 45 to cpu 45 (mask 2000) [2017-12-16 01:03:56] Binding thread 46 to cpu 46 (mask 4000) [2017-12-16 01:03:56] 48 miner threads started, using 'lyra2z' algorithm. [2017-12-16 01:03:56] Binding thread 47 to cpu 47 (mask 8000) [2017-12-16 01:03:57] Stratum session id: deadbeefcafebabef76c160000000000 [2017-12-16 01:03:57] Stratum difficulty set to 10 [2017-12-16 01:03:58] Stratum difficulty set to 5 [2017-12-16 01:03:58] DEBUG: job_id='1e40' extranonce2=00000000 ntime=5a3470e6 [2017-12-16 01:03:58] Stratum difficulty set to 10 (0.03906) (...)
I've reviewed the changes I made for 64 CPU support and they should only have an effect when there are more than 64 vcores. It's as simple as if num_cpus > 64 do something different else do as usual. The issue must be somewhere in cpu-miner.c.
If we copy cpu-miner.c from v3.7.5.tar.gz to 3.7.6 and compile it, all 48 CPUs are used.
If we copy cpu-miner.c from v3.7.6.tar.gz to 3.7.5 and compile it, only 32 CPUs are used.
applog( LOG_DEBUG, "Binding thread %d to cpu %d (mask %x)", thr_id, thr_id % num_cpus, ( 1 << (thr_id % num_cpus) ) ); affine_to_cpu_mask( thr_id, 1 << (thr_id % num_cpus) );
Something isn't making sense. The mask is rolling over at 32. The only way that happens is if num_cpus == 32. This is really bugging me. The only idea I have is the literal constant 1 is not being extended to 64 bits and the result of ( 1 << (thr_id % num_cpus) ) is only a 32 bit value even though num_cpus is 48. If this is the case I don't know why it worked before. But it's worth a try forcing it to 64 bits: 207c207 < if( (ncpus > 64) || ( mask & (1ULL << i) ) ) CPU_SET( i, &set ); --- > if( (ncpus > 64) || ( mask & (1UL << i) ) ) CPU_SET( i, &set ); 1693c1693 < thr_id, thr_id % num_cpus, ( 1ULL << (thr_id % num_cpus) ) ); --- > thr_id, thr_id % num_cpus, ( 1 << (thr_id % num_cpus) ) ); 1695c1695 < affine_to_cpu_mask( thr_id, 1ULL << (thr_id % num_cpus) ); --- > affine_to_cpu_mask( thr_id, 1 << (thr_id % num_cpus) );
|
|
|
|
joblo (OP)
Legendary
Offline
Activity: 1470
Merit: 1114
|
|
December 16, 2017, 03:32:39 AM |
|
********** cpuminer-opt 3.7.6 *********** A CPU miner with multi algo support and optimized for CPUs with AES_NI and AVX2 and SHA extensions. BTC donation address: 12tdvfF7KmAsihBXQXynT6E6th2c2pByTT
CPU: Intel(R) Core(TM) i3-5010U CPU @ 2.10GHz. SW built on Dec 15 2017 with GCC 6.3.0. CPU features: SSE2 AES AVX AVX2. SW features: SSE2 AES AVX AVX2 4WAY. Algo features: AVX AVX2. Start mining with AVX2.
[2017-12-15 05:13:05] Starting Stratum on stratum+tcp://pool.hppcoin.com:3888 [2017-12-15 05:13:05] 4 miner threads started, using 'lyra2h' algorithm. [2017-12-15 05:13:06] Stratum difficulty set to 0.03 [2017-12-15 05:14:57] lyra2h block 3745, diff 1.086 [2017-12-15 05:15:00] CPU #2: 33.13 kH, 304.87 H/s [2017-12-15 05:15:01] CPU #1: 31.07 kH, 284.39 H/s [2017-12-15 05:15:01] CPU #3: 33.19 kH, 303.82 H/s [2017-12-15 05:15:01] CPU #0: 29.41 kH, 269.21 H/s [2017-12-15 05:15:57] CPU #2: 18.29 kH, 320.96 H/s [2017-12-15 05:15:58] CPU #1: 17.06 kH, 299.32 H/s [2017-12-15 05:15:59] CPU #0: 16.15 kH, 277.56 H/s [2017-12-15 05:15:59] CPU #3: 18.23 kH, 313.18 H/s [2017-12-15 05:16:59] CPU #2: 19.26 kH, 311.88 H/s [2017-12-15 05:17:00] CPU #1: 17.96 kH, 285.40 H/s [2017-12-15 05:17:00] CPU #0: 16.65 kH, 269.79 H/s [2017-12-15 05:17:00] CPU #3: 18.79 kH, 304.49 H/s [2017-12-15 05:17:29] 4 WAY hash nonces submitted: 0 [2017-12-15 05:17:29] 1 WAY hash nonce submitted [2017-12-15 05:17:29] CPU #1: 8271 H, 290.19 H/s [2017-12-15 05:17:29] Rejected 1/1 (100.0%), 62.97 kH, 1176.35 H/s [2017-12-15 05:17:29] reject reason: low difficulty share of 1.1898710488783548e-7 [2017-12-15 05:17:29] factor reduced to : 0.67 [2017-12-15 05:17:46] CPU #3: 18.27 kH, 400.63 H/s [2017-12-15 05:17:46] CPU #0: 16.19 kH, 354.79 H/s [2017-12-15 05:17:46] CPU #2: 18.71 kH, 393.31 H/s [2017-12-15 05:17:47] CPU #1: 17.41 kH, 944.91 H/s [2017-12-15 05:17:48] 4 WAY hash nonces submitted: 0 [2017-12-15 05:17:48] 1 WAY hash nonce submitted [2017-12-15 05:17:48] CPU #2: 9619 H, 7518.31 H/s [2017-12-15 05:17:48] Rejected 2/2 (100.0%), 61.49 kH, 9218.64 H/s [2017-12-15 05:17:48] reject reason: low difficulty share of 1.0869699425015301e-7 [2017-12-15 05:17:48] factor reduced to : 0.44 [2017-12-15 05:17:48] CPU #0: 21.29 kH, 9075.46 H/s [2017-12-15 05:17:49] CPU #3: 24.04 kH, 9621.84 H/s [2017-12-15 05:17:54] CPU #1: 56.70 kH, 8476.80 H/s [2017-12-15 05:17:55] 4 WAY hash nonces submitted: 0 [2017-12-15 05:17:55] 1 WAY hash nonce submitted [2017-12-15 05:17:55] CPU #2: 62.99 kH, 8803.87 H/s [2017-12-15 05:17:55] Rejected 3/3 (100.0%), 165.01 kH, 35.98 kH/s [2017-12-15 05:17:55] reject reason: low difficulty share of 3.9760953496518064e-8 [2017-12-15 05:17:55] factor reduced to : 0.30 [2017-12-15 05:17:55] 4 WAY hash nonces submitted: 0 [2017-12-15 05:17:55] 1 WAY hash nonce submitted [2017-12-15 05:17:55] CPU #1: 10.24 kH, 14.97 kH/s [2017-12-15 05:17:55] Rejected 4/4 (100.0%), 118.56 kH, 42.48 kH/s [2017-12-15 05:17:55] reject reason: low difficulty share of 7.469801103230193e-7 [2017-12-15 05:17:55] factor reduced to : 0.20 [2017-12-15 05:18:03] 4 WAY hash nonces submitted: 0 [2017-12-15 05:18:03] 1 WAY hash nonce submitted [2017-12-15 05:18:03] CPU #3: 167.92 kH, 11.32 kH/s [2017-12-15 05:18:03] Rejected 5/5 (100.0%), 262.44 kH, 44.17 kH/s [2017-12-15 05:18:03] reject reason: low difficulty share of 3.4403911449252514e-8 [2017-12-15 05:18:03] factor reduced to : 0.13 [2017-12-15 05:18:14] 4 WAY hash nonces submitted: 0 [2017-12-15 05:18:14] 1 WAY hash nonce submitted [2017-12-15 05:18:14] CPU #0: 222.08 kH, 8624.82 H/s [2017-12-15 05:18:14] Rejected 6/6 (100.0%), 463.24 kH, 43.72 kH/s [2017-12-15 05:18:14] reject reason: low difficulty share of 8.317881954690417e-8 [2017-12-15 05:18:14] factor reduced to : 0.09 [2017-12-15 05:18:14] 4 WAY hash nonces submitted: 0 [2017-12-15 05:18:15] 1 WAY hash nonce submitted [2017-12-15 05:18:15] CPU #0: 3528 H, 13.74 kH/s [2017-12-15 05:18:15] Rejected 7/7 (100.0%), 244.68 kH, 48.84 kH/s [2017-12-15 05:18:15] reject reason: low difficulty share of 8.689102139919432e-8 [2017-12-15 05:18:15] factor reduced to : 0.06 [2017-12-15 05:18:15] 4 WAY hash nonces submitted: 0 [2017-12-15 05:18:15] 1 WAY hash nonce submitted [2017-12-15 05:18:15] CPU #0: 431 H, 7178.07 H/s [2017-12-15 05:18:15] Rejected 8/8 (100.0%), 241.58 kH, 42.27 kH/s [2017-12-15 05:18:15] reject reason: low difficulty share of 1.0635928005429685e-7 [2017-12-15 05:18:15] factor reduced to : 0.04 [2017-12-15 05:18:18] 4 WAY hash nonces submitted: 0 [2017-12-15 05:18:18] 1 WAY hash nonce submitted [2017-12-15 05:18:18] CPU #2: 222.20 kH, 9596.46 H/s [2017-12-15 05:18:18] Rejected 9/9 (100.0%), 400.79 kH, 43.06 kH/s [2017-12-15 05:18:18] reject reason: low difficulty share of 7.515368302351459e-8 [2017-12-15 05:18:18] factor reduced to : 0.03 [2017-12-15 05:18:40] 4 WAY hash nonces submitted: 0 [2017-12-15 05:18:40] 1 WAY hash nonce submitted [2017-12-15 05:18:40] CPU #0: 279.30 kH, 10.96 kH/s [2017-12-15 05:18:40] Rejected 10/10 (100.0%), 679.66 kH, 46.84 kH/s [2017-12-15 05:18:40] reject reason: low difficulty share of 5.0051796485619505e-8 [2017-12-15 05:18:40] factor reduced to : 0.02 [2017-12-15 05:18:46] CPU #3: 678.93 kH, 16.04 kH/s [2017-12-15 05:18:54] 4 WAY hash nonces submitted: 0 [2017-12-15 05:18:54] 1 WAY hash nonce submitted [2017-12-15 05:18:54] CPU #2: 536.56 kH, 15.03 kH/s [2017-12-15 05:18:54] Rejected 11/11 (100.0%), 1505.03 kH, 57.00 kH/s [2017-12-15 05:18:54] reject reason: low difficulty share of 9.10089396836757e-8 [2017-12-15 05:18:54] factor reduced to : 0.01 [2017-12-15 05:18:57] Stratum difficulty set to 0.0171429 [2017-12-15 05:21:04] CPU #1: 898.44 kH, 4757.21 H/s
Stupid mistake, try this change in algo/lyra2/lyra2h.c line 34: 34c34 < LYRA2Z( lyra2h_matrix, hash, 32, hash, 32, hash, 32, 16, 16, 16 ); --- > LYRA2Z( lyra2h_matrix, hash, 32, hash, 32, hash, 32, 8, 8, 8);
I presume no news means it now works? I'd like confirmation.
|
|
|
|
mangoo
Newbie
Offline
Activity: 23
Merit: 0
|
|
December 16, 2017, 05:31:52 AM |
|
Stupid mistake, try this change in algo/lyra2/lyra2h.c line 34: 34c34 < LYRA2Z( lyra2h_matrix, hash, 32, hash, 32, hash, 32, 16, 16, 16 ); --- > LYRA2Z( lyra2h_matrix, hash, 32, hash, 32, hash, 32, 8, 8, 8);
I presume no news means it now works? I'd like confirmation. With the following change it still only uses 32 CPUs: --- algo/lyra2/lyra2h.c.orig 2017-12-14 23:28:51.000000000 +0000 +++ algo/lyra2/lyra2h.c 2017-12-16 05:29:48.295167452 +0000 @@ -31,7 +31,7 @@ sph_blake256( &ctx_blake, input + 64, 16 ); sph_blake256_close( &ctx_blake, hash ); - LYRA2Z( lyra2h_matrix, hash, 32, hash, 32, hash, 32, 8, 8, 8); + LYRA2Z( lyra2h_matrix, hash, 32, hash, 32, hash, 32, 16, 16, 16); memcpy(state, hash, 32); }
Not sure if I should try your earlier changes as well? If so - could you send a patch in diff -u format?
|
|
|
|
starcrys
Newbie
Offline
Activity: 27
Merit: 0
|
|
December 16, 2017, 07:25:27 AM Last edit: December 16, 2017, 08:49:56 AM by starcrys |
|
Hi, I just wanna check if anyone's mining m7m on zpool? I'm having trouble connecting to the server, keeps saying "stratum_subscribe send failed". Is it just me or is the pool having some issues? I've tried connecting to xevan on zpool and it seems that there wasn't any connection problems for xevan...
|
|
|
|
Drag0g0
Newbie
Offline
Activity: 64
Merit: 0
|
|
December 16, 2017, 08:00:28 AM |
|
Im getting "stratum_recv_line failed" with stable connection, did try differend pools and no help.
It happen every ~15min
Trying mine Yenten.
|
|
|
|
nizzuu
Full Member
Offline
Activity: 187
Merit: 100
Cryptocurrency enthusiast
|
|
December 16, 2017, 11:20:58 AM |
|
Im getting "stratum_recv_line failed" with stable connection, did try differend pools and no help.
It happen every ~15min
Trying mine Yenten.
Pool issues, or your hardaware is too slow to send at least one share in the desired period of time (e.g. 15mins for your pool), so the pool thinks you're not there. Try to decrease diff (use fixed diff if this pool supports it, or a port with a lower diff).
|
|
|
|
joblo (OP)
Legendary
Offline
Activity: 1470
Merit: 1114
|
|
December 16, 2017, 02:26:20 PM Last edit: December 16, 2017, 02:53:30 PM by joblo |
|
Stupid mistake, try this change in algo/lyra2/lyra2h.c line 34: 34c34 < LYRA2Z( lyra2h_matrix, hash, 32, hash, 32, hash, 32, 16, 16, 16 ); --- > LYRA2Z( lyra2h_matrix, hash, 32, hash, 32, hash, 32, 8, 8, 8);
I presume no news means it now works? I'd like confirmation. With the following change it still only uses 32 CPUs: --- algo/lyra2/lyra2h.c.orig 2017-12-14 23:28:51.000000000 +0000 +++ algo/lyra2/lyra2h.c 2017-12-16 05:29:48.295167452 +0000 @@ -31,7 +31,7 @@ sph_blake256( &ctx_blake, input + 64, 16 ); sph_blake256_close( &ctx_blake, hash ); - LYRA2Z( lyra2h_matrix, hash, 32, hash, 32, hash, 32, 8, 8, 8); + LYRA2Z( lyra2h_matrix, hash, 32, hash, 32, hash, 32, 16, 16, 16); memcpy(state, hash, 32); }
Not sure if I should try your earlier changes as well? If so - could you send a patch in diff -u format? I'm a bit confused by this post. Your comment about still using 32 CPUs is for my previous post about using 1ULL to force it to 64 bits. You're saying that didn't work? The quote above is for a different problem with rejects mining the new lyra2h algo. Is that what you are now offerring to test? Edit: I re-read you post a few more times and it appears you're saying that the Lyra2 chage didn't fix the 32 cpu limit problem you initially reported. It only (hopefully) fixes the rejects from lyra2h reported by someone else. This is the proposed fix for the 32 cpu limit: @@ -204,7 +204,7 @@ for ( uint8_t i = 0; i < ncpus; i++ ) { // cpu mask - if( (ncpus > 64) || ( mask & (1UL << i) ) ) CPU_SET( i, &set ); + if( (ncpus > 64) || ( mask & (1ULL << i) ) ) CPU_SET( i, &set ); } if ( id == -1 ) { @@ -1690,9 +1690,9 @@ { if (opt_debug) applog( LOG_DEBUG, "Binding thread %d to cpu %d (mask %x)", - thr_id, thr_id % num_cpus, ( 1 << (thr_id % num_cpus) ) ); + thr_id, thr_id % num_cpus, ( 1ULL << (thr_id % num_cpus) ) ); - affine_to_cpu_mask( thr_id, 1 << (thr_id % num_cpus) ); + affine_to_cpu_mask( thr_id, 1ULL << (thr_id % num_cpus) ); } else if (opt_affinity != -1) {
|
|
|
|
mangoo
Newbie
Offline
Activity: 23
Merit: 0
|
|
December 16, 2017, 04:32:47 PM |
|
This is the proposed fix for the 32 cpu limit: @@ -204,7 +204,7 @@ for ( uint8_t i = 0; i < ncpus; i++ ) { // cpu mask - if( (ncpus > 64) || ( mask & (1UL << i) ) ) CPU_SET( i, &set ); + if( (ncpus > 64) || ( mask & (1ULL << i) ) ) CPU_SET( i, &set ); } if ( id == -1 ) { @@ -1690,9 +1690,9 @@ { if (opt_debug) applog( LOG_DEBUG, "Binding thread %d to cpu %d (mask %x)", - thr_id, thr_id % num_cpus, ( 1 << (thr_id % num_cpus) ) ); + thr_id, thr_id % num_cpus, ( 1ULL << (thr_id % num_cpus) ) ); - affine_to_cpu_mask( thr_id, 1 << (thr_id % num_cpus) ); + affine_to_cpu_mask( thr_id, 1ULL << (thr_id % num_cpus) ); } else if (opt_affinity != -1) {
All good now - all CPUs running with this patch, thanks!
|
|
|
|
joblo (OP)
Legendary
Offline
Activity: 1470
Merit: 1114
|
|
December 16, 2017, 05:12:40 PM |
|
This is the proposed fix for the 32 cpu limit: @@ -204,7 +204,7 @@ for ( uint8_t i = 0; i < ncpus; i++ ) { // cpu mask - if( (ncpus > 64) || ( mask & (1UL << i) ) ) CPU_SET( i, &set ); + if( (ncpus > 64) || ( mask & (1ULL << i) ) ) CPU_SET( i, &set ); } if ( id == -1 ) { @@ -1690,9 +1690,9 @@ { if (opt_debug) applog( LOG_DEBUG, "Binding thread %d to cpu %d (mask %x)", - thr_id, thr_id % num_cpus, ( 1 << (thr_id % num_cpus) ) ); + thr_id, thr_id % num_cpus, ( 1ULL << (thr_id % num_cpus) ) ); - affine_to_cpu_mask( thr_id, 1 << (thr_id % num_cpus) ); + affine_to_cpu_mask( thr_id, 1ULL << (thr_id % num_cpus) ); } else if (opt_affinity != -1) {
All good now - all CPUs running with this patch, thanks! Thanks for testing. I still don't understand why it worked before with -1UL (32 bit) but it's moot now. If I get a response (or after a suitable timeout with no response) for the lyra2h fix I will release both
|
|
|
|
|