Bitcoin Forum

Bitcoin => Mining => Topic started by: Lightspeed on June 19, 2011, 01:06:38 PM



Title: algorithm for calculating time to find block (using hashing power + difficulty)
Post by: Lightspeed on June 19, 2011, 01:06:38 PM
as in title, what's the algorithm?; straight code is fine

thanks

update found it:

time = difficulty * 2**32 / hashrate


Title: Re: algorithm for calculating time to find block (using hashing power + difficulty)
Post by: [Coins!] on June 19, 2011, 02:45:12 PM
I expect you're probably writing some kind of code, but for most of us we just check the seconds remaining on block explorer:

http://blockexplorer.com/q/eta

Then divide by 3600 to get hours, and then divide by 24 to get days : )

As of now, the seconds are 514456, giving us just about 6 days to next retarget.

For my 330Mhash that is enough time for 2 more bitcoins.

edit: oh time to find block, not next difficulty~  never mind!


Title: Re: algorithm for calculating time to find block (using hashing power + difficulty)
Post by: Lightspeed on June 19, 2011, 06:03:08 PM
hey

i'm having a f**kload of trouble getting this to work:

formula
time = difficulty * 2**32 / hashrate

here is supposed working python
$ python -c "print 20000 * 2**32 / 10**9 / 60 / 60.0"

then here is my attempt in php:

$hashrate = in G/hash say 34.2

$time_to_find = ((($difficulty * 2^32 / $hashrate * 1000000000) / 60) / 60);

its returning 2000+ hours

where as actual is 34 hours, this is driving me nuts


working code update:

$time_to_find = (($difficulty * bcpow(2,32)) / ($hashrate * bcpow(10,9))) / 3600;

with the help of some IRC'ers in #ozcoin we fixed this

woot


Title: Re: algorithm for calculating time to find block (using hashing power + difficulty)
Post by: bcpokey on June 19, 2011, 09:57:28 PM
http://www.alloscomp.com/bitcoin/calculator.pys