Bitcoin Forum
April 26, 2024, 07:59:24 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 2 [3]  All
  Print  
Author Topic: CUDA Optimalized BTC miner for NVIDIA cards  (Read 7694 times)
nightyj
Member
**
Offline Offline

Activity: 89
Merit: 10


View Profile
May 31, 2013, 08:04:41 AM
 #41

With this miner I manage to get from my GTX480 from 110 till 140 Mh/s at default, thanks. 
1714118364
Hero Member
*
Offline Offline

Posts: 1714118364

View Profile Personal Message (Offline)

Ignore
1714118364
Reply with quote  #2

1714118364
Report to moderator
It is a common myth that Bitcoin is ruled by a majority of miners. This is not true. Bitcoin miners "vote" on the ordering of transactions, but that's all they do. They can't vote to change the network rules.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1714118364
Hero Member
*
Offline Offline

Posts: 1714118364

View Profile Personal Message (Offline)

Ignore
1714118364
Reply with quote  #2

1714118364
Report to moderator
1714118364
Hero Member
*
Offline Offline

Posts: 1714118364

View Profile Personal Message (Offline)

Ignore
1714118364
Reply with quote  #2

1714118364
Report to moderator
1714118364
Hero Member
*
Offline Offline

Posts: 1714118364

View Profile Personal Message (Offline)

Ignore
1714118364
Reply with quote  #2

1714118364
Report to moderator
icedev576 (OP)
Newbie
*
Offline Offline

Activity: 21
Merit: 0


View Profile
May 31, 2013, 02:36:20 PM
 #42

With this miner I manage to get from my GTX480 from 110 till 140 Mh/s at default, thanks. 

You welcome!
Eli0t
Sr. Member
****
Offline Offline

Activity: 252
Merit: 250


View Profile
May 31, 2013, 03:13:24 PM
 #43

would be great to get some more MH out of my 560ti, currently 83 MH

waiting for win7 64bit binaries

have you fixed rpc-miner-cuda so it doesnt crash the display driver when closing it, or was that a windows issue

LTC:  LKpJf3uk7KsHU73kxq8iFJrP1AAKN7Yni7  DGC:  DKXGvEbj3Rwgrm2QQbRyNPDDZDYoq4Y44d  XPM:  AWV5AKfLFyoBaMjg9C77rGUBhuFxz5DGGL
zhuravno
Newbie
*
Offline Offline

Activity: 9
Merit: 0


View Profile
May 31, 2013, 03:27:41 PM
 #44

what performance increase is expected compared to guiminer or cgminer?
llieco
Newbie
*
Offline Offline

Activity: 12
Merit: 0


View Profile
May 31, 2013, 03:34:10 PM
 #45

260 MH/s to slow. Embarrassed
icedev576 (OP)
Newbie
*
Offline Offline

Activity: 21
Merit: 0


View Profile
June 03, 2013, 05:18:48 AM
 #46

what performance increase is expected compared to guiminer or cgminer?

Well actually CG miner is quite good, I don't expect more then 10%. For Titan and GTX780, if somebody will do some optimalization CUDA can be better. If I have enough money I'll buy a 780, and try it.
icedev576 (OP)
Newbie
*
Offline Offline

Activity: 21
Merit: 0


View Profile
June 03, 2013, 05:20:30 AM
 #47

260 MH/s to slow. Embarrassed

Unfortunately NV cards not so good for mining. Buy AMD or some asic if you want more or you can design a new asic.
icedev576 (OP)
Newbie
*
Offline Offline

Activity: 21
Merit: 0


View Profile
June 03, 2013, 05:21:55 AM
 #48

would be great to get some more MH out of my 560ti, currently 83 MH

waiting for win7 64bit binaries

have you fixed rpc-miner-cuda so it doesnt crash the display driver when closing it, or was that a windows issue

Well, I don't know, I have dedicated cards for CUDA (no display or X attached to it)
kenshin23
Member
**
Offline Offline

Activity: 66
Merit: 10



View Profile
June 07, 2013, 05:40:58 AM
 #49

Any update on binaries for Windows? I've tried compiling with Cygwin, but cmake complains it can't find CUDA_CUDART_LIBRARY.

Code:
$ cmake ../
-- The C compiler identification is GNU 4.5.3
-- The CXX compiler identification is GNU 4.5.3
CMake Warning at /usr/share/cmake-2.8.9/Modules/Platform/CYGWIN.cmake:15 (message):
  CMake no longer defines WIN32 on Cygwin!

  (1) If you are just trying to build this project, ignore this warning or
  quiet it by setting CMAKE_LEGACY_CYGWIN_WIN32=0 in your environment or in
  the CMake cache.  If later configuration or build errors occur then this
  project may have been written under the assumption that Cygwin is WIN32.
  In that case, set CMAKE_LEGACY_CYGWIN_WIN32=1 instead.

  (2) If you are developing this project, add the line

    set(CMAKE_LEGACY_CYGWIN_WIN32 0) # Remove when CMake >= 2.8.4 is required

  at the top of your top-level CMakeLists.txt file or set the minimum
  required version of CMake to 2.8.4 or higher.  Then teach your project to
  build on Cygwin without WIN32.
Call Stack (most recent call first):
  /usr/share/cmake-2.8.9/Modules/CMakeSystemSpecificInformation.cmake:36 (INCLUDE)
  CMakeLists.txt:3 (PROJECT)


-- Check for working C compiler: /usr/bin/gcc.exe
-- Check for working C compiler: /usr/bin/gcc.exe -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++.exe
-- Check for working CXX compiler: /usr/bin/c++.exe -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Boost version: 1.53.0
-- Found the following Boost libraries:
--   date_time
--   filesystem
--   program_options
--   regex
--   system
--   thread
-- Found OpenSSL: /usr/lib/libssl.dll.a;/usr/lib/libcrypto.dll.a (found version "1.0.1e")
-- Looking for include file pthread.h
-- Looking for include file pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - found
-- Found Threads: TRUE
CMake Error at /usr/share/cmake-2.8.9/Modules/FindPackageHandleStandardArgs.cmake:97 (MESSAGE):
  Could NOT find CUDA (missing: CUDA_CUDART_LIBRARY)
Call Stack (most recent call first):
  /usr/share/cmake-2.8.9/Modules/FindPackageHandleStandardArgs.cmake:288 (_FPHSA_FAILURE_MESSAGE)
  cmake-modules/FindCUDA.cmake:682 (find_package_handle_standard_args)
  CMakeLists.txt:32 (FIND_PACKAGE)


-- Configuring incomplete, errors occurred!

If anyone has any how-to's or some kind of guidance on how to get this working, please share.

Donations are very welcome! 1LJ7k5b71cYFrBVQ7zYSBJePZ7EuFBFr5a
Pyramining referral links: http://pyramining.com/referral/be4kfg2m7 | http://pyramining.com/referral/yghmk7r9f
Bitrated user: kenshin23.
mikal
Newbie
*
Offline Offline

Activity: 39
Merit: 0


View Profile
June 07, 2013, 07:20:20 PM
 #50

Can you explain the increase of hash rate? I thought the original miner got all could be achieved on sm30...
I'll start digging into the code, but I'd like to read high-level explanation.
icedev576 (OP)
Newbie
*
Offline Offline

Activity: 21
Merit: 0


View Profile
June 12, 2013, 07:17:16 AM
 #51

Any update on binaries for Windows? I've tried compiling with Cygwin, but cmake complains it can't find CUDA_CUDART_LIBRARY.

Code:
$ cmake ../
-- The C compiler identification is GNU 4.5.3
-- The CXX compiler identification is GNU 4.5.3
CMake Warning at /usr/share/cmake-2.8.9/Modules/Platform/CYGWIN.cmake:15 (message):
  CMake no longer defines WIN32 on Cygwin!

  (1) If you are just trying to build this project, ignore this warning or
  quiet it by setting CMAKE_LEGACY_CYGWIN_WIN32=0 in your environment or in
  the CMake cache.  If later configuration or build errors occur then this
  project may have been written under the assumption that Cygwin is WIN32.
  In that case, set CMAKE_LEGACY_CYGWIN_WIN32=1 instead.

  (2) If you are developing this project, add the line

    set(CMAKE_LEGACY_CYGWIN_WIN32 0) # Remove when CMake >= 2.8.4 is required

  at the top of your top-level CMakeLists.txt file or set the minimum
  required version of CMake to 2.8.4 or higher.  Then teach your project to
  build on Cygwin without WIN32.
Call Stack (most recent call first):
  /usr/share/cmake-2.8.9/Modules/CMakeSystemSpecificInformation.cmake:36 (INCLUDE)
  CMakeLists.txt:3 (PROJECT)


-- Check for working C compiler: /usr/bin/gcc.exe
-- Check for working C compiler: /usr/bin/gcc.exe -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++.exe
-- Check for working CXX compiler: /usr/bin/c++.exe -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Boost version: 1.53.0
-- Found the following Boost libraries:
--   date_time
--   filesystem
--   program_options
--   regex
--   system
--   thread
-- Found OpenSSL: /usr/lib/libssl.dll.a;/usr/lib/libcrypto.dll.a (found version "1.0.1e")
-- Looking for include file pthread.h
-- Looking for include file pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - found
-- Found Threads: TRUE
CMake Error at /usr/share/cmake-2.8.9/Modules/FindPackageHandleStandardArgs.cmake:97 (MESSAGE):
  Could NOT find CUDA (missing: CUDA_CUDART_LIBRARY)
Call Stack (most recent call first):
  /usr/share/cmake-2.8.9/Modules/FindPackageHandleStandardArgs.cmake:288 (_FPHSA_FAILURE_MESSAGE)
  cmake-modules/FindCUDA.cmake:682 (find_package_handle_standard_args)
  CMakeLists.txt:32 (FIND_PACKAGE)


-- Configuring incomplete, errors occurred!

If anyone has any how-to's or some kind of guidance on how to get this working, please share.

Is your CUDA_TOOLKIT_ROOT_DIR environment variable set?
icedev576 (OP)
Newbie
*
Offline Offline

Activity: 21
Merit: 0


View Profile
June 12, 2013, 07:26:35 AM
 #52

Can you explain the increase of hash rate? I thought the original miner got all could be achieved on sm30...
I'll start digging into the code, but I'd like to read high-level explanation.

Everything about the used register-count. If a CUDA code uses too many registers 2 things can happen: you can run the code on less threads, or you can tell the nvcc compiler to force use less register. There is no magic if your code needs 72 register, but you force the compiler use only 63 will mean 9 register will be in  local memory (available via spill loads), and this is slower then the registers.

So optimizing a CUDA code usually means write a code that can run with less register. On the other hand you can use a lot of special functions and types (I moved the input storing to __constant__ memory ). Memory reading and writing is slow, avoid unnecessary memory ops. And there are a lot of other tricks...
icedev576 (OP)
Newbie
*
Offline Offline

Activity: 21
Merit: 0


View Profile
June 12, 2013, 09:50:12 AM
 #53

Code now works on cards with compute mode 3.5 (Titan, GTX780).
Tested on GTX-780 :-) It is about 275 MH/s.
kenshin23
Member
**
Offline Offline

Activity: 66
Merit: 10



View Profile
June 12, 2013, 05:08:34 PM
 #54

Any update on binaries for Windows? I've tried compiling with Cygwin, but cmake complains it can't find CUDA_CUDART_LIBRARY.

Code:
$ cmake ../
-- The C compiler identification is GNU 4.5.3
-- The CXX compiler identification is GNU 4.5.3
CMake Warning at /usr/share/cmake-2.8.9/Modules/Platform/CYGWIN.cmake:15 (message):
  CMake no longer defines WIN32 on Cygwin!

  (1) If you are just trying to build this project, ignore this warning or
  quiet it by setting CMAKE_LEGACY_CYGWIN_WIN32=0 in your environment or in
  the CMake cache.  If later configuration or build errors occur then this
  project may have been written under the assumption that Cygwin is WIN32.
  In that case, set CMAKE_LEGACY_CYGWIN_WIN32=1 instead.

  (2) If you are developing this project, add the line

    set(CMAKE_LEGACY_CYGWIN_WIN32 0) # Remove when CMake >= 2.8.4 is required

  at the top of your top-level CMakeLists.txt file or set the minimum
  required version of CMake to 2.8.4 or higher.  Then teach your project to
  build on Cygwin without WIN32.
Call Stack (most recent call first):
  /usr/share/cmake-2.8.9/Modules/CMakeSystemSpecificInformation.cmake:36 (INCLUDE)
  CMakeLists.txt:3 (PROJECT)


-- Check for working C compiler: /usr/bin/gcc.exe
-- Check for working C compiler: /usr/bin/gcc.exe -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++.exe
-- Check for working CXX compiler: /usr/bin/c++.exe -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Boost version: 1.53.0
-- Found the following Boost libraries:
--   date_time
--   filesystem
--   program_options
--   regex
--   system
--   thread
-- Found OpenSSL: /usr/lib/libssl.dll.a;/usr/lib/libcrypto.dll.a (found version "1.0.1e")
-- Looking for include file pthread.h
-- Looking for include file pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - found
-- Found Threads: TRUE
CMake Error at /usr/share/cmake-2.8.9/Modules/FindPackageHandleStandardArgs.cmake:97 (MESSAGE):
  Could NOT find CUDA (missing: CUDA_CUDART_LIBRARY)
Call Stack (most recent call first):
  /usr/share/cmake-2.8.9/Modules/FindPackageHandleStandardArgs.cmake:288 (_FPHSA_FAILURE_MESSAGE)
  cmake-modules/FindCUDA.cmake:682 (find_package_handle_standard_args)
  CMakeLists.txt:32 (FIND_PACKAGE)


-- Configuring incomplete, errors occurred!

If anyone has any how-to's or some kind of guidance on how to get this working, please share.

Is your CUDA_TOOLKIT_ROOT_DIR environment variable set?
It wasn't, but I just set it prior to compilation and the problem persists. Any other clues? Or is cygwin not appropriate for compiling this? (might have to make a liveUSB with linux just for mining...)

Donations are very welcome! 1LJ7k5b71cYFrBVQ7zYSBJePZ7EuFBFr5a
Pyramining referral links: http://pyramining.com/referral/be4kfg2m7 | http://pyramining.com/referral/yghmk7r9f
Bitrated user: kenshin23.
Eli0t
Sr. Member
****
Offline Offline

Activity: 252
Merit: 250


View Profile
June 12, 2013, 05:25:33 PM
 #55

Code now works on cards with compute mode 3.5 (Titan, GTX780).
Tested on GTX-780 :-) It is about 275 MH/s.
any hope for compute 2.1? also how does that rate vs your cgminer speed

LTC:  LKpJf3uk7KsHU73kxq8iFJrP1AAKN7Yni7  DGC:  DKXGvEbj3Rwgrm2QQbRyNPDDZDYoq4Y44d  XPM:  AWV5AKfLFyoBaMjg9C77rGUBhuFxz5DGGL
icedev576 (OP)
Newbie
*
Offline Offline

Activity: 21
Merit: 0


View Profile
June 24, 2013, 12:09:41 PM
 #56

Code now works on cards with compute mode 3.5 (Titan, GTX780).
Tested on GTX-780 :-) It is about 275 MH/s.
any hope for compute 2.1? also how does that rate vs your cgminer speed

UPDATE:
Automatic GPU architecture chooser was added it works on any architecture from 1.0 to 3.5. The relevant cubin file should be in cmake-rpcminer. I added these files on github, so use them.
Eli0t
Sr. Member
****
Offline Offline

Activity: 252
Merit: 250


View Profile
June 24, 2013, 07:53:57 PM
 #57

Code now works on cards with compute mode 3.5 (Titan, GTX780).
Tested on GTX-780 :-) It is about 275 MH/s.
any hope for compute 2.1? also how does that rate vs your cgminer speed

UPDATE:
Automatic GPU architecture chooser was added it works on any architecture from 1.0 to 3.5. The relevant cubin file should be in cmake-rpcminer. I added these files on github, so use them.
i guess the difficulty is too high now, but if you could include all the relevant information from the whole thread in the first post and possibly some windows binaries im sure it would help someone out.

think i missed some words from my last post. what is your rpcminer-optcuda MH vs your cgminer MH ?

LTC:  LKpJf3uk7KsHU73kxq8iFJrP1AAKN7Yni7  DGC:  DKXGvEbj3Rwgrm2QQbRyNPDDZDYoq4Y44d  XPM:  AWV5AKfLFyoBaMjg9C77rGUBhuFxz5DGGL
gourmet
Sr. Member
****
Offline Offline

Activity: 311
Merit: 250


View Profile
June 24, 2013, 10:12:57 PM
 #58

Also looking forward to Windows binaries and the comparison with cgminer. ;-)
Pages: « 1 2 [3]  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!