Pages:
Author

Topic: mining process query (Read 1719 times)

full member
Activity: 168
Merit: 100
Everyone Is A Bank
July 01, 2011, 06:39:14 PM
#23


You take the block header, run it through SHA-256 twice, and check whether that hash output is less than the target.  if not, you increment the nonce value (which completely changes the hash value, due to the avalanche effect) and try again, over and over, until someone finds a valid block, then you start it all over again with a new set of transactions, etc.

Ok, so instead of increasing the nonce to randomly genrate a new hash value, is it possible to set your miner to just increment (or decrement) the hash value by one each time and go through them sequentially , thus eliminating re-tries?  It seem to me that that current way of doing it is a bit like playing Battleship without the white pegs.

you appear to be misunderstanding the process.  incrementing the hash is nonsensical, as it is not an input value, it is the result.  mining is working to find the input (the block header) that results in a hash which is less than the target.

you can't just change the output arbitrarily, as the input needs to match with it, and hashing is a one-way function (you can hash something, but it's (practically) impossible to take a hash and determine the input value that resulted in it.).

ok thanks that's a bit clearer.
hero member
Activity: 590
Merit: 500
July 01, 2011, 06:23:21 PM
#22


You take the block header, run it through SHA-256 twice, and check whether that hash output is less than the target.  if not, you increment the nonce value (which completely changes the hash value, due to the avalanche effect) and try again, over and over, until someone finds a valid block, then you start it all over again with a new set of transactions, etc.

Ok, so instead of increasing the nonce to randomly genrate a new hash value, is it possible to set your miner to just increment (or decrement) the hash value by one each time and go through them sequentially , thus eliminating re-tries?  It seem to me that that current way of doing it is a bit like playing Battleship without the white pegs.

you appear to be misunderstanding the process.  incrementing the hash is nonsensical, as it is not an input value, it is the result.  mining is working to find the input (the block header) that results in a hash which is less than the target.

you can't just change the output arbitrarily, as the input needs to match with it, and hashing is a one-way function (you can hash something, but it's (practically) impossible to take a hash and determine the input value that resulted in it.).
full member
Activity: 168
Merit: 100
Everyone Is A Bank
June 30, 2011, 11:04:23 PM
#21
No you can't do that... but by using a new nonce you pretty much ensure that you won't get the same hash again.

Why can't you? Is it because it's against the rules?  Not supported by current software?  Or simply not feasible?

thanks.
member
Activity: 112
Merit: 10
June 30, 2011, 10:47:11 PM
#20
No you can't do that... but by using a new nonce you pretty much ensure that you won't get the same hash again.
full member
Activity: 168
Merit: 100
Everyone Is A Bank
June 30, 2011, 09:45:59 PM
#19


You take the block header, run it through SHA-256 twice, and check whether that hash output is less than the target.  if not, you increment the nonce value (which completely changes the hash value, due to the avalanche effect) and try again, over and over, until someone finds a valid block, then you start it all over again with a new set of transactions, etc.

Ok, so instead of increasing the nonce to randomly genrate a new hash value, is it possible to set your miner to just increment (or decrement) the hash value by one each time and go through them sequentially , thus eliminating re-tries?  It seem to me that that current way of doing it is a bit like playing Battleship without the white pegs.
hero member
Activity: 590
Merit: 500
June 30, 2011, 06:05:43 PM
#18

they're all trying to find a block which meets the requirements of the next block (has the hash of the previous block in its header and has a hash less than or equal to the target)

This is what I find confusing...why can't you just use a hash of 1, which would surely be less than the requirement.  Doesn't sound difficult...

you need the block such as the hash result of that block is less than the target.  you can't just arbitrarily pick the hash.

You take the block header, run it through SHA-256 twice, and check whether that hash output is less than the target.  if not, you increment the nonce value (which completely changes the hash value, due to the avalanche effect) and try again, over and over, until someone finds a valid block, then you start it all over again with a new set of transactions, etc.
full member
Activity: 168
Merit: 100
Everyone Is A Bank
June 30, 2011, 05:42:41 PM
#17

they're all trying to find a block which meets the requirements of the next block (has the hash of the previous block in its header and has a hash less than or equal to the target)

This is what I find confusing...why can't you just use a hash of 1, which would surely be less than the requirement.  Doesn't sound difficult...
hero member
Activity: 590
Merit: 500
June 30, 2011, 11:11:09 AM
#16
Okay, I will try to explain stale shares to the best of my ability.

Currently everyone mining is trying to solve a block(the system is set up to average 1 block every 10 minutes)




Is everyone trying to solve the same block?

depends on your definition of "the same block".

they're all trying to find a block which meets the requirements of the next block (has the hash of the previous block in its header and has a hash less than or equal to the target), but you're not running the same numbers during that attempting, namely different subsidy payout address (transaction 0 of a block) and different sets of transactions (or even no transactions at all except the generation subsidy, though this is rather assholeish unless there are no unconfirmed transactions waiting).

in a pool, everyone is working on the same set of data, which is given out by the pool server.  from the perspective of the network, a pool is just a single really big miner.
sr. member
Activity: 263
Merit: 250
Pool operator of Triplemining.com
June 30, 2011, 07:16:28 AM
#15
Everyone is trying to generate a block on top of the last one.  So yes everybody is trying to mine the same block, but with different contents.

When you mine you define the contents.  And the contents consist out of the current transactions, but also the generation of new coins: new coins are generated to your own bitcoin address, or the address of a pool.

But solomining is useless unless you have a lot of miningpower.  Consider joining a pool!
member
Activity: 112
Merit: 10
June 30, 2011, 03:27:07 AM
#14
Okay, I will try to explain stale shares to the best of my ability.

Currently everyone mining is trying to solve a block(the system is set up to average 1 block every 10 minutes)




Is everyone trying to solve the same block?

That is my understanding.
full member
Activity: 168
Merit: 100
Everyone Is A Bank
June 30, 2011, 03:04:26 AM
#13
Okay, I will try to explain stale shares to the best of my ability.

Currently everyone mining is trying to solve a block(the system is set up to average 1 block every 10 minutes)




Is everyone trying to solve the same block?
member
Activity: 112
Merit: 10
June 30, 2011, 01:29:17 AM
#12
Okay, I will try to explain stale shares to the best of my ability.

Currently everyone mining is trying to solve a block(the system is set up to average 1 block every 10 minutes)

However, let's say you were working on a block, but before you could finish your work the block was solved! what happens to what you were working on?

it's stale Tongue (really though, I think stale is a more catchall for "we didn't take this share because it doesn't work for the current block")


ahhh okay I think I have a better analogy Tongue

let's say you're at a slot machine. each time you put a quarter in the machine accepts it and you pull the lever and try to win(not guaranteed, but your quarter was recognized as a real quarter). But let's say you put a quarter in and the machine doesn't like it - it spits it back out at you! it thinks you gave it a penny, or maybe a canadian quarter Tongue your coin was stale.
full member
Activity: 168
Merit: 100
Everyone Is A Bank
June 30, 2011, 01:25:01 AM
#11
I don't see a point to keeping track of failed attempts - the likelihood of a repeat is very very small.

Well, from my experience, as a pooled miner, you don't actually see any lists of failures or successes. And why would you want to, as you're not the one putting in the brain power? As I keep generating payouts, I know that my computer (and other's using my Bitcoin Bonus code) is helping towards the solving of a block.

Not sure how it works for solo miners, although I can't see why they'd need to know either. We're talking millions of hashes per second. Who'd want to be looking through such a list, and why?


ARRRRRRRRGH!!!!!   The COMPUTER would be checking the list, not you!!!   Tongue

LOL.

Hmm... OK, I guess you're trying to figure out how to make the work less difficult for your mortgage idea...?

Tongue

heh that's one application... Wink
member
Activity: 84
Merit: 10
Side-stepping the matrix | Bit by bit
June 30, 2011, 01:19:14 AM
#10
I don't see a point to keeping track of failed attempts - the likelihood of a repeat is very very small.

Well, from my experience, as a pooled miner, you don't actually see any lists of failures or successes. And why would you want to, as you're not the one putting in the brain power? As I keep generating payouts, I know that my computer (and other's using my Bitcoin Bonus code) is helping towards the solving of a block.

Not sure how it works for solo miners, although I can't see why they'd need to know either. We're talking millions of hashes per second. Who'd want to be looking through such a list, and why?


ARRRRRRRRGH!!!!!   The COMPUTER would be checking the list, not you!!!   Tongue

LOL.

Hmm... OK, I guess you're trying to figure out how to make the work less difficult for your mortgage idea...?

Tongue
newbie
Activity: 42
Merit: 0
June 30, 2011, 12:47:48 AM
#9
I gave up on mining a while ago..

why is that? I just began today  Wink
full member
Activity: 168
Merit: 100
Everyone Is A Bank
June 30, 2011, 12:40:33 AM
#8
I don't see a point to keeping track of failed attempts - the likelihood of a repeat is very very small.

Well, from my experience, as a pooled miner, you don't actually see any lists of failures or successes. And why would you want to, as you're not the one putting in the brain power? As I keep generating payouts, I know that my computer (and other's using my Bitcoin Bonus code) is helping towards the solving of a block.

Not sure how it works for solo miners, although I can't see why they'd need to know either. We're talking millions of hashes per second. Who'd want to be looking through such a list, and why?


ARRRRRRRRGH!!!!!   The COMPUTER would be checking the list, not you!!!   Tongue
member
Activity: 84
Merit: 10
Side-stepping the matrix | Bit by bit
June 30, 2011, 12:31:35 AM
#7
I don't see a point to keeping track of failed attempts - the likelihood of a repeat is very very small.

Well, from my experience, as a pooled miner, you don't actually see any lists of failures or successes. And why would you want to, as you're not the one putting in the brain power? As I keep generating payouts, I know that my computer (and other's using my Bitcoin Bonus code) is helping towards the solving of a block.

Not sure how it works for solo miners, although I can't see why they'd need to know either. We're talking millions of hashes per second. Who'd want to be looking through such a list, and why?
full member
Activity: 168
Merit: 100
Everyone Is A Bank
June 30, 2011, 12:27:43 AM
#6
I don't see a point to keeping track of failed attempts - the likelihood of a repeat is very very small.

If each attempt is truly random then the likelyhood of a repeat rises with each failed attempt.  There could be room for optimisation here...
sr. member
Activity: 461
Merit: 251
June 30, 2011, 12:24:42 AM
#5
I don't see a point to keeping track of failed attempts - the likelihood of a repeat is very very small.
full member
Activity: 168
Merit: 100
Everyone Is A Bank
June 30, 2011, 12:15:40 AM
#4
So each time your computer tries a hash that fails, is there a list kept of failed attempts? Otherwise you could be re-trying ones that you know have already failed.

You don't do the brain work work youself, your computer/cpu/gpu does.

Yes i realise this...but the question was: does the computer keep trying solutions that have already failed, or does it keep a list of failures and only try untried solutions?
Pages:
Jump to: