Author

Topic: [1500 TH] p2pool: Decentralized, DoS-resistant, Hop-Proof pool - page 331. (Read 2591964 times)

hero member
Activity: 924
Merit: 1000
Watch out for the "Neg-Rep-Dogie-Police".....
Can I mine to an address which isn't in my wallet with below command?
Code:
-a BITCOIN_ADDRESS : Mine to this address instead of requesting one from Bitcoin.

Kindly,
        MZ

Yes, you can have payments sent to any address you like  Smiley

Edit: But not an exchange address as mdude rightly points out below - thanks mdude  Wink
hero member
Activity: 560
Merit: 509
I prefer Zakir over Muhammed when mentioning me!
Can I mine to an address which isn't in my wallet with below command?
Code:
-a BITCOIN_ADDRESS : Mine to this address instead of requesting one from Bitcoin.

Kindly,
        MZ
full member
Activity: 932
Merit: 100
arcs-chain.com
I was talking about walletaddress/10000000 as minimium setting with 1th hardware

I have 4 ants pencilmodded to 580gh -- 150 + 150 +140 +140

p2poolinfo tells me that my hashrate is 1Lesbkz3Th7Xk4xJEw6SGyLGwLF6GubNwd    6285 GH/s

So im lucky  Grin
sr. member
Activity: 308
Merit: 250
Decentralize your hashing - p2pool - Norgz Pool

I like this way of doing it as it lets a miner see how lucky/un-lucky they currently are displayed as an "effective" hash rate. The total of all miners on this tab will always equal the global pool rate as reported by p2pools /rate...

I wont be able to play around with the 7 day luck until thursday, I'll report back when its updated, any other suggestions are always welcome...

yeah I like that too, but I have my local cgminer/bfgminer showing me more acute hash rates. both can be useful, you just need to remember that network hash rates are more of an average hash rate over a certain time.
sr. member
Activity: 285
Merit: 250
Awesome work windpath
 Smiley

Can I ask,  what is the end game for hosting a 0% p2pool node?  Obviously it costs you money.

One is to support a decentralized bitcoin I am sure, but what else are your goals?

legendary
Activity: 1258
Merit: 1027

Nope.  A few times today I had about 2TH on Coincadence (failover) and 1.5TH on my node.  Coincadence only showed my hashrate for the times my miners were on it and only for those particular rigs.  Otherwise it would have shown a steady rate of more hashrate. When my miners haven't been on Coincadence for awhile, I see the generic stat page without a chart that people see when they don't mine directly thru Coincadence.

Was wondering who that was, happy to have ya visit jedi Wink

So to avoid further confusion (and when I have the time I'll add this to the site somewhere), there are 2 completely different hash rate values reported on 2 different pages of Coin Cadence:

1. On Node Miner Rates, reported under the "Active Miners" tab on the node dashboard, these are relatively accurate and are only reported for miners on my node: http://minefast.coincadence.com/index.php

If you are mining on my node this same data is presented on the miner dashboard here: http://minefast.coincadence.com/miner.php

If you are not mining on my node there is no hash rate data on the miner dashboard.

2. Global miner estimated hashrate, reported under the "Active Miners" tab on the Global Pool Dashboard here: http://minefast.coincadence.com/p2pool-stats.php

From the link on that page "how we estimate hashrate":

Quote

Estimated hash rate is NOT an accurate report on a given miners actual hash rate, it is heavily affected by luck/variance and does not take doa/stale shares into account.

If your reported rate is higher then actual rate you are currently lucky in finding shares.

It is calculated as follows:

estimated_hash_rate = (current_payout / block_value) * pool_rate

current_payout = Miner current expected payout.
block_value = The total reward for the block this node is working on.
pool_rate = P2Pools reported /rate.

(results formated to GH/s)

I like this way of doing it as it lets a miner see how lucky/un-lucky they currently are displayed as an "effective" hash rate. The total of all miners on this tab will always equal the global pool rate as reported by p2pools /rate...

I wont be able to play around with the 7 day luck until thursday, I'll report back when its updated, any other suggestions are always welcome...
full member
Activity: 161
Merit: 100
digging in the bits... now ant powered!
Anyone tried a Rockminer R3 500 on p2pool yet?

Looking at those as an option instead of S3's for now.
hero member
Activity: 798
Merit: 1000
Can someone help me understand this please?

Calculator says 1TH = ~0.03 BTC per day
This Difficulty
per Day   0.02900884 BTC   $18.06


This 1TH miner here is generating around 0.07 BTC per day
http://minefast.coincadence.com/miner.php?id=15TiNiu2ZUjrYKskn9AsbznAgtab19KH84

This guy has more power (1.4TH) and is making less?
http://minefast.coincadence.com/miner.php?id=1Po4Fa4drFtaDZ2Rr51mVs26L9bADJqZBG

I'm confused

There are all sorts of things that can affect expected payout.  One is luck.  Another is how long that user has been here.  If both users are past the 3 day PPLNS period, then the numbers are probably caused by luck, but could also be an error on the website.

M

Another possibility is that the "smaller" miner is actually spread across multiple nodes with the same address.  I do that with rigs pointed at my personal node in the US or ones in EU or Asia depending depending on lowest latency and distance.  Also failover nodes factor in too.  So 1TH may not actually be just 1TH, but instead just 1TH on Coincadence.

I'm pretty sure Coincadence is looking at p2pool stats, which means it's everything for that address, not just what's on that node.

M

Nope.  A few times today I had about 2TH on Coincadence (failover) and 1.5TH on my node.  Coincadence only showed my hashrate for the times my miners were on it and only for those particular rigs.  Otherwise it would have shown a steady rate of more hashrate. When my miners haven't been on Coincadence for awhile, I see the generic stat page without a chart that people see when they don't mine directly thru Coincadence.
legendary
Activity: 1540
Merit: 1001
Can someone help me understand this please?

Calculator says 1TH = ~0.03 BTC per day
This Difficulty
per Day   0.02900884 BTC   $18.06


This 1TH miner here is generating around 0.07 BTC per day
http://minefast.coincadence.com/miner.php?id=15TiNiu2ZUjrYKskn9AsbznAgtab19KH84

This guy has more power (1.4TH) and is making less?
http://minefast.coincadence.com/miner.php?id=1Po4Fa4drFtaDZ2Rr51mVs26L9bADJqZBG

I'm confused

I think there's an error somewhere in the hashrate calculation on coincadence.  The same data is available on p2pool.info (check the 3rd tab "active users").  It shows the first address clocking in at almost 3 TH/s, and the second one at 1.5 TH/s.

M

EDIT:

One more thing to remember.  It took me the longest time to figure out how the Bitcoin protocol knows the network hashrate.  I believe the answer is it doesn't. 

Instead, it makes an educated guess.  If X number blocks are being solved in Y time at Z hashrate, then the network hashrate is approx H.  Obviously with larger numbers, the more accurate that value is, but it's still an estimate.

P2pool is no different.  If a given address has X numbers of shares on the chain in Y time (which I believe is fixed at ~ 3 days), with the known hashrates at the time of each share, then the hashrate for that address is approximately H.  Since luck will cause the number of shares to vary, the estimated hashrate for that user will vary. 

Apply that logic to the entire sharechain, and you can see why the pool hashrate appears to jump all over the place.  It isn't really jumping that much.  What you're seeing is the affect of variance (ie luck) on the sharechain.
legendary
Activity: 1540
Merit: 1001
Can someone help me understand this please?

Calculator says 1TH = ~0.03 BTC per day
This Difficulty
per Day   0.02900884 BTC   $18.06


This 1TH miner here is generating around 0.07 BTC per day
http://minefast.coincadence.com/miner.php?id=15TiNiu2ZUjrYKskn9AsbznAgtab19KH84

This guy has more power (1.4TH) and is making less?
http://minefast.coincadence.com/miner.php?id=1Po4Fa4drFtaDZ2Rr51mVs26L9bADJqZBG

I'm confused

There are all sorts of things that can affect expected payout.  One is luck.  Another is how long that user has been here.  If both users are past the 3 day PPLNS period, then the numbers are probably caused by luck, but could also be an error on the website.

M

Another possibility is that the "smaller" miner is actually spread across multiple nodes with the same address.  I do that with rigs pointed at my personal node in the US or ones in EU or Asia depending depending on lowest latency and distance.  Also failover nodes factor in too.  So 1TH may not actually be just 1TH, but instead just 1TH on Coincadence.

I'm pretty sure Coincadence is looking at p2pool stats, which means it's everything for that address, not just what's on that node.

M
legendary
Activity: 1540
Merit: 1001
Yea, considered diff changes when writing the collector code (before adding the p2pool stats page...) Right now it bases it on current diff, would not be hard to add historical and store future back to beginning of luck calculations...

I assume the 30 day average diff would be most accurate?

I don't think so.  You have to use the difficulty at each block.  Just like you have to use the pool hash rate at each block.

Quote
Also, how best to calculate diff changes when a block spans 2 diffs? Is it the average of the 2 diffs, or the diff when block was found...

It would be when the block is found.  I think if you were to average, it'd have to be a weighted average, if you will.  So if you had 24 hours at one difficulty, and 12 hours at the next, the 24 hours would "weigh" more in the average.  While I think it's not technically 100% correct (Organ, are you here? Smiley), it's a lot easier just to use the difficulty at the time it was solved.

Quote
Quote
- average solve time

When is this calculated from?

That's how long, on average, it should take for the block to be solved, at the pool hashrate at that time and current difficulty.  Something like:

network_difficulty * 2^32 / pool_hashrate

So if you know how long it should take (in seconds), and you know how long it really did take (in seconds), then it's simple division to see if your luck was good or bad:

AvgSolveTime / ActualSolveTime

If both are equal, you're at 100% luck.
If AvgSolveTime is higher, then you're above 100% luck.
If AvgSolveTime is lower, then you're below 100% luck.

To span across blocks, you divide the sum of one by the other:

SELECT sum(AvgSolveTime) / sum(ActualSolveTime)


Disclaimer: as far as I know my numbers are right, and they jive with the more limited info Eligius shows.

M
legendary
Activity: 1258
Merit: 1027

You're right.  I glossed over it, as it didn't look immediately decipherable to me.  Sad  Looking at it now..

The immediate problem that jumps out at me is the difficulty changes at least twice a month, closer to three.  You need to store some value for each block as it happens, and then calculate it across your range when you display it.  This is what I do for Eligius:

For each block, store:
- average solve time
- actual solve time
- timestamp of the block

then some SQL:

for last 10 blocks:

SELECT sum(AvgSolveTime) / sum(ActualSolveTime)
FROM Luck
where Height >=
(select min(Height) from
(SELECT top 10 Height from Luck where Height <> 0 order by blocktimestamp desc));

for last 12 hours:

Select Sum(Luck.AvgSolveTime) / Sum(Luck.ActualSolveTime)
FROM Luck
Where BlockTimeStamp > (Now - 12 hours);

And so forth.  You can see the code in github for M's Pool Monitor.

M

EDIT: Then do a sanity check against a presumably known good source, like p2pool.info. Smiley

Yea, considered diff changes when writing the collector code (before adding the p2pool stats page...) Right now it bases it on current diff, would not be hard to add historical and store future back to beginning of luck calculations...

I assume the 30 day average diff would be most accurate?

Also, how best to calculate diff changes when a block spans 2 diffs? Is it the average of the 2 diffs, or the diff when block was found...

Quote
- average solve time

When is this calculated from?
legendary
Activity: 1344
Merit: 1024
Mine at Jonny's Pool
Sorry what is this 3 day PPLNS period?  Is that how p2pool works?

Yes, that's how p2pool works.  The sharechain counts the previous 8640 shares for payment when a block is solved.  Every share is about 30 seconds, so that's where the 3 days comes from.
legendary
Activity: 1540
Merit: 1001
Hey guys, I did post the formula I'm using earlier to have someone take a look at it... No one gave any feedback.

You're right.  I glossed over it, as it didn't look immediately decipherable to me.  Sad  Looking at it now..

Quote
Here is another shot with the source that calculates 30 day luck:

I store blocks as they are found, hashrate is collected every minute, I added some comments to explain what numbers are being used...

Code:
function getThirtyDayLuck($crud, $diff)  {
// get 30 day average time between blocks
$blocks_query = $crud->rawSelect("SELECT COUNT(*) FROM found_blocks WHERE time > DATE_SUB(NOW(), INTERVAL 30 DAY) ORDER BY time DESC");
$blocks = $blocks_query->fetch(PDO::FETCH_ASSOC);
$block_count = $blocks['COUNT(*)'];
$avg_elapsed_seconds = 2592000 / $block_count; // 2592000 seconds = 30 days
// get 30 day hashrate average
$hash_query = $crud->rawSelect("SELECT AVG(global_rate) FROM pool_stats WHERE id > DATE_SUB(NOW(), INTERVAL 30 DAY)");
$hash_avg = $hash_query->fetch(PDO::FETCH_ASSOC);
$hashrate = $hash_avg['AVG(global_rate)'];
// 30 day expected time to block
        // Difficulty * 2**32 / hashrate  = expected number of seconds to find a block
$thirty_day_expected = round($diff * pow(2, 32) / $hashrate);
// Get luck as %
return percentage($thirty_day_expected, $avg_elapsed_seconds, '2')."%";
}
I'm relatively certain this is accurate, but am open to any suggestion as always....

The immediate problem that jumps out at me is the difficulty changes at least twice a month, closer to three.  You need to store some value for each block as it happens, and then calculate it across your range when you display it.  This is what I do for Eligius:

For each block, store:
- average solve time
- actual solve time
- timestamp of the block

then some SQL:

for last 10 blocks:

SELECT sum(AvgSolveTime) / sum(ActualSolveTime)
FROM Luck
where Height >=
(select min(Height) from
(SELECT top 10 Height from Luck where Height <> 0 order by blocktimestamp desc));

for last 12 hours:

Select Sum(Luck.AvgSolveTime) / Sum(Luck.ActualSolveTime)
FROM Luck
Where BlockTimeStamp > (Now - 12 hours);

And so forth.  You can see the code in github for M's Pool Monitor.

M

EDIT: Then do a sanity check against a presumably known good source, like p2pool.info. Smiley
legendary
Activity: 1258
Merit: 1027

Every pool has variance.  Right now p2pool appears to be on the positive side of luck.

That said, I'm not sure this number is right.  According to http://p2pool.info/, it's 127.4%.

M

You are right. I pm'd windpath about this.  It's off by 20% or so from p2pool.info

Hey guys, I did post the formula I'm using earlier to have someone take a look at it... No one gave any feedback.

Here is another shot with the source that calculates 30 day luck:

I store blocks as they are found, hashrate is collected every minute, I added some comments to explain what numbers are being used...

Code:
function getThirtyDayLuck($crud, $diff)  {
// get 30 day average time between blocks
$blocks_query = $crud->rawSelect("SELECT COUNT(*) FROM found_blocks WHERE time > DATE_SUB(NOW(), INTERVAL 30 DAY) ORDER BY time DESC");
$blocks = $blocks_query->fetch(PDO::FETCH_ASSOC);
$block_count = $blocks['COUNT(*)'];
$avg_elapsed_seconds = 2592000 / $block_count; // 2592000 seconds = 30 days
// get 30 day hashrate average
$hash_query = $crud->rawSelect("SELECT AVG(global_rate) FROM pool_stats WHERE id > DATE_SUB(NOW(), INTERVAL 30 DAY)");
$hash_avg = $hash_query->fetch(PDO::FETCH_ASSOC);
$hashrate = $hash_avg['AVG(global_rate)'];
// 30 day expected time to block
        // Difficulty * 2**32 / hashrate  = expected number of seconds to find a block
$thirty_day_expected = round($diff * pow(2, 32) / $hashrate);
// Get luck as %
return percentage($thirty_day_expected, $avg_elapsed_seconds, '2')."%";
}

I'm relatively certain this is accurate, but am open to any suggestion as always....
sr. member
Activity: 285
Merit: 250
Sorry what is this 3 day PPLNS period?  Is that how p2pool works?
hero member
Activity: 798
Merit: 1000
Can someone help me understand this please?

Calculator says 1TH = ~0.03 BTC per day
This Difficulty
per Day   0.02900884 BTC   $18.06


This 1TH miner here is generating around 0.07 BTC per day
http://minefast.coincadence.com/miner.php?id=15TiNiu2ZUjrYKskn9AsbznAgtab19KH84

This guy has more power (1.4TH) and is making less?
http://minefast.coincadence.com/miner.php?id=1Po4Fa4drFtaDZ2Rr51mVs26L9bADJqZBG

I'm confused

There are all sorts of things that can affect expected payout.  One is luck.  Another is how long that user has been here.  If both users are past the 3 day PPLNS period, then the numbers are probably caused by luck, but could also be an error on the website.

M

Another possibility is that the "smaller" miner is actually spread across multiple nodes with the same address.  I do that with rigs pointed at my personal node in the US or ones in EU or Asia depending depending on lowest latency and distance.  Also failover nodes factor in too.  So 1TH may not actually be just 1TH, but instead just 1TH on Coincadence.
legendary
Activity: 1540
Merit: 1001
Can someone help me understand this please?

Calculator says 1TH = ~0.03 BTC per day
This Difficulty
per Day   0.02900884 BTC   $18.06


This 1TH miner here is generating around 0.07 BTC per day
http://minefast.coincadence.com/miner.php?id=15TiNiu2ZUjrYKskn9AsbznAgtab19KH84

This guy has more power (1.4TH) and is making less?
http://minefast.coincadence.com/miner.php?id=1Po4Fa4drFtaDZ2Rr51mVs26L9bADJqZBG

I'm confused

There are all sorts of things that can affect expected payout.  One is luck.  Another is how long that user has been here.  If both users are past the 3 day PPLNS period, then the numbers are probably caused by luck, but could also be an error on the website.

M
sr. member
Activity: 285
Merit: 250
Can someone help me understand this please?

Calculator says 1TH = ~0.03 BTC per day
This Difficulty
per Day   0.02900884 BTC   $18.06


This 1TH miner here is generating around 0.07 BTC per day
http://minefast.coincadence.com/miner.php?id=15TiNiu2ZUjrYKskn9AsbznAgtab19KH84

This guy has more power (1.4TH) and is making less?
http://minefast.coincadence.com/miner.php?id=1Po4Fa4drFtaDZ2Rr51mVs26L9bADJqZBG

I'm confused
sr. member
Activity: 285
Merit: 250

Every pool has variance.  Right now p2pool appears to be on the positive side of luck.

That said, I'm not sure this number is right.  According to http://p2pool.info/, it's 127.4%.

M

You are right. I pm'd windpath about this.  It's off by 20% or so from p2pool.info

Jump to: