Author

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

hero member
Activity: 737
Merit: 500
What happens, if I let p2pool running, but have no miner running? Will this help the network / will this generate any income?

Dia

No, it will not generate any income, and I don't think it provides any practical help to the p2pool network.  At the same time, it doesn't really hurt anything, either.
hero member
Activity: 772
Merit: 500
What happens, if I let p2pool running, but have no miner running? Will this help the network / will this generate any income?

Dia
legendary
Activity: 1379
Merit: 1003
nec sine labore
wait, it should have longer timeouts for longer rounds, if a round lasts less than 10 seconds the miner will throw away current getwork anyway, so while does it limit RollNTime to 10 seconds?

You can always modify your code (see doesn't open source rock) or maybe it can be added as a parameter but there might be unforeseen implications of an ultra long NTime that should be tested before adjusting the default network wide.

Most pools have an NTime of 60 sec or less and that is on chains with an average LP interval of 300 sec (BTC/NMC merged mining) or 600 sec (BTC only).  There likely should be some testing before changing NTime to larger than expected LP interval.   Lots of different miner software out there and they may make some assumptions/optimizations which may clash with NTime > expected LP interval.  Maybe not but given the small impact and low priority of a change testing seems wise.  Maybe I am just a code coward. Smiley

DeathAndTaxes,

I was wrong as well in the way I thought RollNTime works

https://en.bitcoin.it/wiki/Getwork#rollntime

It seems to me now that 10 (seconds) is a good value for p2pool rounds.

spiccioli
donator
Activity: 1218
Merit: 1079
Gerald Davis
wait, it should have longer timeouts for longer rounds, if a round lasts less than 10 seconds the miner will throw away current getwork anyway, so while does it limit RollNTime to 10 seconds?

You can always modify your code (see doesn't open source rock) or maybe it can be added as a parameter but there might be unforeseen implications of an ultra long NTime that should be tested before adjusting the default network wide.

Most pools have an NTime of 60 sec or less and that is on chains with an average LP interval of 300 sec (BTC/NMC merged mining) or 600 sec (BTC only).  There likely should be some testing before changing NTime to larger than expected LP interval.   Lots of different miner software out there and they may make some assumptions/optimizations which may clash with NTime > expected LP interval.  Maybe not but given the small impact and low priority of a change testing seems wise.  Maybe I am just a code coward. Smiley
rjk
sr. member
Activity: 448
Merit: 250
1ngldh
wait, it should have longer timeouts for longer rounds, if a round lasts less than 10 seconds the miner will throw away current getwork anyway, so while does it limit RollNTime to 10 seconds?

I don't know (ask forrest), but it does.  I just looked at the HTTP header it returns and it says 10 seconds.

It's so a miner can roll the work locally so that they only have to do one getwork to get enough work for all their cards. I think CGminer does this when it receives a long poll.

I don't think cgminer splits 1 single getwork across cards.  I am pretty sure it does 1 getwork per thread (so if you are running 8 GPU w/ 2 threads each it pulls 16 getworks).  That would be one useful optimization in cgminer. 
Correct. cgminer really needs a work splitting engine, badly.
donator
Activity: 1218
Merit: 1079
Gerald Davis
wait, it should have longer timeouts for longer rounds, if a round lasts less than 10 seconds the miner will throw away current getwork anyway, so while does it limit RollNTime to 10 seconds?

I don't know (ask forrest), but it does.  I just looked at the HTTP header it returns and it says 10 seconds.

It's so a miner can roll the work locally so that they only have to do one getwork to get enough work for all their cards. I think CGminer does this when it receives a long poll.

Hmm I wasn't aware of that.

I may be wrong (have already been wrong once in last 2 minutes) but I don't think cgminer splits a single getwork across threads.  IIRC it does 1 getwork per thread (so if you are running 8 GPU w/ 2 threads each it pulls 16 getworks).  That would be a useful optimization in cgminer.  

Technically though to optimize that wouldn't it need to either split the nonce range into sub nonce ranges or "cheat" (use slightly wrong time for each thread)?
hero member
Activity: 516
Merit: 643
wait, it should have longer timeouts for longer rounds, if a round lasts less than 10 seconds the miner will throw away current getwork anyway, so while does it limit RollNTime to 10 seconds?

I don't know (ask forrest), but it does.  I just looked at the HTTP header it returns and it says 10 seconds.

It's so a miner can roll the work locally so that they only have to do one getwork to get enough work for all their cards. I think CGminer does this when it receives a long poll.
hero member
Activity: 737
Merit: 500
wait, it should have longer timeouts for longer rounds, if a round lasts less than 10 seconds the miner will throw away current getwork anyway, so while does it limit RollNTime to 10 seconds?

I don't know (ask forrest), but it does.  I just looked at the HTTP header it returns and it says 10 seconds.
legendary
Activity: 1379
Merit: 1003
nec sine labore
does p2pool support RollNTime extension to miners?
No I don't believe it does.  However there is really no reason.

All of your reasons for why it doesn't matter are correct but you are wrong that it isn't supported.  But, p2pool does use RollNTime (with a 10 second expiration).

twmz,

wait, it should have longer timeouts for longer rounds, if a round lasts less than 10 seconds the miner will throw away current getwork anyway, so while does it limit RollNTime to 10 seconds?

spiccioli
legendary
Activity: 1379
Merit: 1003
nec sine labore
Hi,

does p2pool support RollNTime extension to miners?

spiccioli.


No I don't believe it does.  However there is really no reason.



Thanks for the explanation Death&Taxes.

spiccioli
hero member
Activity: 737
Merit: 500
does p2pool support RollNTime extension to miners?
No I don't believe it does.  However there is really no reason.

All of your reasons for why it doesn't matter are correct but you are wrong that it isn't supported.  But, p2pool does use RollNTime (with a 10 second expiration).
donator
Activity: 1218
Merit: 1079
Gerald Davis
Hi,

does p2pool support RollNTime extension to miners?

spiccioli.


No I don't believe it does.  However there is really no reason.
I was 100% wrong.  p2pool DOES support RollNTime but as indicated below it likely doesn't have that much of an impact.

RollNTime is useful to reduce # of getworks per share.

A 400 MH/s miner mining diff 1 shares:
2^32 / (400 * 1000^2) = ~10s.

So every 10 seconds this miner will need one getwork.  Having a rolling of say 60 seconds would require 1/6th the getworks.

p2pool has an average time between LP of 10 seconds.  Most GPU will never finish a single nonce range before an LP so they will never get a chance to roll the ntime.  (D&T tip of the day: this is why in cgminer it is optimal to reduce intensity by 1, and set # of threads per GPU and queue depth both to 1)

Even with 400 MH/s GPU RollNTime would only reduce getworks on the rounds that are > 10 seconds.  If you are using 2 threads and say a 250 MH/s GPU it would only reduce getworks on the rounds that are > 32 seconds.  Also the workload is relatively small since you are hosting your own "pool server".  A pool server like Deepbit (~3TH/s) has to issue roughly 700 getworks per second.  Using RollNTime can reduce that significantly.  Looks like you have ~9GH/s.  Without RollNTime that requires only ~2 getworks per second.  An underclocked single core Atom CPU could handle that with minimal CPU load %.
legendary
Activity: 1379
Merit: 1003
nec sine labore
Hi,

does p2pool support RollNTime extension to miners?

spiccioli.
legendary
Activity: 1441
Merit: 1000
Live and enjoy experiments
Just found this gem, added 9GH, it will be fun  Cheesy
full member
Activity: 132
Merit: 100
Great idea and loving it. Added my 700mh theres really no need for big pools anymore, getting small shares but not running all of the time just through the day. When I got up this morn and connected some shares from yesterday came through to my wallet.
hero member
Activity: 737
Merit: 500
Several people asked, so I enabled p2pool sig and avatar image generation for p2pool miners at btcstats.net.  Just go to http://btcstats.net?p2pool and enter your payment address to get your sig or avatar image URL.

Please note, that the hashrate shown is highly imprecise (just like the one at p2pool.info -- its really the same data source). The hashrate show is an estimation based on the number of high-difficulty shares you have found in the past 24 hours.  For most miners, variance will cause the estimated hashrate to vary significantly.

Also note that you can't use the sig image here because bitcointalk.org has disabled adding images to sigs.  You can, however, use the avatar image here.
full member
Activity: 125
Merit: 100
Yeah, we seem to be having a bit of trouble topping that 300 mark for any amount of time.  I just added another card, but 350MH more doesn't move the needle too much =)

I'm with you Holliday, we should be much bigger, keep getting the word out!
hero member
Activity: 772
Merit: 500
This project rocks, I switched from a normal pool and use this now for everyday mining (even if I only can add ~600 MH/s). Keep up the great work!

Dia
donator
Activity: 1218
Merit: 1079
Gerald Davis
Yet, I am not sold on hopping with P2P cause I have little hashes (2 GH) and I hop out before completed P2P share and thus get no credit?  I might not understand how it all works.

Hoppers like control and cutting edge tech, P2pool is all that but I don't know how to compare P2p shared against 1/difficulty that I use for non-p2pools.  And if I stop mining for 30-90 minutes, do I pickup on the P2p share where I left off or do I have to start a new share?  Anyone clear up my confusion?


There is no such thing as "progress" toward any share or block.  In the long run you will earn shares at the same rate.  You might hop in provide half the work required ON AVERAGE for a share and get a share (or two, or ten), and you may also hop in and get no shares.

In the LONG RUN yuor # of shares thus your compensation will be the same regardless of if you mine intermitently, intentionally hop in/out, or mine continually 24/7/365.

You can't work toward a share (any share in any pool) because there is no progress.  You either find a share or you don't.  Each hash is completely independent and the prior "chances" have no effect on the odds of finding a hash. 
There is no penalty to hopping PPLNS pools and p2p is no exception. 

It is "hop proof" in that you can never get greater than 100% PPS expected value.  You can't steal revenue from other miners (like you do in the Prop pools you hop) as each miner is paid fairly for the work they complete.
rjk
sr. member
Activity: 448
Merit: 250
1ngldh
Yet, I am not sold on hopping with P2P cause I have little hashes (2 GH) and I hop out before completed P2P share and thus get no credit?  I might not understand how it all works.

Hoppers like control and cutting edge tech, P2pool is all that but I don't know how to compare P2p shared against 1/difficulty that I use for non-p2pools.  And if I stop mining for 30-90 minutes, do I pickup on the P2p share where I left off or do I have to start a new share?  Anyone clear up my confusion?

It's in the title. Hop-proof pool.
You can't hop it.
Jump to: