Bitcoin Forum
May 09, 2024, 09:04:11 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: How mining pools break apart a work?  (Read 1091 times)
CoinBuzz (OP)
Sr. Member
****
Offline Offline

Activity: 490
Merit: 250



View Profile
July 30, 2013, 04:37:51 AM
 #1

Suppose that I want to write an experimental pool software myself, I know that bitcoind have an RPC command named "GetWork". I can getwork from it, but how should i break it to small part's for distribute among mining pool users?

I know this could be very technical question, I'm technical man too, but i couldn't figure how mining pools works. So if you can provide me a simple real example, that should enlightened me up, I would be thankful.


Join ASAP: FREE BITCOIN
1715245451
Hero Member
*
Offline Offline

Posts: 1715245451

View Profile Personal Message (Offline)

Ignore
1715245451
Reply with quote  #2

1715245451
Report to moderator
The grue lurks in the darkest places of the earth. Its favorite diet is adventurers, but its insatiable appetite is tempered by its fear of light. No grue has ever been seen by the light of day, and few have survived its fearsome jaws to tell the tale.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1715245451
Hero Member
*
Offline Offline

Posts: 1715245451

View Profile Personal Message (Offline)

Ignore
1715245451
Reply with quote  #2

1715245451
Report to moderator
mitty
Sr. Member
****
Offline Offline

Activity: 359
Merit: 250



View Profile
July 31, 2013, 03:33:15 AM
 #2

Probably not as detailed of an answer as you're looking for, but I don't think a getwork pool breaks up the individual getwork jobs.  I'm assuming a getwork pool keeps calling getwork and passes each piece of work along to one of its miners.  The pool tells the miners what difficulty shares it will accept, and only accepts shares based on the work that was given to each miner, i.e., miner B couldn't submit a share based on the work given to miner A.

The mining program each miner is running doesn't know the difference between solo mining and pool mining; the hashing is done exactly the same way.  The difference is that your mining program tells your local bitcoind when it finds a share greater than or equal to the requested difficulty (i.e., Bitcoin network difficulty) when solo mining, and tells the pool's bitcoind when it finds a share greater than or equal to pool's requested difficulty (varies based on pool, but is always less than current network difficulty.  This is how pools keep track of your mining rate and therefore your payout).  Your local bitcoind submits any blocks found to the bitcoin network and you are then rewarded with the block reward + tx fees if the block isn't orphaned or stale.  You found the block on your own, so you keep the whole thing.  The pool server submits any blocks found (i.e., miner-submitted shares with a difficulty >= current bitcoin network difficulty) to the bitcoin network and the pool is rewarded the block reward + tx fees.  The pool server then distributes this reward to its miners based on the pool's payout method.  (PPS, PPLNS, DGM, etc)
techwtf
Full Member
***
Offline Offline

Activity: 140
Merit: 100


View Profile
July 31, 2013, 07:15:32 AM
 #3

no, getwork RPC is already the smallest work. you should learn to use getblocktemplate to generate work.
CoinBuzz (OP)
Sr. Member
****
Offline Offline

Activity: 490
Merit: 250



View Profile
August 06, 2013, 04:33:36 PM
 #4

no, getwork RPC is already the smallest work. you should learn to use getblocktemplate to generate work.

would u explain more please?

Join ASAP: FREE BITCOIN
hahahafr
Hero Member
*****
Offline Offline

Activity: 938
Merit: 501



View Profile
August 06, 2013, 04:44:32 PM
 #5

Search for getmemorypool as well.




                                           ◢◣                      ◢◣
                                     ◢████◣           ◢████◣
                               ◢████████◣◢████████◣
                               █████████████████
                               █████████████████
                               █████████████████
                               █████████████◤██████
                               ███████████◤████████
                               █████████◤██████████
                               ███████◤████████████
                               █████◤██████████████
                               █████◣                       ◢█████
                               ███████◣            ◢███████
                               █████████◣◢█████████
                               ◥████████◤◥████████◤
                                    ◥████◤            ◥████◤
                                          ◥◤                      



HYDAX
       Secure  
   Efficient
   Simple  
   Medium 
    Twitter  
    Telegram 
[/center
CoinBuzz (OP)
Sr. Member
****
Offline Offline

Activity: 490
Merit: 250



View Profile
August 06, 2013, 07:34:53 PM
 #6

Search for getmemorypool as well.

I couldnt find that method in litecoind, does scrypt coins use different approach?

Join ASAP: FREE BITCOIN
Pages: [1]
  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!