Bitcoin Forum

Bitcoin => Pools => Topic started by: ThiagoCMC on February 14, 2012, 04:13:46 AM



Title: Public P2Pool, how?
Post by: ThiagoCMC on February 14, 2012, 04:13:46 AM
Guys,

 I would like to setup a Public P2Pool for anyone that doesn't have knowledge / time to setup its own P2Pool node...

 How can I do it?! I mean, how people can use my P2Pool node and receive the payment on his own Bitcoin Address, not giving hashpower to me, of course...

 Also, I would like to give people the possibility of merged mining too...

Thanks!
Thiago


Title: Re: Public P2Pool, how?
Post by: DeathAndTaxes on February 14, 2012, 04:17:41 AM
If you need to ask it likely is beyond your technical abilities (no insult intended) but here is a top level view.

Your node will use a single address for p2pool.  As far as p2pool is concerned your entire pool is a single miner.

Users will created worker accounts and request work from your pool server.  
Your pool server will pull work from p2pool acting as a relay.
All payments from p2pool for completed blocks will go to your reward address.  
You will keep track of shares produced by workers to provide compensation via whatever method you choose (PPS, PPLNS, etc).
You will payout workers based on shares you record on the pool side and are compensated by p2pool for work completed on p2pool side.

Merged mining would work the same way except NMC blocks found by the pool would simply be paid to you directly.  You would compensate workers however you wish (same split as BTC payout, tracking NMC shares independently, selling NMC for BTC and using it to payout higher BTC per share, etc).


Title: Re: Public P2Pool, how?
Post by: eviltt on February 14, 2012, 04:43:59 AM
Guys,

 I would like to setup a Public P2Pool for anyone that doesn't have knowledge / time to setup its own P2Pool node...

 How can I do it?! I mean, how people can use my P2Pool node and receive the payment on his own Bitcoin Address, not giving hashpower to me, of course...

 Also, I would like to give people the possibility of merged mining too...

Thanks!
Thiago

honestly a better option might be to setup a p2pool vm service, where people pay .05 btc a month to mine, and you set them up with a p2pool ubuntu vm or something, all configured.. its not like p2pool requires any guts to run right?


Title: Re: Public P2Pool, how?
Post by: ThiagoCMC on February 14, 2012, 04:48:13 AM
Guys,

 I would like to setup a Public P2Pool for anyone that doesn't have knowledge / time to setup its own P2Pool node...

 How can I do it?! I mean, how people can use my P2Pool node and receive the payment on his own Bitcoin Address, not giving hashpower to me, of course...

 Also, I would like to give people the possibility of merged mining too...

Thanks!
Thiago

honestly a better option might be to setup a p2pool vm service, where people pay .05 btc a month to mine, and you set them up with a p2pool ubuntu vm or something, all configured.. its not like p2pool requires any guts to run right?


You read my mind.

I can provide this service... But 0.05 BTC a month isn't enough... Maybe I can setup a little fee at P2Pool node that I manage.

You think that there is a market for "P2Pool Private Hosting Service"?!

Thanks!
Thiago


Title: Re: Public P2Pool, how?
Post by: rjk on February 14, 2012, 05:01:36 AM
Maybe try contacting p2poolparty [at] yahoo.com - that service was exactly what you are looking for, but seems to be unmaintained right now.

The stats page still works, but mining doesn't. http://p2poolparty.net/stats.html


Title: Re: Public P2Pool, how?
Post by: forrestv on February 14, 2012, 05:12:48 AM
If you simply run a P2Pool node, miners can connect to it over port 9332 with their username as their bitcoin address and mine to their address. Several people have already done this (p2poolparty being one of them, my node @ p2pool.forre.st being another). Nothing complex and no programming is required.


Title: Re: Public P2Pool, how?
Post by: ThiagoCMC on February 14, 2012, 05:15:21 AM
If you simply run a P2Pool node, miners can connect to it over port 9332 with their username as their bitcoin address and mine to their address. Several people have already done this (p2poolparty being one of them, my node @ p2pool.forre.st being another). Nothing complex and no programming is required.

WOW! Sounds very easy!
Thanks!


Title: Re: Public P2Pool, how?
Post by: rjk on February 14, 2012, 05:19:14 AM
If you simply run a P2Pool node, miners can connect to it over port 9332 with their username as their bitcoin address and mine to their address. Several people have already done this (p2poolparty being one of them, my node @ p2pool.forre.st being another). Nothing complex and no programming is required.
I thought p2poolparty was handing out diff 1 shares though? If not, perhaps the diff was so low when I tried it that it wasn't noticeable.

A frontend that handed out diff 1 shares would be cool, but obviously more complicated - needing a payout script and a wallet.


Title: Re: Public P2Pool, how?
Post by: twmz on February 14, 2012, 05:29:09 AM
If you simply run a P2Pool node, miners can connect to it over port 9332 with their username as their bitcoin address and mine to their address. Several people have already done this (p2poolparty being one of them, my node @ p2pool.forre.st being another). Nothing complex and no programming is required.
I thought p2poolparty was handing out diff 1 shares though? If not, perhaps the diff was so low when I tried it that it wasn't noticeable.

A frontend that handed out diff 1 shares would be cool, but obviously more complicated - needing a payout script and a wallet.

P2Pool already hands out work that is way less than the actual share difficulty.  It normally starts that at 1 and then adjusts it up to keep the impact of miner requests resonably low (for me, they are difficulty 3).  Maybe p2poolparty just edited the code to keep them always at 1. 

In any case, p2pool is smart enough to ignore submitted shares that don't meet the requirements of the real share difficulty.

Now, if you want to actually pay people based on diff 1 shares, then you have to make your own frontend to p2pool (a proxy pool) and deal with all overhead, etc.  But I don't think that was what ThiagoCMC was asking about.  I think he was just asking how to setup a public p2pool instance that everyone could use in "normal p2pool mode" but without having to figure out how to install it themselves. 

That's basically what p2poolparty is, but having more of them doesn't hurt.


Title: Re: Public P2Pool, how?
Post by: DeathAndTaxes on February 14, 2012, 05:30:31 AM
P2Pool already hands out work that is way less than the actual share difficulty.  It normally starts that at 1 and then adjusts it up to keep the impact of miner requests resonably low (for me, they are difficulty 3).  Maybe p2poolparty just edited the code to keep them always at 1.  

Um not sure which p2pool you are running but share difficulty hasn't ever been 3.  Maybe 30 but even 30 was a loooooooooooooonng time ago.


Title: Re: Public P2Pool, how?
Post by: rjk on February 14, 2012, 05:34:10 AM
If you simply run a P2Pool node, miners can connect to it over port 9332 with their username as their bitcoin address and mine to their address. Several people have already done this (p2poolparty being one of them, my node @ p2pool.forre.st being another). Nothing complex and no programming is required.
I thought p2poolparty was handing out diff 1 shares though? If not, perhaps the diff was so low when I tried it that it wasn't noticeable.

A frontend that handed out diff 1 shares would be cool, but obviously more complicated - needing a payout script and a wallet.

P2Pool already hands out work that is way less than the actual share difficulty.  It normally starts that at 1 and then adjusts it up to keep the impact of miner requests resonably low (for me, they are difficulty 3).  Maybe p2poolparty just edited the code to keep them always at 1. 

In any case, p2pool is smart enough to ignore submitted shares that don't meet the requirements of the real share difficulty.

Now, if you want to actually pay people based on diff 1 shares, then you have to make your own frontend to p2pool (a proxy pool) and deal with all overhead, etc.  But I don't think that was what ThiagoCMC was asking about.  I think he was just asking how to setup a public p2pool instance that everyone could use in "normal p2pool mode" but without having to figure out how to install it themselves. 

That's basically what p2poolparty is, but having more of them doesn't hurt.
Hmm. I didn't see that myself, I thought the difficulty was uniform across the network, and I had been getting shares at 130 diff or higher. The proxy/frontend could be useful for low rate CPU miners, and could charge a fee if necessary.


Title: Re: Public P2Pool, how?
Post by: DeathAndTaxes on February 14, 2012, 05:40:51 AM
Hmm. I didn't see that myself, I thought the difficulty was uniform across the network, and I had been getting shares at 130 diff or higher. The proxy/frontend could be useful for low rate CPU miners, and could charge a fee if necessary.

It is.  Difficulty isn't 3 and never has been even day 1 of p2pool difficulty was higher than 3.  Not sure where he got that idea.

Lower difficulty front ends will be more useful/important as p2pool grows.

Share difficulty is roughly = (network GH/s) * 0.5
So if p2pool ever hit 1TH difficulty would be ~500.  At difficulty 500 a 400 MH/s miner would only earn 1 share every 90 minutes.  And with normal variance that could be as much as 3 to 4 hours.  As difficulty continues to rise there will be more and more demand for proxies and frontends which act as variance "buffers".


Title: Re: Public P2Pool, how?
Post by: eviltt on February 14, 2012, 05:48:34 AM
Guys,

 I would like to setup a Public P2Pool for anyone that doesn't have knowledge / time to setup its own P2Pool node...

 How can I do it?! I mean, how people can use my P2Pool node and receive the payment on his own Bitcoin Address, not giving hashpower to me, of course...

 Also, I would like to give people the possibility of merged mining too...

Thanks!
Thiago

honestly a better option might be to setup a p2pool vm service, where people pay .05 btc a month to mine, and you set them up with a p2pool ubuntu vm or something, all configured.. its not like p2pool requires any guts to run right?


You read my mind.

I can provide this service... But 0.05 BTC a month isn't enough... Maybe I can setup a little fee at P2Pool node that I manage.

You think that there is a market for "P2Pool Private Hosting Service"?!

Thanks!
Thiago

I dont see why not I mean really there are probably a good number of persons interested in this, and if it can be done as easy as a pool.. why not?

.05 btc a month might be a little low, but it would depend on how many p2pool hosts you could run on a single vm. and the other fees involved.

edit: NM not needed sounds like p2pool is already good to go!




Title: Re: Public P2Pool, how?
Post by: twmz on February 14, 2012, 05:52:08 AM
It is.  Difficulty isn't 3 and never has been even day 1 of p2pool difficulty was higher than 3.  Not sure where he got that idea.

Read what I wrote again more carefully.  P2Pool hands out low difficulty shares to miners.

2012-02-13 23:49:52.854231 New work for worker! Difficulty: 3.120516 Share difficulty: 619.661413 Total block value: 50.043000 BTC including 102 transactions

So if you connect to a public p2pool node, from your miner's perspective you will see low difficulty pseudoshares.  The only way you ever know that the real shares are higher difficulty is by seeing the console output (which someone only connecting to a public p2pool node will not see).


Title: Re: Public P2Pool, how?
Post by: eviltt on February 14, 2012, 05:53:47 AM
Hmm. I didn't see that myself, I thought the difficulty was uniform across the network, and I had been getting shares at 130 diff or higher. The proxy/frontend could be useful for low rate CPU miners, and could charge a fee if necessary.

It is.  Difficulty isn't 3 and never has been even day 1 of p2pool difficulty was higher than 3.  Not sure where he got that idea.

Lower difficulty front ends will be more useful/important as p2pool grows.

Share difficulty is roughly = (network GH/s) * 0.5
So if p2pool ever hit 1TH difficulty would be ~500.  At difficulty 500 a 400 MH/s miner would only earn 1 share every 90 minutes.  And with normal variance that could be as much as 3 to 4 hours.  As difficulty continues to rise there will be more and more demand for proxies and frontends which act as variance "buffers".

variance blows.. been mining with 1.6gh for the last 2 hours without earning a share :(


Title: Re: Public P2Pool, how?
Post by: rjk on February 14, 2012, 05:53:59 AM
It is.  Difficulty isn't 3 and never has been even day 1 of p2pool difficulty was higher than 3.  Not sure where he got that idea.

Read what I wrote again more carefully.  P2Pool hands out low difficulty shares to miners.

2012-02-13 23:49:52.854231 New work for worker! Difficulty: 3.120516 Share difficulty: 619.661413 Total block value: 50.043000 BTC including 102 transactions

So if you connect to a public p2pool node, from your miner's perspective you will see low difficulty pseudoshares.  The only way you ever know that the real shares are higher difficulty is by seeing the console output (which someone only connecting to a public p2pool node will not see).
Is that a new feature? I don't remember any such thing.


Title: Re: Public P2Pool, how?
Post by: twmz on February 14, 2012, 06:00:36 AM
It is.  Difficulty isn't 3 and never has been even day 1 of p2pool difficulty was higher than 3.  Not sure where he got that idea.

Read what I wrote again more carefully.  P2Pool hands out low difficulty shares to miners.

2012-02-13 23:49:52.854231 New work for worker! Difficulty: 3.120516 Share difficulty: 619.661413 Total block value: 50.043000 BTC including 102 transactions

So if you connect to a public p2pool node, from your miner's perspective you will see low difficulty pseudoshares.  The only way you ever know that the real shares are higher difficulty is by seeing the console output (which someone only connecting to a public p2pool node will not see).
Is that a new feature? I don't remember any such thing.

I think it was added relatively recently.  Maybe 3-4 weeks ago?


Title: Re: Public P2Pool, how?
Post by: DeathAndTaxes on February 14, 2012, 06:04:32 AM
It is.  Difficulty isn't 3 and never has been even day 1 of p2pool difficulty was higher than 3.  Not sure where he got that idea.

Read what I wrote again more carefully.  P2Pool hands out low difficulty shares to miners.

I stand corrected.  Seems a useless "feature".  Those lower shares are worthless.  Completing them doesn't get you into the share chain thus when block is found you will not be compensated for anything less than share difficulty shares.

Thanks for that correction although I do wonder why it doesn't just hand out 619.66 difficulty shares?

Still front-ends can provide a service by reducing variance for smaller miners. 

One way to look at it.

solo mining = 1.3 million difficulty "share".
p2pool = 619 difficulty share
front end = 1 difficulty share

as share difficulty rises so does the effect of variance in the short run.  Eventually direct mining p2pool will be very difficult for small/casual miners.  Rather than have those miners go to traditional pools having "p2pool frontends" act as variance buffers would be preferable. 


Title: Re: Public P2Pool, how?
Post by: twmz on February 14, 2012, 06:12:44 AM
I stand corrected.  Seems a useless "feature".  Those lower shares are worthless.  Completing them doesn't get you into the share chain thus when block is found you will not be compensated for anything less than share difficulty shares.

Thanks for that correction although I do wonder why it doesn't just hand out 619.66 difficulty shares?

I think it was added to make debugging miners easier.  instead of having to wait ages for your miner to find shares just to see if your miner is working correctly, you can see pretty quickly if your miner is working because it is finding shares at a fairly normal pace.  it doesn't cost p2pool much processing power to just filter those low difficulty shares out when they get submitted.

It also made it possible for p2pool to report and graph a reasonably accurate local hashrate with lower variance.

All that said, I agree with you that a front to p2pool for smaller miners would be useful.  But to not completely defeat the purpose of p2pool it would be better if there were many dozens of these that get setup instead of only a few large ones.  Otherwise, we just end up with what we have today--a handful of large centralized pools.


Title: Re: Public P2Pool, how?
Post by: Regex on February 14, 2012, 06:31:11 AM
Posting that here again: You are planning to centralize P2Pool?

Wasn't its main advantage over traditional pools that P2Pool was decentralized?


Title: Re: Public P2Pool, how?
Post by: ThiagoCMC on February 14, 2012, 06:33:25 AM
Posting that here again: You are planning to centralize P2Pool?

Wasn't its main advantage over traditional pools that P2Pool was decentralized?

Again... No, you didn't get the idea.
I want to help.


Title: Re: Public P2Pool, how?
Post by: DeathAndTaxes on February 14, 2012, 06:36:10 AM
Posting that here again: You are planning to centralize P2Pool?

Wasn't its main advantage over traditional pools that P2Pool was decentralized?

Cross posting to answer the cross posting.

So think about this slowly and rationally.

As p2pool grows the share difficulty will grow.  At 1 TH it will take a 200 MH/s miner on average 1 day to earn a share.  And with intra-share variance there will routinely be 5-7 day stretched with no shares and every few blocks the "unlucky streak" lasting 7-10 days with no shares.

No shares = no revenue.  It is naive to think small miners will stick w/ p2pool under growing variance.

As p2pool grows its popularity for small and casual miners will wane as rising difficulty becomes higher and higher variance.   So those miners WILL leave.  Now they could go to:
a) a front end which uses p2pool and thus can't be used for 51% attack and preserves the core decentralized nature (albeit with some centralization).
b) deepbit or so other major pool.

So which is a superior solution?


Title: Re: Public P2Pool, how?
Post by: thirdlight on February 14, 2012, 08:04:23 AM
If the idea is to make it easier for people to try p2pool, then why not?

Thiago, run a p2pool instance & open the port!

Example: If you want to try p2pool, but don't want to set it up on a local machine, simply point your miner to http://176.31.24.238:9332 . Use a valid bitcoin address as the user name, and anything for the password. If you use "graph" for the password, you will see your worker at http://176.31.24.238:9332/graphs . This pool takes 0.5% fee (http://176.31.24.238:9332/fee).

Look for your bitcoin address at http://yat.uukgoblin.net/p2pool-stats/current_payouts.html after a couple of hours.

After 24 hours you should have a good feel for p2pool, and probably some "generated" in your wallet. Remember it takes 120 confirms (nearly a day) for generated's to mature.

http://176.31.24.238:9332 is a live p2pool instance. Anyone can do it!


Title: Re: Public P2Pool, how?
Post by: ThiagoCMC on February 14, 2012, 08:21:49 AM
Okay!

 Thank you for your support thirdlight! I'll do it!

 But, I want to complicate this a little bit... lol

 How can the miners of my P2Pool node receive the benefits of Merged Mining?!

 Because the P2Pool node that I'll provide will have merged mining enabled but, since the miners will use its own bitcoin address as a login to use P2Pool, how they can get the other coins?!

 Or, do I need to wait until P2Pool have full support for merged mining within it (instead solo-mining)?

Thanks!
Thiago


Title: Re: Public P2Pool, how?
Post by: thirdlight on February 14, 2012, 08:42:56 AM
How can the miners of my P2Pool node receive the benefits of Merged Mining?!
Until pooled merged is in p2pool, you will need to somehow record a namecoin (/i0/ix/dev coin) address against each bitcoin address, & work it out by hand (or similar). You could just say that you're merged mining, and that those alt coins are used to fund the pool. I expect most people would only use this kind of p2pool pool as a tester, and after a day or 2, seeing that it works & isn't too scary, will set it up locally (perhaps following your guide). They can then reap the benefits of all those alt coins!

Perhaps loads of these "tester" nodes, spread around the globe, would be good - try one that is geographically close. Mine (176.31.24.238) is France, I think. Also, people's local nodes can connect to these (-n option).

If it helps people give it a try, it miust be good, yes?


Title: Re: Public P2Pool, how?
Post by: Sukrim on February 14, 2012, 04:15:51 PM
You are centralizing in that way, that everyone mining over your node agrees to include whatever transactions you include (=merged mining, other transactions) but has no way of confirming this until a block pops from it (which is quite hard to detect).

Regular pools built on top of P2Pool (for example to provide PPS payments) would need centralized systems again, where the poolop gets paid and you get paid from that money - or you eat the variance of P2Pool and just share an "entry node" and its rules.

Maybe it could be possible to do something like a "miner specific blockchain" that is only shared between the pool and the miner? Every 2 minutes or even slower, the miner gets an updated list of payouts that need to be in the generation transaction to be accepted by the pool (slower would mean slower payouts but less communication with the pool about this - it would still be a traffic spike every x minutes for the pool though) and the whole blocks created are shared with the pool instead of just getworks. Pool then verifies + confirms these blocks, so the miner still can choose what transactions go into each block, while the pool only needs to be trusted to publish the correct amount for each miner to pay. To eliminate the need for this trust, all "miner sharechains" could be verified by publishing to anyone interested their mined blocks too - maybe even to fellow miners, so they can verify someone else did the correct amount of work. Depending on how much you trust the poolop and your bandwidth, you could then for example request the sharechains for random 10% (or 1% or 50% or 99%...) of these other miners and also verify that they did the work they claimed and the poolop didn't cheat.

If you get all other sharechains too, you'd need (depending on poolsize) quite some bandwidth, but you could verify down to the Satoshi if the pool is calculating payouts correctly - for ANY payout scheme, not only PPLNS/PPLNSintimewindow like P2Pool does atm.


Edit:
This kind of pool could be standalone or on top of P2Pool.
To be able to use the P2Pool hash rate as a boost, popping blocks at the rate of P2Pool instead of your (initially meager) pool hash rate, you'd need to scale your pool payouts down to P2Pool standards, publish blocks to the P2Pool chain instead of mainline Bitcoin and make sure you only consider a successful payout, if a Bitcoin block shows up and is confirmed. Your payout scheme also should support some lag (as it takes time to make sure a block is confirmed) or be able to recompute/reset to previous values in case a block gets stale.

Anyways, PPS metapools with 0 trust on top of P2Pool _are_ possible, as long as blocks pop in max. expected time (which is completely unlikely). If they take longer, you'd need an escrow for the money that comes in on shorter rounds to be used on longer rounds, turning it into a scheme like SMPPS or similar.
Prop. metapools are 100% possible, but would be hopped of course, screwing all constant miners in your metapool but not affecting other P2Pool users at least (it doesn't affect mainline Bitcoin if prop pools are hopped too).
PPLNS metapools would have the advantage of being able to discard sharechains after some fixed amount of blocks (PPLNS) or time (P2Pool payout model).
Other payout schemes would of course also be possible, as the only real difference is to let miners assemble full blocks instead of just getworks. These can be (as said) P2Pool blocks or Bitcoin mainline blocks, depending on that, you get different payout speeds (to the Bitcoin network you are either a miner within P2Pool or a solo miner with x GH/s)


Title: Re: Public P2Pool, how?
Post by: markm on February 16, 2012, 01:40:35 PM
Surely it will be almost trivially simple to start a p2paltpool, a p2paltpool2 and so on from time to time as needed to keep each p2pool network within reasonably nice share-difficulty range?

It looks as if p2pool might, unlike bitcoin and the altcoins based on it, be succeeding in talking my router into opening its incoming port.

It would be nice if someone could check that, if it is so then my merged mining, no-fee p2pool should be reachable at CrossCiv.no-ip.org:10332

If it is opening the port maybe I can get the UPNP folk to look at its code to try to make UPNP also able to talk to this type of router.

If mining a whole bunch of altcoins in a multiple merge can pay for the load on the bandwidth and machine there should never be any fees and might even end up being kickbacks in various altcoins or maybe in DeVCoins since all the others can likely be used to buy DeVCoins...

-MarkM-


Title: Re: Public P2Pool, how?
Post by: Syke on February 17, 2012, 01:48:13 AM
Surely it will be almost trivially simple to start a p2paltpool, a p2paltpool2 and so on from time to time as needed to keep each p2pool network within reasonably nice share-difficulty range?

Right. I think a p2pool size of 200-300 GH/s is about right. On average that's 3-4 blocks found per day at the current Bitcoin difficulty level. That's smooth enough variance for someone with a single GPU. If the current p2pool starts reaching 400 GH/s, we should plan on splitting it in half.


Title: Re: Public P2Pool, how?
Post by: ThiagoCMC on February 17, 2012, 05:43:11 AM
Surely it will be almost trivially simple to start a p2paltpool, a p2paltpool2 and so on from time to time as needed to keep each p2pool network within reasonably nice share-difficulty range?

Right. I think a p2pool size of 200-300 GH/s is about right. On average that's 3-4 blocks found per day at the current Bitcoin difficulty level. That's smooth enough variance for someone with a single GPU. If the current p2pool starts reaching 400 GH/s, we should plan on splitting it in half.

I prefer a pool with minimal of 600GHash at the current difficulty level... So, 600-800GHash would be a good point to split...

Sometimes with 200-300GHash we spend almost 24H without earning nothing...  :(


Title: Re: Public P2Pool, how?
Post by: DeathAndTaxes on February 17, 2012, 05:54:05 AM
Surely it will be almost trivially simple to start a p2paltpool, a p2paltpool2 and so on from time to time as needed to keep each p2pool network within reasonably nice share-difficulty range?

Right. I think a p2pool size of 200-300 GH/s is about right. On average that's 3-4 blocks found per day at the current Bitcoin difficulty level. That's smooth enough variance for someone with a single GPU. If the current p2pool starts reaching 400 GH/s, we should plan on splitting it in half.

I prefer a pool with minimal of 600GHash at the current difficulty level... So, 600-800GHash would be a good point to split...

Sometimes with 200-300GHash we spend almost 24H without earning nothing...  :(

This is why I think the optimal solution would be p2pool forming a backbone network to connect pools, large farms, and sub-p2pools.

Then any number of sub-p2pools could form.  Some with lower difficulty (for smaller miners), some with higher difficulty/hash rate for larger miners.



Title: Re: Public P2Pool, how?
Post by: eviltt on February 17, 2012, 06:15:48 AM
Surely it will be almost trivially simple to start a p2paltpool, a p2paltpool2 and so on from time to time as needed to keep each p2pool network within reasonably nice share-difficulty range?

Right. I think a p2pool size of 200-300 GH/s is about right. On average that's 3-4 blocks found per day at the current Bitcoin difficulty level. That's smooth enough variance for someone with a single GPU. If the current p2pool starts reaching 400 GH/s, we should plan on splitting it in half.

I prefer a pool with minimal of 600GHash at the current difficulty level... So, 600-800GHash would be a good point to split...

Sometimes with 200-300GHash we spend almost 24H without earning nothing...  :(

like today? :(

god variance can be frustrating


Title: Re: Public P2Pool, how?
Post by: ThiagoCMC on February 17, 2012, 06:28:42 AM
Surely it will be almost trivially simple to start a p2paltpool, a p2paltpool2 and so on from time to time as needed to keep each p2pool network within reasonably nice share-difficulty range?

Right. I think a p2pool size of 200-300 GH/s is about right. On average that's 3-4 blocks found per day at the current Bitcoin difficulty level. That's smooth enough variance for someone with a single GPU. If the current p2pool starts reaching 400 GH/s, we should plan on splitting it in half.

I prefer a pool with minimal of 600GHash at the current difficulty level... So, 600-800GHash would be a good point to split...

Sometimes with 200-300GHash we spend almost 24H without earning nothing...  :(

This is why I think the optimal solution would be p2pool forming a backbone network to connect pools, large farms, and sub-p2pools.

Then any number of sub-p2pools could form.  Some with lower difficulty (for smaller miners), some with higher difficulty/hash rate for larger miners.

We just need to implement it! LOL


Title: Re: Public P2Pool, how?
Post by: ThiagoCMC on February 17, 2012, 06:29:13 AM
Surely it will be almost trivially simple to start a p2paltpool, a p2paltpool2 and so on from time to time as needed to keep each p2pool network within reasonably nice share-difficulty range?

Right. I think a p2pool size of 200-300 GH/s is about right. On average that's 3-4 blocks found per day at the current Bitcoin difficulty level. That's smooth enough variance for someone with a single GPU. If the current p2pool starts reaching 400 GH/s, we should plan on splitting it in half.

I prefer a pool with minimal of 600GHash at the current difficulty level... So, 600-800GHash would be a good point to split...

Sometimes with 200-300GHash we spend almost 24H without earning nothing...  :(

like today? :(

god variance can be frustrating


Precisely.


Title: Re: Public P2Pool, how?
Post by: DeathAndTaxes on February 17, 2012, 04:08:57 PM
Surely it will be almost trivially simple to start a p2paltpool, a p2paltpool2 and so on from time to time as needed to keep each p2pool network within reasonably nice share-difficulty range?

Right. I think a p2pool size of 200-300 GH/s is about right. On average that's 3-4 blocks found per day at the current Bitcoin difficulty level. That's smooth enough variance for someone with a single GPU. If the current p2pool starts reaching 400 GH/s, we should plan on splitting it in half.

I prefer a pool with minimal of 600GHash at the current difficulty level... So, 600-800GHash would be a good point to split...

Sometimes with 200-300GHash we spend almost 24H without earning nothing...  :(

This is why I think the optimal solution would be p2pool forming a backbone network to connect pools, large farms, and sub-p2pools.

Then any number of sub-p2pools could form.  Some with lower difficulty (for smaller miners), some with higher difficulty/hash rate for larger miners.

We just need to implement it! LOL

I think it will happen organically.  Trying to do it now would likely just cause frustration and confusion.  As p2pool grows difficulty will rise.  Eventually it will reach a point that a solution will need to be found because difficulty is too high for small miners.

At that point the simplistic aproach would be to make a second instance of p2pool.  Maybe we will do that but that limits us forever to 300-500GH/s per instance and we never make it into that low variance that happens at 1TH/s+.

Instead once p2pool is larger we "could" update p2pool to have longer share time (say 60 seconds vs 10 second target).  Which will raise the high difficulty even higher.  From p2pool point of view pools, mining farms, and subpools are simply shares being submitted.  Nothing really needs to change except a longer share time.

Major hashing farms and conventional pools can continue to mine the very high efficiency p2pool (which has now formed the decentralized backbone).    I am trying to convince the operator of BitMinter to join p2pool.  That would add ~120GH/s of hashing power.  If it can be done I would imagine many other smaller pools would to reduce their variance.

As long as a protocol for "sub-p2pool" is implemented there will be no/minimal change to miners.  One or more "subp2pool" instance can be started for smaller miners who need the lower variance of lower difficulty shares. 

Hopefully this weekend I can write a whitepaper which fleshes out the protocol concept to show that a migration from a single p2pool to a backbone & sub-pool network would be that hard.  At this point is is more academic.  There is no need now what we need is more hashing power not fragmenting it.  It is more something to keep in mind for the "what happens if we get to 1 TH/s?".


Title: Re: Public P2Pool, how?
Post by: Red Emerald on February 18, 2012, 06:02:53 AM
Guys,

 I would like to setup a Public P2Pool for anyone that doesn't have knowledge / time to setup its own P2Pool node...

 How can I do it?! I mean, how people can use my P2Pool node and receive the payment on his own Bitcoin Address, not giving hashpower to me, of course...

 Also, I would like to give people the possibility of merged mining too...

Thanks!
Thiago

honestly a better option might be to setup a p2pool vm service, where people pay .05 btc a month to mine, and you set them up with a p2pool ubuntu vm or something, all configured.. its not like p2pool requires any guts to run right?


You read my mind.

I can provide this service... But 0.05 BTC a month isn't enough... Maybe I can setup a little fee at P2Pool node that I manage.

You think that there is a market for "P2Pool Private Hosting Service"?!

Thanks!
Thiago

You are asking for things that are way too complicated.  What you want already exists.

Setup p2pool and add a "--fee 1" to take a 1% fee from anyone using your node.  "$ ./run_p2pool.py --help"

Others have already said that anyone can connect with their username being their payment address if you just open a port.  I used to have my address (p2pool.stitthappens.com:8336) in my sig, but I just point to the wiki now.  I also run p2pool2.stitthappens.com:8336 as my backup.   You can even tell the fee by visiting http://<p2pool node>:<port>/fee

Right now p2pool doesn't have much monitoring.  It would be nice to have worker stats available in a few more formats.


Title: Re: Public P2Pool, how?
Post by: ThiagoCMC on February 18, 2012, 06:04:33 AM
Guys,

 I would like to setup a Public P2Pool for anyone that doesn't have knowledge / time to setup its own P2Pool node...

 How can I do it?! I mean, how people can use my P2Pool node and receive the payment on his own Bitcoin Address, not giving hashpower to me, of course...

 Also, I would like to give people the possibility of merged mining too...

Thanks!
Thiago

honestly a better option might be to setup a p2pool vm service, where people pay .05 btc a month to mine, and you set them up with a p2pool ubuntu vm or something, all configured.. its not like p2pool requires any guts to run right?


You read my mind.

I can provide this service... But 0.05 BTC a month isn't enough... Maybe I can setup a little fee at P2Pool node that I manage.

You think that there is a market for "P2Pool Private Hosting Service"?!

Thanks!
Thiago

You are asking for things that are way too complicated.  What you want already exists.

Setup p2pool and add a "--fee 1" to take a 1% fee from anyone using your node.  "$ ./run_p2pool.py --help"

Others have already said that anyone can connect with their username being their payment address if you just open a port.  I used to have my address (p2pool.stitthappens.com:8336) in my sig, but I just point to the wiki now.  I also run p2pool2.stitthappens.com:8336 as my backup.   You can even tell the fee by visiting http://<p2pool node>:<port>/fee

Right now p2pool doesn't have much monitoring.  It would be nice to have worker stats available in a few more formats.

+1


Title: Re: Public P2Pool, how?
Post by: Red Emerald on February 18, 2012, 06:08:25 AM
I'm not sure how you could handle payouts on the merged mine chain.  Some sort of monitoring of the workers would be needed to do this I think.

I guess wou could trade the merged coins for BTC and then donate that to all the p2pool miners, but that doesn't reward just the people on your node.