ShadowOfHarbringer
Legendary
Offline
Activity: 1470
Merit: 1006
Bringing Legendary Har® to you since 1952
|
|
October 06, 2010, 06:17:25 PM |
|
OK, now I'm confused.
1. I installed the NVIDIA developer drivers 2. I installed NVIDIA cuda toolkit 3. I downloaded the svn rev. 158 source 4. I patched the source 5. I used CMAKEfiles on the source to make it buildable 6. I compiled / emerged everything
And the result is that on GUI version i get 1200khash/sec always, it does not matter if i used -gpu, -aggresion, -gputhreads, or any other switch. It seems that the client is not working on graphics card, it is just using CPU, and single core only.
Also, the client in graphics mode keeps breaking wxGTK/wxWidgets (wxWidgets often popup with some debug messages). But that is bearable.
---- EDIT: I guess i will try compiling only the daemon now and tell You how it went.
|
|
|
|
ShadowOfHarbringer
Legendary
Offline
Activity: 1470
Merit: 1006
Bringing Legendary Har® to you since 1952
|
|
October 06, 2010, 06:25:54 PM |
|
UPDATE:
I tried everything again with bitcoind. The same results. 1200khash/sec with -gpu switch, and 4700 khash/sec without (and 8500 khash/sec with -4way switch).
So the client seems not to be using GPU at all.
BTW, I have NVIDIA Geforce 9800GT
EDIT: It would be really useful if the GPU client displayed any debugging info, because i don't even know if my card was detected, if CUDA is enabled properly etc etc.
|
|
|
|
nightrow
Newbie
Offline
Activity: 15
Merit: 0
|
|
October 06, 2010, 06:31:21 PM |
|
I have a nvidia card, 8800gt, i can test under windows and why not under linux in virtualbox. Don't hesitate to publish step by test it, or publish a windows binary package, i'm willing to help as i can.
|
|
|
|
ShadowOfHarbringer
Legendary
Offline
Activity: 1470
Merit: 1006
Bringing Legendary Har® to you since 1952
|
|
October 06, 2010, 06:54:47 PM |
|
Here it is: SVN Rev 158, patched & cmaked. However, still not working. http://www.tinyurl.pl/?KMsRtkuRMaybe somebody will figure out what i did wrong. BTW, Forget any hope that it will work under VirtualBox. No way.
|
|
|
|
puddinpop
Member
Offline
Activity: 103
Merit: 17
|
|
October 06, 2010, 09:11:42 PM |
|
EDIT: It would be really useful if the GPU client displayed any debugging info, because i don't even know if my card was detected, if CUDA is enabled properly etc etc.
Why are you assuming it doesn't display any debug info? If you look in the debug.log, you'll see lots of info on what is detected and what it is doing. Why was this info not useful to you? Anyway, it sounds like you either don't have a CUDA capable driver installed, or you somehow compiled with CPU emulation turned on. It's probably the CPU emulation. A 9800 should get 21 Mhash/s.
|
|
|
|
ShadowOfHarbringer
Legendary
Offline
Activity: 1470
Merit: 1006
Bringing Legendary Har® to you since 1952
|
|
October 06, 2010, 09:19:09 PM Last edit: October 06, 2010, 09:29:49 PM by ShadowOfHarbringer |
|
Well i debugged the compile process a little, and concluded that i have wrong makefile, which does not include gpucommon.h/cpp and bitcoinminercuda.h/cpp, and does not convert them to objects. However, after adding them to makefile, HEADERS=(...) cuda/bitcoinminercuda.h cuda/cudashared.h gpucommon/gpucommon.h
all: bitcoind
OBJS= \ (...) obj/gpucommon.o \ obj/bitcoinminercuda.o
, make complains that it "cannot find rules to make object. Stop." EDIT: make: *** No rule to make target `obj/gpucommon.o', needed by `bitcoin'. Stop.
. I know, I'm not a C++ programmer.
|
|
|
|
puddinpop
Member
Offline
Activity: 103
Merit: 17
|
|
October 06, 2010, 09:41:15 PM |
|
So that points to you not using the CMake build files. So your first step should be to use cmake to generate appropriate makefiles with CUDA enabled and then use those to make bitcoin.
|
|
|
|
kslaughter
|
|
October 07, 2010, 04:48:17 AM |
|
puddinpop,
You are in violation of the GPL since you CUDA is linked to the bitcoin source.
I will build a CUDA enabled build of the bitcoin client and post the source code here. Ken
|
|
|
|
em3rgentOrdr
|
|
October 07, 2010, 05:38:05 AM Last edit: October 07, 2010, 05:50:11 AM by em3rgentOrdr |
|
puddinpop,
You are in violation of the GPL since you CUDA is linked to the bitcoin source.
I will build a CUDA enabled build of the bitcoin client and post the source code here. Ken
Good point! We should report puddinpop to gpl-violations.org immediately! Get ready to be sued by Richard Stallman and his lawyer buddies! Just Kidding! Bitcoin uses The MIT License/X11 license, which is permissive...
|
"We will not find a solution to political problems in cryptography, but we can win a major battle in the arms race and gain a new territory of freedom for several years.
Governments are good at cutting off the heads of a centrally controlled networks, but pure P2P networks are holding their own."
|
|
|
mizerydearia
|
|
October 07, 2010, 06:55:54 AM |
|
puddinpop,
You are in violation of the GPL since you CUDA is linked to the bitcoin source.
I will build a CUDA enabled build of the bitcoin client and post the source code here. Ken This doesn't seem correct. How does GPL come into play when Bitcoin is under MIT license?
|
|
|
|
ShadowOfHarbringer
Legendary
Offline
Activity: 1470
Merit: 1006
Bringing Legendary Har® to you since 1952
|
|
October 07, 2010, 06:58:10 AM |
|
So that points to you not using the CMake build files. So your first step should be to use cmake to generate appropriate makefiles with CUDA enabled and then use those to make bitcoin.
I tried that at first, but build failed. This is the debug output i got: bitcoin-svn-rev-158 # make bitcoind -- Found BerkeleyDB: /usr/lib64/libdb.so -- Configuring done -- Generating done -- Build files have been written to: /home/Bitcoin/bitcoin-svn-rev-158 [ 5%] Building NVCC (Device) object cmake-bitcoind/./bitcoind_generated_bitcoinminercuda.cu.o Scanning dependencies of target bitcoind [ 11%] Building CXX object cmake-bitcoind/CMakeFiles/bitcoind.dir/__/src/db.cpp.o In file included from /home/Bitcoin/bitcoin-svn-rev-158/src/db.cpp:5: /home/Bitcoin/bitcoin-svn-rev-158/src/headers.h:45:20: error: db_cxx.h: Nie ma takiego pliku ani katalogu In file included from /home/Bitcoin/bitcoin-svn-rev-158/src/headers.h:123, from /home/Bitcoin/bitcoin-svn-rev-158/src/db.cpp:5: /home/Bitcoin/bitcoin-svn-rev-158/src/db.h:26: error: ‘DbEnv’ does not name a type /home/Bitcoin/bitcoin-svn-rev-158/src/db.h:37: error: ISO C++ forbids declaration of ‘Db’ with no type /home/Bitcoin/bitcoin-svn-rev-158/src/db.h:37: error: expected ‘;’ before ‘*’ token /home/Bitcoin/bitcoin-svn-rev-158/src/db.h:39: error: ‘DbTxn’ was not declared in this scope /home/Bitcoin/bitcoin-svn-rev-158/src/db.h:39: error: template argument 1 is invalid /home/Bitcoin/bitcoin-svn-rev-158/src/db.h:39: error: template argument 2 is invalid /home/Bitcoin/bitcoin-svn-rev-158/src/db.h:152: error: ISO C++ forbids declaration of ‘Dbc’ with no type /home/Bitcoin/bitcoin-svn-rev-158/src/db.h:152: error: expected ‘;’ before ‘*’ token /home/Bitcoin/bitcoin-svn-rev-158/src/db.h:163: error: expected `;' before ‘int’ /home/Bitcoin/bitcoin-svn-rev-158/src/db.h:163: error: ‘Dbc’ has not been declared /home/Bitcoin/bitcoin-svn-rev-158/src/db.h:202: error: ISO C++ forbids declaration of ‘DbTxn’ with no type /home/Bitcoin/bitcoin-svn-rev-158/src/db.h:202: error: expected ‘;’ before ‘*’ token /home/Bitcoin/bitcoin-svn-rev-158/src/db.h:210: error: expected `;' before ‘public’ /home/Bitcoin/bitcoin-svn-rev-158/src/db.h:163: error: ‘DB_NEXT’ was not declared in this scope /home/Bitcoin/bitcoin-svn-rev-158/src/db.h: In member function ‘bool CDB::Read(const K&, T&)’: /home/Bitcoin/bitcoin-svn-rev-158/src/db.h:54: error: ‘pdb’ was not declared in this scope /home/Bitcoin/bitcoin-svn-rev-158/src/db.h:61: error: ‘Dbt’ was not declared in this scope (...) (...)
However that approach won't work with Gentoo ebuild/emerge system, so i abandoned it. EDIT: This doesn't seem correct. How does GPL come into play when Bitcoin is under MIT license?
He included GPL sourcecode in the CUDA-patch.
|
|
|
|
ShadowOfHarbringer
Legendary
Offline
Activity: 1470
Merit: 1006
Bringing Legendary Har® to you since 1952
|
|
October 07, 2010, 07:14:47 AM |
|
Here is my Gentoo makefile, if anybody is interested. http://pastebin.com/73aFW42pAlso, i grepped all the CMake makefiles for "gpucommon.h" and "bitcoinminercuda.h". No results. So i'm not so sure the CMakefiles are going to work at all.
|
|
|
|
mizerydearia
|
|
October 07, 2010, 07:38:17 AM |
|
I modified my makefile for bitcoin-9999.ebuild for svn Bitcoin and then LC_ALL=C TZ=UTC0 diff -Naur makefile.unix makefile.gentoo > files/bitcoin-9999-Makefile.patch ebuild bitcoin-9999.ebuild digest emerge bitcoin The emerge failed. What else do I need to do besides update the makefile?
|
|
|
|
ShadowOfHarbringer
Legendary
Offline
Activity: 1470
Merit: 1006
Bringing Legendary Har® to you since 1952
|
|
October 07, 2010, 08:19:00 AM |
|
I modified my makefile for bitcoin-9999.ebuild for svn Bitcoin and then LC_ALL=C TZ=UTC0 diff -Naur makefile.unix makefile.gentoo > files/bitcoin-9999-Makefile.patch ebuild bitcoin-9999.ebuild digest emerge bitcoin The emerge failed. What else do I need to do besides update the makefile? The ebuild-9999 is bad, don't use it. I'm using a modified 0.3.13 ebuild all the time - it works for SVN rev 158 source too. Also, You need to create additional separate makefile for CUDA version, place it in the files/ directory and then put an digest entry for it in the Manifest. At least this is what i did. For me, it emerges successfully, however the CUDA header & cpp files are omitted. So i need a better makefile.
|
|
|
|
mizerydearia
|
|
October 07, 2010, 08:22:23 AM |
|
The ebuild-9999 is bad, don't use it. How is it bad? More importantly, though, without losing focus of my original question, what else do I need to do besides update the makefile?
|
|
|
|
ShadowOfHarbringer
Legendary
Offline
Activity: 1470
Merit: 1006
Bringing Legendary Har® to you since 1952
|
|
October 07, 2010, 08:37:27 AM |
|
The ebuild-9999 is bad, don't use it. How is it bad? More importantly, though, without losing focus of my original question, what else do I need to do besides update the makefile? Why it is bad ? Well, i looked at the source and i didn't like it, so i took the 0.3.13 one. I have no idea what do You need. I downloaded source, patched it and **it just worked** with 0.3.13 ebuild on my Gentoo AMD64. I only changed the digests in Manifest to match added/modified files.
|
|
|
|
kslaughter
|
|
October 07, 2010, 07:08:23 PM |
|
I would not have made a mistake by assuming it was licensed under the GPL if puddinpop had included in his license the MIT license as was required. Of course if he had included the MIT license all of the restrictions he placed in his license would have been moot.
Ken
|
|
|
|
jgarzik
Legendary
Offline
Activity: 1596
Merit: 1100
|
|
October 07, 2010, 08:02:10 PM |
|
I would not have made a mistake by assuming it was licensed under the GPL if puddinpop had included in his license the MIT license as was required. Of course if he had included the MIT license all of the restrictions he placed in his license would have been moot.
puddinpop's original open sourced client was MIT. But he makes his changes GPL'd, which is disappointing, leading to confusing situations like this.
|
Jeff Garzik, Bloq CEO, former bitcoin core dev team; opinions are my own. Visit bloq.com / metronome.io Donations / tip jar: 1BrufViLKnSWtuWGkryPsKsxonV2NQ7Tcj
|
|
|
lfm
|
|
October 10, 2010, 05:35:11 AM |
|
So I've been trying to figure out.. just how many coins did 1HZNsUqQxKVLmfPfCAzLwrnVDzx8CxwxnM receive? I now see 37 blocks with the 5.00 BTC going to this address. It seems there are still people running the old proprietary version. Still negligible tho. That latest was Block #84274 at 2010-10-09 20:29:52
|
|
|
|
nightrow
Newbie
Offline
Activity: 15
Merit: 0
|
|
October 10, 2010, 12:12:23 PM |
|
I'm one of the people running the proprietary version, even if i yet generated no block. This is the only ready to use binary i found for windows.
I can get 21Mh/s with a 8800gt, comparing to 2.2Mhz with a e6750 2.66ghz processor. I would say *10 -10% is better than nothing, that still make a *9 speedup. sure, a *10 speedup would be best :p
Any news of a windows version that can get such a speed without compilation ?
|
|
|
|
|