Author

Topic: "Hello World" Pooled Mining (Read 1267 times)

hero member
Activity: 560
Merit: 517
April 27, 2011, 07:12:11 PM
#5
Quote
so just to clarify, everytime I call Getwork I get a different formatted data hash to work on? Then if the miner finds a block it sends it back with getwork[data] to claim it?
Yup. The miner sends back data with a valid nonce injected into the data. Bitcoin/bitcoind will check to make sure it's correct, and if so it adds it to the block chain and thus receives its shiny new 50 BTC.
newbie
Activity: 2
Merit: 0
April 27, 2011, 12:48:35 PM
#4
In this case, just setup one computer with the client, set it to allow connections from any ip (or a range) rpcallowip=192.168.1.*, and point all your miners at that.

Smiley Sounds nice and simple  

so just to clarify, everytime I call Getwork I get a different formatted data hash to work on? Then if the miner finds a block it sends it back with getwork[data] to claim it?
sr. member
Activity: 322
Merit: 250
April 27, 2011, 12:34:12 PM
#3
Make sure your computers' GPUs support mining too.
sr. member
Activity: 406
Merit: 256
April 27, 2011, 12:23:13 PM
#2
In this case, just setup one computer with the client, set it to allow connections from any ip (or a range) rpcallowip=192.168.1.*, and point all your miners at that.
newbie
Activity: 2
Merit: 0
April 27, 2011, 12:17:57 PM
#1
I have access to about 20 computers with GPUs in my office so I plan to use them out of hours as my personal pooled mining system. e.g. Modified DiabloMiner running on each of the computers and communicating with some central server which gives out and receives work.

Idea would be to simply:
(1) Run the bitcoin binary on a computer with -server argument
(2) Server communicates with bitcoin over JSON-RPC (getwork)
(3) Distribute work to computers (implement protocol compatible with Diablominer)
(4) Server receives work from miners
(5) If block found send it to bitcoin binary to 'claim' any found block.

Two questions:
(1) How do I claim a found block? (i.e. in step 5)
(2) What is the best way of distributing work?
...or alternatively does any simple code for this exist e.g. source code for slush's pool?

(I'm a newbie so apologies if this is covered already but I couldn't find it in a simple example of pooled miner and puddinpop's code seems overkill since I don't won't try and scam myself by sending bad data)
Jump to: