Hey guys, what bad things come from having a high getwork latency? I'm under the impression that stratum makes getwork irrelevant, but I'm a bit worried that mine is quite high (sometimes a few seconds, you can see it here
http://www.blisterpool.com/stats in the graphs bit). Is this a symptom of anything in particular? The cpu doesn't seem to be under any enormous stress, but it does peak every now and then...is this the cause?
Also, I helped a miner get configured to run on my p2pool node, and he has some ASICMiner blades (~10.7GH each). Google search results (most seem to be from a year ago) have all told me that they naturally have high DOA rate with p2pool, without any real way to fix it. Is this still the case? His dead rate is around 40-50%. I also noticed the server was getting absolutely hammered with hash > target spam, and I suggested to the miner to use his bitcoin address+1 for his username. It reduced the server spam drastically (from 100/sec to several/sec), and reduced his DOA a little bit, but it also reduced his mean hashing power by about 10%. Could anyone explain to me what's going on here? I'd like to help him get better results.
Is this miner running a stratum proxy locally? each of the 32 chips seem to mostly ask for work independently.
My blade gets work 150 times per minute, meaning that the latency should be at most 12.8 seconds (150/32*60).
I don't actually have P2Pool working yet, but moved the midstate calculations to my Stratum proxy on the assumption it can calculate mid-state faster than the blade.
Edit: Since AFAIK, the getwork protocol does not allow workers to be interrupted with new work, we should be able to estimate the expected stales given a specific block frequency. If we assume a 13s worst case latency, that works out to at most 43% stales with a 30 second target. If we assume a 6.5s average, that works out to 21.7% stale. -- that does seem high.
Edit: Apparently
Longpolling works around HTTP limitations by having the miner request new work immediately. The server then does not respond until new work is ready. Testing time.