pow-miner-gpu icon indicating copy to clipboard operation
pow-miner-gpu copied to clipboard

GPU #0: bitcredit_setBlockTarget invalid device symbol

Open Oleg-Perevyshin opened this issue 3 years ago • 35 comments

I am trying to run the miner on a laptop (Windows 11 x64). NVIDIA GTX 960M graphics card. I did everything according to the instructions, but I see an error in the terminal

C:\GPUMiner>tonlib-cuda-cli.exe -v 3 -C global.config.json -e "pminer start kf-FV4QTxLl-7Ct3E6MqOtMt-RGXMxi27g4I645lw6MTWraV EQDIv4TOzyDAkXZf2HWQ4bezP5-8kVofFwokvJZQ1Fk7GCoi 0 32"
[ 3][t 1][2021-11-10 13:41:48.0577633][TonlibClient.cpp:2108][!Tonlib]  Use blockchain name from MASTER config: 'mainnet' (was '')
Tonlib is inited
[ 1][t 1][2021-11-10 13:41:48.4666062][cuda.cpp:81][!console]   [ GPU #0: SM 5.0 NVIDIA GeForce GTX 960M ]
[ 3][t 1][2021-11-10 13:41:48.4667749][tonlib-cli.cpp:883][!console]    Miner #1 created
synchronization: ???
synchronization: 0%
synchronization: DONE in 699.1ms
[ 3][t 1][2021-11-10 13:41:49.3817483][tonlib-cli.cpp:796][!PowMiner]   pminer: got new options from kf-FV4QTxLl-7Ct3E6MqOtMt-RGXMxi27g4I645lw6MTWraV, seed=156185698434286525545710372048077321757, complexity=204857950755971713779463712915849985371117315165373013385286222
[ 3][t 1][2021-11-10 13:41:49.3819134][tonlib-cli.cpp:801][!PowMiner]   [ expected required hashes for success: 565231121418609 ]
[ 3][t 1][2021-11-10 13:41:49.3835790][tonlib-cli.cpp:674][!PowMiner]   pminer: start workers
[ 3][t 4][2021-11-10 13:41:49.4682689][credits.cu:29]   [ START MINER, GPU ID: 0, boost factor: 32, throughput: 16777216 ]
[ 1][t 4][2021-11-10 13:41:49.4694932][cuda.cpp:205]    [ GPU #0: bitcredit_setBlockTarget invalid device symbol ]
synchronization: 100%
synchronization: DONE in 3341.6ms
synchronization: 100%
synchronization: DONE in 442.4ms
synchronization: 100%
synchronization: DONE in 633.5ms
......

What is it? GPU #0: bitcredit_setBlockTarget invalid device symbol

Oleg-Perevyshin avatar Nov 10 '21 13:11 Oleg-Perevyshin

This is an issue related to Win 11 + mobile-grade GPU. Working on it

tontechio avatar Nov 10 '21 14:11 tontechio

Helo! I have the same error on Windows 10x64 Version 20H2. NVIDIA GeForce GTX 850M

See line 70.

...
4: [ 1][t 1][2021-11-10 15:06:12.4775488][cuda.cpp:81][!console]	[ GPU #0: SM 5.0 NVIDIA GeForce GTX 850M ]
5: [ 3][t 1][2021-11-10 15:06:12.4799021][tonlib-cli.cpp:883][!console]	Miner #1 created
...
67: synchroni[ 3][t 4][2021-11-10 15:13:45.7972554][credits.cu:29]	[ START MINER, GPU ID: 0, boost factor: 32, throughput: 16777216 ]
68: [ 1][t 4][2021-11-10 15:13:45.7987026][cuda.cpp:205]	[ GPU #0: bitcredit_setBlockTarget invalid device symbol ]
69: [ 3][t 4][2021-11-10 15:22:53.2207998][credits.cu:29]	[ START MINER, GPU ID: 0, boost factor: 32, throughput: 16777216 ]
70: [ 1][t 4][2021-11-10 15:22:53.2212183][cuda.cpp:205]	[ GPU #0: bitcredit_setBlockTarget invalid device symbol ]
 DONE in 779.7ms
71: synchronization: 100%
72: synsynchronization: DONE in 505.6ms
73: synchronization: 10synsynchronization: DONE in 669.4ms
...

Hope it helps.

K-S-K avatar Nov 10 '21 15:11 K-S-K

Hi there, I have the same issue on Windows 10*64 NVIDIA GeForce GTX 780

C:\minertools-cuda-windows-x86-64>tonlib-cuda-cli.exe -V
tonlib-cli build information: [ Commit: 81ca0b840e8cf1b438361e14c2c94d0988f09b76, Date: 2021-11-08 00:19:18 +0300]

C:\minertools-cuda-windows-x86-64>tonlib-cuda-cli.exe -v 3 -C global.config.json -e "pminer start kf91o4NNTryJ-Cw3sDGt9OTiafmETdVFUMvylQdFPoOxIsLm EQCfw5MgLzwIEkJZwTltEnXWvIvOka1snM35yAjJAQ-njP5c 0 64 0"
[ 3][t 1][2021-11-11 13:47:40.9179265][TonlibClient.cpp:2108][!Tonlib]  Use blockchain name from MASTER config: 'mainnet' (was '')
Tonlib is inited
[ 1][t 1][2021-11-11 13:47:41.0207920][cuda.cpp:81][!console]   [ GPU #0: SM 3.5 NVIDIA GeForce GTX 780 ]
[ 1][t 1][2021-11-11 13:47:41.0209110][cuda.cpp:81][!console]   [ GPU #1: SM 3.5 NVIDIA GeForce GTX 780 ]
[ 3][t 1][2021-11-11 13:47:41.0212588][tonlib-cli.cpp:883][!console]    Miner #1 created
synchronization: ???
synchronization: 0%
synchronization: DONE in 515.6ms
[ 3][t 1][2021-11-11 13:47:41.6917309][tonlib-cli.cpp:796][!PowMiner]   pminer: got new options from kf91o4NNTryJ-Cw3sDGt9OTiafmETdVFUMvylQdFPoOxIsLm, seed=33884584255273417740275354792098277267, complexity=187403080593944191722212052688801659771644975614754686049472402
[ 3][t 1][2021-11-11 13:47:41.6919514][tonlib-cli.cpp:801][!PowMiner]   [ expected required hashes for success: 617877192148238 ]
[ 3][t 1][2021-11-11 13:47:41.6925224][tonlib-cli.cpp:674][!PowMiner]   pminer: start workers
[ 3][t 4][2021-11-11 13:47:41.7775496][credits.cu:29]   [ START MINER, GPU ID: 0, boost factor: 64, throughput: 33554432 ]
[ 1][t 4][2021-11-11 13:47:41.7779222][cuda.cpp:205]    [ GPU #0: bitcredit_setBlockTarget invalid device symbol ]
synchronization: 100%
synchronization: DONE in 369.9ms

Everything works perfect on my RTX 3080 Ti but I wish to have a chance to run it on my old one station.

saintgeorge4lite avatar Nov 11 '21 13:11 saintgeorge4lite

The same error on Ubuntu. [cuda.cpp:205] [ GPU #0: bitcredit_setBlockTarget invalid device symbol ]

System: Ubuntu 20.04 Video Card: GeForce GTX 770 Driver: 470.42.01 Cuda: 11.4

4matic avatar Nov 11 '21 18:11 4matic

[ 1][t 3][2021-11-12 03:04:52.729423524][cuda.cpp:205] [ GPU #1: bitcredit_setBlockTarget invalid device symbol ] Linux Mint 20 1060 Driver Version: 450.51.06 CUDA Version: 11.0

SamoilenkoLev avatar Nov 12 '21 03:11 SamoilenkoLev

Windows 10 x64, Geforce GTX950m Same problem

cheteron avatar Nov 12 '21 03:11 cheteron

Windows 10 x64, Geforce 950M AND Windows 10 x64, Geforce 670 Same problem

ru39 avatar Nov 12 '21 17:11 ru39

Hey guys, problem has been solved by running OpenCL build instead of CUDA. However hashrate on 780GTX is very dissapointing.

saintgeorge4lite avatar Nov 13 '21 06:11 saintgeorge4lite

Hey guys, problem has been solved by running OpenCL build instead of CUDA. However hashrate on 780GTX is very dissapointing.

So this is a bad decision. The problem is not solved.

Oleg-Perevyshin avatar Nov 13 '21 06:11 Oleg-Perevyshin

Hey guys, problem has been solved by running OpenCL build instead of CUDA. However hashrate on 780GTX is very dissapointing.

So this is a bad decision. The problem is not solved.

Could it be because of weak GPU not OpenCL problem?

saintgeorge4lite avatar Nov 13 '21 07:11 saintgeorge4lite

Hey guys, problem has been solved by running OpenCL build instead of CUDA. However hashrate on 780GTX is very dissapointing.

can you tell us more about the solution?

vloy1 avatar Nov 13 '21 09:11 vloy1

Hey guys, problem has been solved by running OpenCL build instead of CUDA. However hashrate on 780GTX is very dissapointing.

can you tell us more about the solution?

Use OpenCL zip from here instead of CUBA one. The rest settings are the same.

saintgeorge4lite avatar Nov 13 '21 09:11 saintgeorge4lite

This is not the problem. Or just use the opencl miner which will work fine

DelphiR avatar Nov 13 '21 10:11 DelphiR

Hey guys, problem has been solved by running OpenCL build instead of CUDA. However hashrate on 780GTX is very dissapointing.

"Основной проблемой реализации OpenCL от NVidia является низкая производительность по сравнению с CUDA" (https://habr.com/ru/post/72247), так что вряд-ли это эффективный метод решения проблемы.

logvinenkas avatar Nov 13 '21 11:11 logvinenkas

The same problem, win10 64, 750TI.

logvinenkas avatar Nov 13 '21 11:11 logvinenkas

The same problem on Windows 10. Video Card: GeForce GTX 770 Driver: 472.12 Cuda: 11.4.3

4matic avatar Nov 13 '21 14:11 4matic

This is not the problem. Or just use the opencl miner which will work fine

It's not suliton if performance is low

cheteron avatar Nov 13 '21 16:11 cheteron

Hey guys, problem has been solved by running OpenCL build instead of CUDA. However hashrate on 780GTX is very dissapointing.

"Основной проблемой реализации OpenCL от NVidia является низкая производительность по сравнению с CUDA" (https://habr.com/ru/post/72247), так что вряд-ли это эффективный метод решения проблемы.

Outdated (2009) post. For now OpenCL slightly slower than CUDA

tontechio avatar Nov 13 '21 20:11 tontechio

Outdated (2009) post. For now OpenCL slightly slower than CUDA

Will there be an update for working CUDA?

cheteron avatar Nov 14 '21 00:11 cheteron

The opencl version of tonminer is less then 7% lower in terms of hashrate compare to cuda. So threre is a way to avoid this bug just unsing opencl miner Разница производительности майнера тон между opencl и cuda для описанных здесь видеокарт - около 7%, не следует считать, что это баг, выход есть. Он оправдан.

DelphiR avatar Nov 15 '21 19:11 DelphiR

The opencl version of tonminer is less then 7% lower in terms of hashrate compare to cuda. So threre is a way to avoid this bug just unsing opencl miner Разница производительности майнера тон между opencl и cuda для описанных здесь видеокарт - около 7%, не следует считать, что это баг, выход есть. Он оправдан.

@DelphiR Хватит вешать лапшу на уши людям. Разница в 4.4 раза, а не 7%, при этом gpu не загружена больше 1%. Баг есть. И люди не могут полноценно использовать gpu.

@tontechio When will the fix come out? OpenCL speed: 17 Mhash\s Gpu with 0,2% load: 74 Mhash\s

cheteron avatar Nov 16 '21 03:11 cheteron

The opencl version of tonminer is less then 7% lower in terms of hashrate compare to cuda. So threre is a way to avoid this bug just unsing opencl miner Разница производительности майнера тон между opencl и cuda для описанных здесь видеокарт - около 7%, не следует считать, что это баг, выход есть. Он оправдан.

@DelphiR Хватит вешать лапшу на уши людям. Разница в 4.4 раза, а не 7%, при этом gpu не загружена больше 1%. Баг есть. И люди не могут полноценно использовать gpu.

@tontechio When will the fix come out? OpenCL speed: 17 Mhash\s Gpu with 0,2% load: 74 Mhash\s

I fully support it! Developers, solve the problem!

Oleg-Perevyshin avatar Nov 16 '21 17:11 Oleg-Perevyshin

I fully support it! Developers, solve the problem!

Это не решение, а костыль, который не использует все ресурсы видеокарты

This is not a solution, but a crutch that does not use all the resources of the video card

cheteron avatar Nov 16 '21 22:11 cheteron

D:\Minertools>tonlib-cuda-cli.exe -V
tonlib-cli build information: [ Commit: b44bffbffa900c56489cc9586c873adaa5b0bd25, Date: 2021-11-16 19:38:32 +0300]

D:\Minertools>tonlib-cuda-cli.exe -v 3 -C global.config.json -e "pminer start kf8SYc83pm5JkGt0p3TQRkuiM58O9Cr3waUtR9OoFq716lN- EQBv1grmRESid7mMmTQDd_lGJSZ1dh7QlAlG23DeKc30g5kj 0 32 0"
[ 3][t 1][2021-11-16 23:48:28.0467758][TonlibClient.cpp:2108][!Tonlib]  Use blockchain name from MASTER config: 'mainnet' (was '')
[ 2][t 1][2021-11-16 23:48:28.0687556][tonlib-cli.cpp:285][!console]    Tonlib is inited
[ GPU #0: SM 5.0 NVIDIA GeForce GTX 950M ]
[ 3][t 1][2021-11-16 23:48:28.1009003][tonlib-cli.cpp:888][!console]    Miner #1 created
[ 2][t 1][2021-11-16 23:48:28.6860850][tonlib-cli.cpp:801][!PowMiner]   pminer: got new options from kf8SYc83pm5JkGt0p3TQRkuiM58O9Cr3waUtR9OoFq716lN-, seed=145842340426808058230022360004472202638, complexity=71488823370706088821063697944787930557331696836802571304284960
[ 3][t 1][2021-11-16 23:48:28.6865739][tonlib-cli.cpp:806][!PowMiner]   [ expected required hashes for success: 1619722968958028 ]
[ 3][t 1][2021-11-16 23:48:28.6883586][tonlib-cli.cpp:674][!PowMiner]   pminer: start workers
[ 2][t 4][2021-11-16 23:48:28.7553183][credits.cu:29]   [ START MINER, GPU ID: 0, boost factor: 32, throughput: 16777216 ]
[ 1][t 4][2021-11-16 23:48:28.7561439][cuda.cpp:209]    [ GPU #0: bitcredit_setBlockTarget invalid device symbol ]
[pid 9632] [time 1637106508] Signal: 22

D:\Minertools>goto _minerstart

D:\Minertools>tonlib-cuda-cli.exe -V
tonlib-cli build information: [ Commit: b44bffbffa900c56489cc9586c873adaa5b0bd25, Date: 2021-11-16 19:38:32 +0300]

D:\Minertools>tonlib-cuda-cli.exe -v 3 -C global.config.json -e "pminer start kf8SYc83pm5JkGt0p3TQRkuiM58O9Cr3waUtR9OoFq716lN- EQBv1grmRESid7mMmTQDd_lGJSZ1dh7QlAlG23DeKc30g5kj 0 32 0"
[ 3][t 1][2021-11-16 23:48:28.8505122][TonlibClient.cpp:2108][!Tonlib]  Use blockchain name from MASTER config: 'mainnet' (was '')
[ 2][t 1][2021-11-16 23:48:28.8714742][tonlib-cli.cpp:285][!console]    Tonlib is inited
[ GPU #0: SM 5.0 NVIDIA GeForce GTX 950M ]
[ 3][t 1][2021-11-16 23:48:28.9082582][tonlib-cli.cpp:888][!console]    Miner #1 created

After update miner

cheteron avatar Nov 16 '21 23:11 cheteron

Hi,all

Please look at compatibility matrix for CUDA/GPU: https://en.wikipedia.org/wiki/CUDA#GPUs_supported

For example, to build this project for GeForce GTX 770 GPU you'll need CUDA SDK 10.x or earlier versions (support compute 3.0 level). Current version of CUDA SDK 11.5 support only cards at compute 3.5 or higher levels.

Also this way to set compute level is not working for me: https://github.com/tontechio/pow-miner-gpu/blob/b44bffbffa900c56489cc9586c873adaa5b0bd25/crypto/CMakeLists.txt#L314

This patch seems to work (compute level 3.0):

diff --git a/crypto/CMakeLists.txt b/crypto/CMakeLists.txt
index 02d3c7b..57af07b 100644
--- a/crypto/CMakeLists.txt
+++ b/crypto/CMakeLists.txt
@@ -311,12 +311,12 @@ if(MINERCUDA)
   enable_language(CUDA)
 
   find_package(CUDA REQUIRED)
-  SET(CUDA_NVCC_FLAGS “-arch=sm_11”)
   include_directories("${CUDA_INCLUDE_DIRS}")
 
   add_library(pow-miner-cuda-lib util/Miner.cpp util/MinerCuda.cpp util/Miner.h util/cuda/miner.h util/cuda/sha256.cpp util/cuda/sha256.h
     util/cuda/cuda.hpp util/cuda/cuda.cpp util/cuda/cuda_vector.h util/cuda/credits.cu util/cuda/cuda_credits.cu)
   target_include_directories(pow-miner-cuda-lib PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>)
+  target_compile_options(pow-miner-cuda-lib PRIVATE $<$<COMPILE_LANGUAGE:CUDA>:-arch=sm_30>)
   target_link_libraries(pow-miner-cuda-lib PUBLIC ton_crypto ton_block ${CUDA_LIBRARIES})
 
   add_executable(pow-miner-cuda util/pow-miner.cpp)

vlet avatar Nov 17 '21 20:11 vlet

Hi,all

Please look at compatibility matrix for CUDA/GPU: https://en.wikipedia.org/wiki/CUDA#GPUs_supported

For example, to build this project for GeForce GTX 770 GPU you'll need CUDA SDK 10.x or earlier versions (support compute 3.0 level). Current version of CUDA SDK 11.5 support only cards at compute 3.5 or higher levels.

Also this way to set compute level is not working for me: ...

Yeah. Last build solves the problem (possibly) on linux but unfortunately not affected windows version. Hope next release will be more consistent 🤗

tontechio avatar Nov 18 '21 01:11 tontechio

Having the same issue on the latest release (https://github.com/tontechio/pow-miner-gpu/releases/tag/20211119-4). [ 1][t 4][2021-11-19 20:23:04.7726548][cuda.cpp:209] [ GPU #0: bitcredit_setBlockTarget invalid device symbol ]

But have CUDA 11.5 installed:

`PS C:\miner> nvidia-smi
Fri Nov 19 23:28:58 2021
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 496.76       Driver Version: 496.76       CUDA Version: 11.5     |
|-------------------------------+----------------------+----------------------+

Device: GTX850M. Win 10x64. Driver: 496.76. CUDA 11.5.

Waiting for the fix to be addressed.

tomomoto avatar Nov 19 '21 20:11 tomomoto

The opencl version of tonminer is less then 7% lower in terms of hashrate compare to cuda. So threre is a way to avoid this bug just unsing opencl miner Разница производительности майнера тон между opencl и cuda для описанных здесь видеокарт - около 7%, не следует считать, что это баг, выход есть. Он оправдан.

Not fully understand it. The fact we have a much less efficient workaround doesn't mean that there is no bug.

tomomoto avatar Nov 19 '21 20:11 tomomoto

Hi guys, does it possible to use GTX 950M for mining? I use Ubuntu with CUDA

lorfindeil@Glor-home-laptop:/opt/ton-miner$ /opt/ton-miner/pow-miner-cuda -vv -g 0 -p 0 -B -F 16 -t 10 kQBWkNKqzCAwA9vjMwRmg7aY75Rf8lByPA9zKXoqGkHi8SM7 229760179690128740373110445116482216837 5391989333430127958933403017403926134727428884508114496220722049840 10000000000000000000 [ GPU #0: SM 5.0 GeForce GTX 950M ] [ 3][t 0][2021-11-24 14:31:41.665005546][pow-miner.cpp:374] [ expected required hashes for success: 21474836480 ] [ 2][t 0][2021-11-24 14:31:41.693725071][credits.cu:29] [ START MINER, GPU ID: 0, boost factor: 1, throughput: 524288 ] [ 1][t 0][2021-11-24 14:31:41.693924971][cuda.cpp:209] [ GPU #0: bitcredit_setBlockTarget invalid device symbol ]

glorfindeil@Glor-home-laptop:/opt/ton-miner$ nvcc --version nvcc: NVIDIA (R) Cuda compiler driver Copyright (c) 2005-2020 NVIDIA Corporation Built on Wed_Jul_22_19:09:09_PDT_2020 Cuda compilation tools, release 11.0, V11.0.221 Build cuda_11.0_bu.TC445_37.28845127_0

glorko avatar Nov 24 '21 14:11 glorko

I research this error and it is not related to compute capability of 3.5- and cuda 11.4+. I check this issue using build with 10.2 CUDA and compare to windows build with 11.3+ CUDA. The error was reproduced in both way for some Kepler's GPU and even with the 472+ driver too.

DelphiR avatar Nov 27 '21 17:11 DelphiR