Closed minzak closed 4 years ago
do you get the same error with the precompiled binaries? Could you please also try to reduce the number of used gpus in your amd.txt file.
IMO: you should not mine randomx with gpus, the hash rate for gpus is very bad :-(
Got a Segmentation fault Error too. I´m not using any GPUs, just downloaded the precompiled files, copied the configs/pool files. My old xmr-stak build 2.10.1 is running just fine on debian 9.
[2019-11-19 15:46:55] : Mining coin: randomx [2019-11-19 15:46:55] : Starting 1x thread, affinity: 0. [2019-11-19 15:46:55] : Starting 1x thread, affinity: 1. [2019-11-19 15:46:55] : Starting 1x thread, affinity: 2. [2019-11-19 15:46:55] : hwloc: memory pinned [2019-11-19 15:46:55] : Starting 1x thread, affinity: 3. [2019-11-19 15:46:55] : hwloc: memory pinned [2019-11-19 15:46:55] : Starting 1x thread, affinity: 4. [2019-11-19 15:46:55] : hwloc: memory pinned [2019-11-19 15:46:55] : Fast-connecting to pool.supportxmr.com:5555 pool ... [2019-11-19 15:46:55] : Pool pool.supportxmr.com:5555 connected. Logging in... [2019-11-19 15:46:55] : Difficulty changed. Now: 20000. [2019-11-19 15:46:55] : Pool logged in. Segmentation fault
please do not reuse the cpu.txt, nvidia.txt and/or amd.txt.
The origin author of this issue: please post your amd.txt i need to know which gpus you use.
Having the same segfault problem using the precompiled Windows binary or compiling my own on Debian stable. Here's the compilation information and backtrace using gdb:
/etc/sysctl.conf: vm.nr_hugepages = 1250 -- The C compiler identification is GNU 8.3.0 -- The CXX compiler identification is GNU 8.3.0 export CFLAGS="-g3 -mtune=native -m64 -O0" export CXXFLAGS="$CFLAGS" cmake . -DOpenCL_ENABLE=OFF -DCUDA_ENABLE=OFF
No configuration files were reused. Verbose level in `config.txt' set to "10".
xmr-stak-rx 1.0.0-rx f8d367e95 ... [2019-11-20 16:57:32] : Mining coin: randomx !!!! Doing only a benchmark and exiting. To mine, remove the '--benchmark' option. !!!! [2019-11-20 16:57:32] : Prepare benchmark for block version 0 [2019-11-20 16:57:32] : Starting 1x thread, affinity: 0. [New Thread 0x7ffff6f0b700 (LWP 18150)] [2019-11-20 16:57:32] : hwloc: memory pinned [2019-11-20 16:57:32] : Starting 1x thread, affinity: 1. [New Thread 0x7fff5ffff700 (LWP 18151)] [2019-11-20 16:57:32] : Starting 1x thread, affinity: 2. [New Thread 0x7fff5f7fe700 (LWP 18152)] [2019-11-20 16:57:32] : Starting 1x thread, affinity: 3. [New Thread 0x7fff5ebff700 (LWP 18153)] [2019-11-20 16:57:32] : Wait 30 sec until all backends are initialized [2019-11-20 16:58:02] : Wait 30 sec to initialize the dataset
Thread 4 "xmr-stak-rx" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fff5f7fe700 (LWP 18152)]
randomx_calculate_hash (machine=0x0, input=
at /usr/local/src/xmr-stak-rx/xmr-stak-1.0.0-rx/xmrstak/backend/cpu/crypto/randomx/randomx.cpp:451
at /usr/include/c++/8/bits/std_mutex.h:229
(gdb)
Let me know if you need more information.
which processor do you used?
*-cpu
description: CPU
product: Intel(R) Xeon(R) CPU E3-1270 v5 @ 3.60GHz
vendor: Intel Corp.
physical id: 4
bus info: cpu@0
version: Intel(R) Xeon(R) CPU E3-1270 v5 @ 3.60GHz
serial: To Be Filled By O.E.M.
slot: CPU0
size: 3699MHz
capacity: 4GHz
width: 64 bits
clock: 100MHz
capabilities: lm fpu fpu_exception wp vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp x86-64 constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb invpcid_single pti ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp md_clear flush_l1d cpufreq
configuration: cores=4 enabledcores=4 threads=8
thanks from your log I can see that one pointer is null but this should not be happen. I will have a look into it.
@tantalus-ak could you please post your cpu.txt file
more cpu.txt // generated by xmr-stak-rx/1.0.0-rx/f8d367e95/unknown/lin/nvidia-cpu ... "cpu_threads_conf" : [ { "low_power_mode" : false, "no_prefetch" : true, "asm" : "auto", "affine_to_cpu" : 0 }, { "low_power_mode" : false, "no_prefetch" : true, "asm" : "auto", "affine_to_cpu" : 1 }, { "low_power_mode" : false, "no_prefetch" : true, "asm" : "auto", "affine_to_cpu" : 2 }, { "low_power_mode" : false, "no_prefetch" : true, "asm" : "auto", "affine_to_cpu" : 3 },
],
Is the segfault only visible when you are running the benchmark. Could you try to use a testnet pool?
@tantalus-ak You are using the nvidia-cpu version, could you please send me your nvidia.txt too
@tantalus-ak can you please recompile all in a clean directory: Somehow the data you provided are not constant. You compiled with cmake . -DOpenCL_ENABLE=OFF -DCUDA_ENABLE=OFF
but the version shows // generated by xmr-stak-rx/1.0.0-rx/f8d367e95/unknown/lin/nvidia-cpu
@tantalus-ak could you please also try to start with the cli option --noTest
@tantalus-ak if you recompile the miner please use https://github.com/psychocrypt/xmr-stak/tree/rx-topic-searchSegfault I added one more message. I like to see if the miner is going into the else part of a check.
Sorry about that; I copied over the *.txt files from my first compilation when the following variables and options were still enabled:
export CC=/usr/bin/gcc-6 export CXX=/usr/bin/g++-6 cmake . -DOpenCL_ENABLE=OFF -DCUDA_COMPILER=nvcc -DCUDA_ARCH=61
BTW, this generated an nvidia.txt file that was effectively disabled:
more nvidia.txt // generated by xmr-stak-rx/1.0.0-rx/f8d367e95/unknown/lin/nvidia-cpu ... "gpu_threads_conf" : [
],
The installed GPU is:
*-display
description: VGA compatible controller
product: GP107 [GeForce GTX 1050]
vendor: NVIDIA Corporation
physical id: 0
bus info: pci@0000:01:00.0
version: a1
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress vga_controller bus_master cap_list rom
configuration: driver=nvidia latency=0
resources: irq:135 memory:d2000000-d2ffffff memory:c0000000-cfffffff memory:d0000000-d1ffffff ioport:3000(size=128) memory:d3080000-d30fffff
Anyway, the cleanly compiled program (-DCUDA_ENABLE=OFF) generates the same cpu.txt file (but with a header of "// generated by xmr-stak-rx/1.0.0-rx/f8d367e95/unknown/lin/cpu").
It seems to run fine connecting to `rx.minexmr.com:4444' in mining mode. The CPU hashrate is 1550 H/s versus 275 H/s with version 2.10.7 (compiler still run with no optimization [-O0]).
The benchmark mode still segfaults, however, regardless of whether "--noTest" is specified.
I'll download your test version and post the results.
@tantalus-ak thanks for all the information. I think I found the problem. You started with option --benchmark 0
. This is not initializing all data correct. I will disallow block version zero for testing.
can you rerun with --benchmark 1
again!
Much better...
xmr-stak-rx 1.0.0-rx f8d367e95 ... [2019-11-20 19:08:32] : Mining coin: randomx !!!! Doing only a benchmark and exiting. To mine, remove the '--benchmark' option. !!!! [2019-11-20 19:08:32] : Prepare benchmark for block version 1 [2019-11-20 19:08:32] : Starting 1x thread, affinity: 0. [2019-11-20 19:08:32] : Starting 1x thread, affinity: 1. [2019-11-20 19:08:32] : Starting 1x thread, affinity: 2. [2019-11-20 19:08:32] : Starting 1x thread, affinity: 3. [2019-11-20 19:08:32] : Wait 30 sec until all backends are initialized [2019-11-20 19:09:02] : Wait 30 sec to initialize the dataset [2019-11-20 19:09:02] : randomx create vm [2019-11-20 19:09:02] : randomx create vm [2019-11-20 19:09:02] : randomx check for update dataset with 4 threads [2019-11-20 19:09:02] : randomx check for update dataset with 4 threads [2019-11-20 19:09:02] : randomx create vm [2019-11-20 19:09:02] : randomx create vm [2019-11-20 19:09:02] : randomx check for update dataset with 4 threads [2019-11-20 19:09:02] : randomx check for update dataset with 4 threads [2019-11-20 19:09:32] : Wait 2 sec to end warmup [2019-11-20 19:09:34] : Start a 60 second benchmark... [2019-11-20 19:09:34] : randomx check for update dataset with 4 threads [2019-11-20 19:09:34] : randomx check for update dataset with 4 threads [2019-11-20 19:09:34] : randomx check for update dataset with 4 threads [2019-11-20 19:09:34] : randomx check for update dataset with 4 threads [2019-11-20 19:10:34] : Wait 2 sec to collect benchmark data [2019-11-20 19:10:36] : Benchmark Thread 0 cpu: 386.5 H/S [2019-11-20 19:10:36] : Benchmark Thread 1 cpu: 389.0 H/S [2019-11-20 19:10:36] : Benchmark Thread 2 cpu: 388.2 H/S [2019-11-20 19:10:36] : Benchmark Thread 3 cpu: 386.5 H/S [2019-11-20 19:10:36] : Benchmark Total: 1550.2 H/S [2019-11-20 19:10:36] : Benchmark are measured without the dataset creation.
Here is the compilation of your version with the additional debugging statement running with verbose=10. gdb output with --benchmark 0 and 1:
(gdb) run --benchmark 0 Starting program: /usr/local/src/xmr-stak-rx/xmr-stak-rx-topic-searchSegfault/bin/xmr-stak-rx --benchmark 0 [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". [2019-11-20 19:33:29] : start self test for 'randomx' [2019-11-20 19:33:29] : randomx create vm [2019-11-20 19:33:29] : randomx check for update dataset with 1 threads [2019-11-20 19:33:29] : Thread 0 started updating RandomX dataset 55630858 [2019-11-20 19:33:30] : Thread 0 start updating RandomX dataset 0 34078719 [2019-11-20 19:33:50] : Thread 0 finished updating RandomX dataset ... [2019-11-20 19:33:50] : Mining coin: randomx !!!! Doing only a benchmark and exiting. To mine, remove the '--benchmark' option. !!!! [2019-11-20 19:33:50] : Prepare benchmark for block version 0 [2019-11-20 19:33:50] : Starting 1x thread, affinity: 0. [New Thread 0x7ffff6f0b700 (LWP 19799)] [2019-11-20 19:33:50] : hwloc: memory pinned [2019-11-20 19:33:50] : Starting 1x thread, affinity: 1. [New Thread 0x7fff5ffff700 (LWP 19800)] [2019-11-20 19:33:50] : invalid_algo can not find a job selector function [2019-11-20 19:33:50] : Starting 1x thread, affinity: 2. [New Thread 0x7fff5f7fe700 (LWP 19801)] [2019-11-20 19:33:50] : invalid_algo can not find a job selector function [2019-11-20 19:33:50] : Starting 1x thread, affinity: 3. [2019-11-20 19:33:50] : invalid_algo can not find a job selector function [New Thread 0x7fff5ebff700 (LWP 19802)] [2019-11-20 19:33:50] : Wait 30 sec until all backends are initialized [2019-11-20 19:33:50] : invalid_algo can not find a job selector function [2019-11-20 19:34:20] : Wait 30 sec to initialize the dataset
Thread 4 "xmr-stak-rx" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fff5f7fe700 (LWP 19801)]
randomx_calculate_hash (machine=0x0, input=
at /usr/local/src/xmr-stak-rx/xmr-stak-rx-topic-searchSegfault/xmrstak/backend/cpu/crypto/randomx/randomx.cpp:451
at /usr/include/c++/8/bits/std_mutex.h:229
Now with --benchmark 1:
(gdb) run --benchmark 1 Starting program: /usr/local/src/xmr-stak-rx/xmr-stak-rx-topic-searchSegfault/bin/xmr-stak-rx --benchmark 1 [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". [2019-11-20 19:35:02] : start self test for 'randomx' [2019-11-20 19:35:02] : randomx create vm [2019-11-20 19:35:02] : randomx check for update dataset with 1 threads [2019-11-20 19:35:02] : Thread 0 started updating RandomX dataset 55630858 [2019-11-20 19:35:03] : Thread 0 start updating RandomX dataset 0 34078719 [2019-11-20 19:35:22] : Thread 0 finished updating RandomX dataset ... [2019-11-20 19:35:22] : Mining coin: randomx !!!! Doing only a benchmark and exiting. To mine, remove the '--benchmark' option. !!!! [2019-11-20 19:35:22] : Prepare benchmark for block version 1 [2019-11-20 19:35:22] : Starting 1x thread, affinity: 0. [New Thread 0x7ffff6f0b700 (LWP 19811)] [2019-11-20 19:35:22] : hwloc: memory pinned [2019-11-20 19:35:22] : Starting 1x thread, affinity: 1. [2019-11-20 19:35:22] : invalid_algo can not find a job selector function [New Thread 0x7fff5ffff700 (LWP 19812)] [2019-11-20 19:35:22] : Starting 1x thread, affinity: 2. [New Thread 0x7fff5f7fe700 (LWP 19813)] [2019-11-20 19:35:22] : invalid_algo can not find a job selector function [2019-11-20 19:35:22] : Starting 1x thread, affinity: 3. [New Thread 0x7fff5ebff700 (LWP 19814)] [2019-11-20 19:35:22] : invalid_algo can not find a job selector function [2019-11-20 19:35:23] : Wait 30 sec until all backends are initialized [2019-11-20 19:35:23] : invalid_algo can not find a job selector function [2019-11-20 19:35:53] : Wait 30 sec to initialize the dataset [2019-11-20 19:35:53] : randomx create vm [2019-11-20 19:35:53] : randomx check for update dataset with 4 threads [2019-11-20 19:35:53] : randomx create vm [2019-11-20 19:35:53] : randomx check for update dataset with 4 threads [2019-11-20 19:35:53] : randomx create vm [2019-11-20 19:35:53] : randomx check for update dataset with 4 threads [2019-11-20 19:35:53] : randomx create vm [2019-11-20 19:35:53] : randomx check for update dataset with 4 threads [2019-11-20 19:36:23] : Wait 2 sec to end warmup [2019-11-20 19:36:25] : Start a 60 second benchmark... [2019-11-20 19:36:25] : randomx check for update dataset with 4 threads [2019-11-20 19:36:25] : randomx check for update dataset with 4 threads [2019-11-20 19:36:25] : randomx check for update dataset with 4 threads [2019-11-20 19:36:25] : randomx check for update dataset with 4 threads [2019-11-20 19:37:25] : Wait 2 sec to collect benchmark data [2019-11-20 19:37:27] : Benchmark Thread 0 cpu: 388.4 H/S [2019-11-20 19:37:27] : Benchmark Thread 1 cpu: 388.5 H/S [2019-11-20 19:37:27] : Benchmark Thread 2 cpu: 388.3 H/S [2019-11-20 19:37:27] : Benchmark Thread 3 cpu: 385.5 H/S [2019-11-20 19:37:27] : Benchmark Total: 1550.7 H/S [2019-11-20 19:37:27] : Benchmark are measured without the dataset creation. [Thread 0x7fff5ebff700 (LWP 19814) exited] [Thread 0x7fff5ffff700 (LWP 19812) exited] [Thread 0x7ffff6f0b700 (LWP 19811) exited] [Thread 0x7ffff6f1c980 (LWP 19807) exited] [Inferior 1 (process 19807) exited normally] (gdb)
thanks for your help to analyse the issue.
You're very welcome. Your contribution of expertise is also much appreciated by all of us.
fixed with #2561
@bizlevel I have forgot to mention that rocm is not supported. For linux you must use the AMD driver.
For linux you must use the AMD driver. ((( It is locked to Ubuntu now (((
As I said do not worry gpus will not have a guud randomx performance.I suggest to have look for an other coin to utilize your GPUs.
Very strange, i'm trying build xmr-stak-rx branch with same build optin with master branch. And i got Segmentation fault in final.
What is wrong?