Wait up can someone please tell me again,
`` bitcoinaddresshere/1 `` is that always submit shares at the target and higher?.
`` bitcoinaddresshere/2 `` is that always submit shares double the target and higher?.
Say the sharechain target is 4 000 000 How does one submit only, shares double
that and higher.
Lets grep the source yeah
milton@milton:~/temp/p2pool$ git grep share_target
p2pool/bitcoin/getwork.py: def __init__(self, version, previous_block, merkle_root, timestamp, bits, share_target):
p2pool/bitcoin/getwork.py: self.version, self.previous_block, self.merkle_root, self.timestamp, self.bits, self.share_target = version, previous_block, merkle_root, timestamp, bits, share_target
p2pool/bitcoin/getwork.py: return hash((self.version, self.previous_block, self.merkle_root, self.timestamp, self.bits, self.share_target))
p2pool/bitcoin/getwork.py: 'target': pack.IntType(256).pack(self.share_target).encode('hex'),
p2pool/bitcoin/getwork.py: share_target=pack.IntType(256).unpack(getwork['target'].decode('hex')),
p2pool/bitcoin/stratum.py: self.other.svc_mining.rpc_set_difficulty(bitcoin_data.target_to_difficulty(x['share_target'])).addErrback(lambda err: None)
p2pool/bitcoin/worker_interface.py: share_target=x['share_target'],
p2pool/main.py: my_shares_per_s = sum(datum['work']/dt/bitcoin_data.target_to_average_attempts(datum['share_target']) for datum in datums)
p2pool/work.py: desired_pseudoshare_target = None
p2pool/work.py: desired_share_target = None
p2pool/work.py: desired_pseudoshare_target = bitcoin_data.difficulty_to_target(float(parameter))
p2pool/work.py: desired_share_target = bitcoin_data.difficulty_to_target(float(parameter))
p2pool/work.py: return user, pubkey_hash, desired_share_target, desired_pseudoshare_target
p2pool/work.py: user, pubkey_hash, desired_share_target, desired_pseudoshare_target = self.get_user_details(user)
p2pool/work.py: return pubkey_hash, desired_share_target, desired_pseudoshare_target
p2pool/work.py: def get_work(self, pubkey_hash, desired_share_target, desired_pseudoshare_target):
p2pool/work.py: if desired_share_target is None:
p2pool/work.py: desired_share_target = 2**256-1
That looks interesting lets try a bit of pickaxe
milton@milton:~/temp/p2pool$ git log -Sshare_target --pretty=raw --abbrev-commit p2pool/work.py
commit c345d54
tree 02354ed885c4c302aae09e5689d6f7f6ccd79064
parent 29493ba726ab40f78574361fdeabec075a8a685f
author Forrest Voight 1372869213 -0400
committer Forrest Voight 1372873668 -0400
dynamically adjust share difficulty to prevent payouts below dust threshold
commit 819f0e3
tree eab5343ad18bc2fa0e0b46b8fc7d9913243259f1
parent d2941ed60b7e65683ecaa8774c0e5e9e7dad2d4b
author Forrest Voight 1372439913 -0400
committer Forrest Voight 1372443960 -0400
modulate share difficulty to prevent any node from producing more than 5% of shares
commit 80c9591
tree 4b573ac22ff8ec5c7fc8d7a3144517da90e36075
parent 70d337b9024ff6564fcbebae114c95b91422aed3
author Forrest Voight 1340553333 -0400
committer Forrest Voight 1340555939 -0400
moved WorkerBridge to p2pool.work
p2pool/work.py: desired_share_target = min(desired_share_target,
p2pool/work.py: desired_share_target = min(desired_share_target,
p2pool/work.py: desired_target=desired_share_target,
p2pool/work.py: if desired_pseudoshare_target is None:
p2pool/work.py: target = desired_pseudoshare_target
p2pool/work.py: share_target=target,
p2pool/work.py: self.local_rate_monitor.add_datum(dict(work=bitcoin_data.target_to_average_attempts(target), dead=not on_time, user=user, share_target=share_info['bits'].target))
Ah k there
milton@milton:~/temp/p2pool$ git show 819f0e3
diff --git a/p2pool/work.py b/p2pool/work.py
index 40a1a30..346db56 100644
--- a/p2pool/work.py
+++ b/p2pool/work.py
@@ -142,18 +142,20 @@ class WorkerBridge(worker_interface.WorkerBridge):
user, contents2 = contents[0], contents[1:]
desired_pseudoshare_target = None
- desired_share_target = 2**256 - 1
+ desired_share_target = None
for symbol, parameter in zip(contents2[::2], contents2[1::2]):
if symbol == '+':
try:
desired_pseudoshare_target = bitcoin_data.difficulty_to_target(float(parameter))
except:
- pass
+ if p2pool.DEBUG:
+ log.err()
elif symbol == '/':
try:
desired_share_target = bitcoin_data.difficulty_to_target(float(parameter))
except:
- pass
+ if p2pool.DEBUG:
+ log.err()
I can't tell what a miner is supposed to put in front of the / ?
It also says in the commit message of 819f0e3e3ab9460fe60606c3f1e9c562d40361c7
modulate share difficulty to prevent any node from producing more than 5% of shares
I'm curious now, what actually happens to large miners with enough hashrate to trigger that?.
Take it easy guys and maybe I'll see ya round. I'll delete if this post is too noisy.
=^)
Edit: Sun Jan 31 14:45:56 ACDT 2016
Cheers CartmanSPC