Bitcoin Forum
September 25, 2017, 01:07:51 AM *
News: Latest stable version of Bitcoin Core: 0.15.0.1  [Torrent]. (New!)
 
   Home   Help Search Donate Login Register  
Pages: « 1 ... 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 [786] 787 788 789 790 791 792 793 794 795 796 797 »
  Print  
Author Topic: [1500 TH] p2pool: Decentralized, DoS-resistant, Hop-Proof pool  (Read 2465588 times)
jtoomim
Hero Member
*****
Offline Offline

Activity: 731


View Profile WWW
August 16, 2017, 04:46:24 AM
 #15701

I generally agree with what Kano wrote above.

Quote
The problem with the upcoming 2x is actually BIP91.
Some believed BIP91 was the /NYA/ agreement, but instead it was simply a lock in for segwit, and nothing more.
While most blocks show /NYA/ in their coinbase transaction, that doesn't affect the upcoming 2x change.
The percentage of blocks signing /NYA/ is currently floating around 89% to 92%. This is why I think that Segwit2x is the future of Bitcoin. The percentage supporting BIP91 was similar when BIP91 was active.

According to the NYA, bit 4 was intended to be a signal for Segwit2x, and when btc1 is queried for the required softforks via GBT, btc1 has included segwit2x since bit 4 was triggered. Bit 4 is also supposed to be BIP91, so bit 4 is ambiguous. /NYA/ is unambiguous, but non-binding.

It's worth mentioning that Segwit2x can only exist if it has a majority of the hashrate. If your definition of Bitcoin is the post-fork chain with the most hashrate, then Segwit2x will either be Bitcoin or it won't exist. It's only if your definition of Bitcoin is Bitcoin Core that Segwit2x can be an altcoin.

Whatever. It shouldn't be too hard to get p2pool to support all three Bitcoins. It looks like I'll have a little bit of time later tonight, so I'll see what I can get done.

Hosting bitcoin miners for $65 to $80/kW/month on clean, cheap hydro power.
http://Toom.im
1506301671
Hero Member
*
Offline Offline

Posts: 1506301671

View Profile Personal Message (Offline)

Ignore
1506301671
Reply with quote  #2

1506301671
Report to moderator
1506301671
Hero Member
*
Offline Offline

Posts: 1506301671

View Profile Personal Message (Offline)

Ignore
1506301671
Reply with quote  #2

1506301671
Report to moderator
1506301671
Hero Member
*
Offline Offline

Posts: 1506301671

View Profile Personal Message (Offline)

Ignore
1506301671
Reply with quote  #2

1506301671
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
1506301671
Hero Member
*
Offline Offline

Posts: 1506301671

View Profile Personal Message (Offline)

Ignore
1506301671
Reply with quote  #2

1506301671
Report to moderator
kano
Legendary
*
Online Online

Activity: 2212


Linux since 1997 RedHat 4


View Profile
August 16, 2017, 07:16:48 AM
 #15702

...
It's worth mentioning that Segwit2x can only exist if it has a majority of the hashrate. If your definition of Bitcoin is the post-fork chain with the most hashrate, then Segwit2x will either be Bitcoin or it won't exist. It's only if your definition of Bitcoin is Bitcoin Core that Segwit2x can be an altcoin.
...
Yes Segwit2x is an example of knowing the major fork in advance, it won't activate until it is the major fork, so should be no issue for miners on p2pool ... unless they want to back a centrally controlled minor fork ...

Pool: https://kano.is Here on Bitcointalk: Forum BTC: 1KanoPb8cKYqNrswjaA8cRDk4FAS9eDMLU
FreeNode IRC: irc.freenode.net channel #kano.is Majority developer of the ckpool code
Help keep Bitcoin secure by mining on pools with full block verification on all blocks - and NO empty blocks!
jtoomim
Hero Member
*****
Offline Offline

Activity: 731


View Profile WWW
August 16, 2017, 08:27:23 AM
 #15703

I've pushed two changes to https://github.com/jtoomim/p2pool/commits/1mb_segwit:

1. Allow mining with clients that do not support all locked-in or active forks (e.g. Bitcoin Core which does not support segwit2x) if p2pool is run with the --allow-obsolete-bitcoind command-line option.
2. Switch back to using time.time() in order to hopefully fix Xantus's "exceptions.OverflowError: mktime argument out of range" error on Windows

Hosting bitcoin miners for $65 to $80/kW/month on clean, cheap hydro power.
http://Toom.im
chasaamm
Newbie
*
Offline Offline

Activity: 9


View Profile
August 16, 2017, 10:46:03 AM
 #15704

I've pushed two changes to https://github.com/jtoomim/p2pool/commits/1mb_segwit:

1. Allow mining with clients that do not support all locked-in or active forks (e.g. Bitcoin Core which does not support segwit2x) if p2pool is run with the --allow-obsolete-bitcoind command-line option.
2. Switch back to using time.time() in order to hopefully fix Xantus's "exceptions.OverflowError: mktime argument out of range" error on Windows

If a miner don't uses Bitcoin Core client to set up his p2pool node, witch client should he use and where to download it?
bitsolutions
Sr. Member
****
Offline Offline

Activity: 248



View Profile
August 16, 2017, 01:25:35 PM
 #15705

According to the NYA, bit 4 was intended to be a signal for Segwit2x, and when btc1 is queried for the required softforks via GBT, btc1 has included segwit2x since bit 4 was triggered. Bit 4 is also supposed to be BIP91, so bit 4 is ambiguous. /NYA/ is unambiguous, but non-binding.
In the btc1 code the HF codepath was activated by bit 1, bit 4 was used only for BIP91.

It's worth mentioning that Segwit2x can only exist if it has a majority of the hashrate. If your definition of Bitcoin is the post-fork chain with the most hashrate, then Segwit2x will either be Bitcoin or it won't exist. It's only if your definition of Bitcoin is Bitcoin Core that Segwit2x can be an altcoin.
Segwit2x has wipeout protection for full nodes(but not SPV wallets) so technically it can be a minority fork.
belcher
Full Member
***
Offline Offline

Activity: 238


View Profile
August 16, 2017, 09:22:12 PM
 #15706

I'm sure this has been discussed before but this thread is very large and hard to search, and the other discussion I found didn't answer.



What are the downsides to increasing the PPLNS windows/length of the sharechain? The only ones I can think of are a bigger coinbase transaction and more dust outputs (because more individual miners would get rewarded).

Everyone's been thinking about Lightning Network lately, I wonder if there's a way to have p2pool mine directly to a LN payment channel and have LN payments trustlessly made (somehow) to pay all the individual miners. This would avoid the problem of a large coinbase tx and many dust outputs. The backout transaction in case of a unilateral close could be paying to all the individual p2pool addresses similar to the coinbase today.

I'm thinking of ways to reduce variance of p2pool.

You could also reduce variance by reducing the share interval, but its already 30 seconds and reducing it further would increase stales more I suppose.

Although now right p2pool's variance is probably more caused by it's low hashrate compared to other pools, so it's a bit of a chicken-and-egg situation.

Is there somewhere to check whether larger miners are setting their share difficulty too high? That it negatively affects small miner's variance.

1HZBd22eQLgbwxjwbCtSjhoPFWxQg8rBd9
JoinMarket - CoinJoin that people will actually use.
PGP fingerprint: 0A8B 038F 5E10 CC27 89BF CFFF EF73 4EA6 77F3 1129
jtoomim
Hero Member
*****
Offline Offline

Activity: 731


View Profile WWW
August 17, 2017, 01:45:42 AM
 #15707

What are the downsides to increasing the PPLNS windows/length of the sharechain?
For p2pool specifically, or for pools in general? I'm assuming the former.

P2pool needs to store all of the shares in the sharechain plus a few. If the sharechain is 8460 shares long, this means that p2pool needs to store at least 8460 shares in its sharechain. In practice, p2pool stores about 2x as many shares as that, so the sharechain length is typically around 16,000 shares in length. Each share references each transaction in the block that that share would have made, using somewhere between 2 bytes (in my lowmem branch for transactions that have been included in previous shares) and 70-ish bytes (for new transactions, including Python's object overhead). With roughly 2000 transactions per share, that turns into about 10 kB (lowmem) to 50 kB (p2pool master) per share, or 160 MB (lowmem) to 800 MB (master) of memory consumption. Multiply those numbers by something like 4 if you're using pypy.

There are also some minor CPU usage costs on sharechain size when processing shares (e.g. calculating payouts for the coinbase), but they're mostly alleviated by using a skiplist in the work-done-by-user calculations.

I would like to strip all transaction data out of the share data structure in the share chain in order to cut this memory footprint issue and reduce the CPU requirements for processing shares, but until that is done, increasing the share chain length is a bad idea.

The coinbase transaction would not change much in size for typical p2pool use because it almost always contains at least one share per active p2pool user anyway. A single ASIC miner is generally able to mine more than one share per 3 days (the current PPLNS length target).

The coinbase transaction size is not currently a significant problem for p2pool, as it only takes up a few kB once every few weeks. If p2pool grew bigger and if blocks got more frequent, it could make sense to pseudorandomly determine which users get paid out from each block, or to keep a separate balance state for each user that is independent from the payouts, and make payouts only when that balance state exceeds some reasonable threshold.

Quote
I'm thinking of ways to reduce variance of p2pool. You could also reduce variance by reducing the share interval, but its already 30 seconds and reducing it further would increase stales more I suppose.
It is also possible to change the share difficulty on a per-user basis, so that large miners make fewer shares per PH than small miners. However, there's currently a design flaw in p2pool's head selection algorithm (the thing that determines which share gets orphaned when there is competition) that disincentivizes the voluntary creation of high-difficulty shares, so that would need to be fixed first. See https://bitcointalk.org/index.php?topic=18313.msg19248232#msg19248232 for a discussion of that issue plus a few other related fairness issues.

But the main source of variance is block variance from p2pool's low hashrate. The two main reasons for p2pool's low hashrate are the fairness problems and the (related) performance problems. We lost 10 PH/s from whortonda a couple months back because he was getting high DOA rates and earning about 3% less than most others on the pool.

Quote
Is there somewhere to check whether larger miners are setting their share difficulty too high? That it negatively affects small miner's variance.
You can go onto a p2pool node and use the share chain explorer to look at different shares, the difficulty used for that share, the mining address that created it, and the minimum difficulty that p2pool would have allowed for that share if the miner had chosen a low-diff share.

Hosting bitcoin miners for $65 to $80/kW/month on clean, cheap hydro power.
http://Toom.im
Xantus
Jr. Member
*
Offline Offline

Activity: 34


View Profile
August 17, 2017, 04:31:28 AM
 #15708

I've pushed two changes to https://github.com/jtoomim/p2pool/commits/1mb_segwit:

1. Allow mining with clients that do not support all locked-in or active forks (e.g. Bitcoin Core which does not support segwit2x) if p2pool is run with the --allow-obsolete-bitcoind command-line option.
2. Switch back to using time.time() in order to hopefully fix Xantus's "exceptions.OverflowError: mktime argument out of range" error on Windows

Thanks jtoomim,
i downloaded an started now  (before go to work). up to now it looks fine.
lets see this evening ...

update : 9:45pm :
still runs, shares are downloaded i think :
Code:
P2Pool: 17707 shares in chain (10554 verified/17712 total) Peers: 12 (6 incoming)
-> is that ok that only a part is verified ?

oh, and the Local hash rate lock a little bit strange to me, seams because the difficulty for mining engines is very high.
Isn´t that an dynaminc think vor every node his selv harshrate ?
but im on the right p2pool part an back online again ;-)   - thanks so far !
->http://131.117.146.223:9332/static/
jtoomim
Hero Member
*****
Offline Offline

Activity: 731


View Profile WWW
August 17, 2017, 08:06:31 PM
 #15709

Xantus, I see a very high DOA rate on your node, roughly 50%. I suspect your CPU is not fast enough to keep up with the task. You may want to try switching to pypy instead of using Python 2.7. Pypy's CPU usage is about 3x lower than Python 2.7's, although its memory consumption is about 3x higher. I haven't installed Pypy on Windows before, but I expect you'll need to reinstall twisted, zope.interface, and whatever other things you had to install with Python 2.7.

Sorry for not mentioning this earlier; I should have predicted this issue and sent you down the pypy path from the start.

Once I get caught up with getting my p2pool code to support all forks and altcoins, I'll work on cutting down CPU, RAM, and bandwidth requirements for running a node. For the time being, though, we'll need to meet p2pool's high resource requirements with pypy and mid-range hardware.

Other than that, it looks like your node is working.

Hosting bitcoin miners for $65 to $80/kW/month on clean, cheap hydro power.
http://Toom.im
Xantus
Jr. Member
*
Offline Offline

Activity: 34


View Profile
August 18, 2017, 04:47:39 AM
 #15710

Realy CPU usage looks ok to me :
following datas are Peak (i cat this Hardkopies on peaks)




more strange vor me is this dificult think :


but i will test pypy at this weekend, to test it.
jtoomim
Hero Member
*****
Offline Offline

Activity: 731


View Profile WWW
August 18, 2017, 04:51:41 AM
 #15711

You have 2 physical cores, 4 logical cores on your CPU. P2pool is single-threaded, so it can use at most 25% of your CPU (in terms of logical cores). Your CPU is pegged at a little over 25% for the Pythonw (p2pool) process. Your CPU is unable to keep up. Try pypy.

Keep in mind that utilization is a misleading metric. What really matters is latency -- that is, how long, in milliseconds, it takes p2pool to process an incoming share and hand out new work to workers. On my nodes, that's normally around 50 ms to 150 ms on pypy, and 250 ms to 1000 ms on Python. With an average of 30 seconds per share, latency of 1000 ms corresponds to a 3.3% DOA rate. If your CPU is pegged at 100% for one core on the p2pool process, that means that work is queueing up, and before you can process an incoming share, you have to process all the other data that has been flung at your p2pool node before it can process the recently-broadcast share. This can turn 1000 ms latency into 3000 ms latency.

You can think of it like a leaky bucket: if you have a bucket with a hole in the bottom and a faucet pouring into it, you can measure how long it takes for any given drop of water leaving the faucet to make it through the hole in the bottom of the bucket. If the hole is bigger than the faucet, then there will never be much water in the bucket, and the amount of time it takes for a drop to pass through will be small. But if the faucet is bigger than the hole, the bucket will fill up to the top and start to overflow the sides, and it will take very long for drops to make it through the hole, and some drops will never make it at all. Your bucket is overflowing. Some data that gets sent to your node never gets processed, and the data that does gets processed after a substantial delay.

The high difficulty, on the other hand, is normal for p2pool, and not responsible for your high DOA rates. Actually, since you're CPU bound, you would get slightly (but not significantly) better performance with an even higher difficulty, since that would mean your miner would send fewer shares to your node and require less processing on your node. But again, that's not significant.

Go switch to pypy and it should work fine. Or yell at me and get me to make the code faster.

Hosting bitcoin miners for $65 to $80/kW/month on clean, cheap hydro power.
http://Toom.im
Xantus
Jr. Member
*
Offline Offline

Activity: 34


View Profile
August 18, 2017, 11:56:01 AM
 #15712

i dont yell to any one Cool. Because i am thanksfull you talking to my an spend me these time.
i will switch to pypy

by the way, i dont think about these Multicore think  Grin

Edit 18.08.17 - 6PM :
p2pool on pypy is not able to me  Cry. i dont get twistet installed to pypy.
pip is working but i get many error until "pip install twisted"
-> so, if somone does have time to help me please send me an PM (dont want to spam in here)
jtoomim
Hero Member
*****
Offline Offline

Activity: 731


View Profile WWW
August 18, 2017, 06:54:15 PM
 #15713

Post your error so that others can learn from it. You probably aren't the last one who will want to get pypy running on Windows.

You might be using the version of pip bound to python2.7 instead of the version of pip bound to pypy. You may have to install setuptools for pypy (I'm not sure it comes installed by default, unlike Python), or install twisted via a mechanism other than pip or easy_install.

Hosting bitcoin miners for $65 to $80/kW/month on clean, cheap hydro power.
http://Toom.im
Xantus
Jr. Member
*
Offline Offline

Activity: 34


View Profile
August 19, 2017, 12:23:16 AM
 #15714

oky.

so,
1st. I cloned pypy. Downloaded it, extraktet and place it on C:\pypy2-v5.8.0-win32\. Ther was nothing to install, only the pypy.exe.
2nd. I Downloaded get-pip.py and installed it using "pypy.exe get-pip.py". This automatik installation was sucessfull.
     Command "pip list" shows following installet packets now :
     
Code:
certifi (2017.7.27.1)
cffi (1.10.1)
chardet (3.0.4)
greenlet (0.4.12)
idna (2.6)
pip (9.0.1)
readline (6.2.4.1)
requests (2.18.4)
setuptools (36.2.7)
urllib3 (1.22)
wheel (0.29.0)
zope.interface (4.4.2)
3rd. i would like to install Twisted by automatic installation with pip using "pip install twisted"
   that returns :
Code:
C:\pypy2-v5.8.0-win32\bin>pip install twisted
Collecting twisted
  Using cached Twisted-17.5.0.tar.bz2
    Complete output from command python setup.py egg_info:
    no previously-included directories found matching '.travis'
    no previously-included directories found matching 'tests'
    warning: no previously-included files found matching 'examplesetup.py'
    no previously-included directories found matching 'src\exampleproj'
    no previously-included directories found matching 'src\incremental\newsfragments'

    Installed c:\users\x\appdata\local\temp\pip-build-l8fwso\twisted\.eggs\incremental-17.5.0-py2.7.egg
    Traceback (most recent call last):
      File "<module>", line 1, in <module>
      File "c:\users\x\appdata\local\temp\pip-build-l8fwso\twisted\setup.py", line 21, in <module>
        setuptools.setup(**_setup["getSetupArgs"]())
      File "c:\pypy2-v5.8.0-win32\lib-python\2.7\distutils\core.py", line 111, in setup
        _setup_distribution = dist = klass(attrs)
      File "c:\pypy2-v5.8.0-win32\site-packages\setuptools\dist.py", line 325, in __init__
        self.fetch_build_eggs(attrs['setup_requires'])
      File "c:\pypy2-v5.8.0-win32\site-packages\setuptools\dist.py", line 446, in fetch_build_eggs
        replace_conflicting=True,
      File "c:\pypy2-v5.8.0-win32\site-packages\pkg_resources\__init__.py", line 855, in resolve
        dist = best[req.key] = env.best_match(req, ws, installer)
      File "c:\pypy2-v5.8.0-win32\site-packages\pkg_resources\__init__.py", line 1127, in best_match
        return self.obtain(req, installer)
      File "c:\pypy2-v5.8.0-win32\site-packages\pkg_resources\__init__.py", line 1139, in obtain
        return installer(requirement)
      File "c:\pypy2-v5.8.0-win32\site-packages\setuptools\dist.py", line 518, in fetch_build_egg
        return cmd.easy_install(req)
      File "c:\pypy2-v5.8.0-win32\site-packages\setuptools\command\easy_install.py", line 672, in easy_install
        return self.install_item(spec, dist.location, tmpdir, deps)
      File "c:\pypy2-v5.8.0-win32\lib-python\2.7\contextlib.py", line 24, in __exit__
        self.gen.next()
      File "c:\pypy2-v5.8.0-win32\site-packages\setuptools\command\easy_install.py", line 636, in _tmpdir
        os.path.exists(tmpdir) and rmtree(rmtree_safe(tmpdir))
      File "c:\pypy2-v5.8.0-win32\site-packages\setuptools\command\easy_install.py", line 2241, in rmtree
        return shutil.rmtree(path, ignore_errors, onerror)
      File "c:\pypy2-v5.8.0-win32\lib-python\2.7\shutil.py", line 247, in rmtree
        rmtree(fullname, ignore_errors, onerror)
      File "c:\pypy2-v5.8.0-win32\lib-python\2.7\shutil.py", line 252, in rmtree
        onerror(os.remove, fullname, sys.exc_info())
      File "c:\pypy2-v5.8.0-win32\site-packages\setuptools\command\easy_install.py", line 1689, in auto_chmod
        return func(arg)
    WindowsError: [Error 32] Der Prozess kann nicht auf die Datei zugreifen, da sie von einem anderen Prozess verwendet wird: c:\users\x\appdata\local\temp\easy_install-jqgatn\incremental-17.5.0\README.rst

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in c:\users\x\appdata\local\temp\pip-build-l8fwso\twisted\

i also tested to install twisted by downloading the scource, extract it into the lib directory and tried to install it with command "pypy "c:\pypy2-v5.8.0-win32\libs\twisted\setup.py install" the Error outputs was nearby the same.
does someone have an idea wath i do wrong ?
jtoomim
Hero Member
*****
Offline Offline

Activity: 731


View Profile WWW
August 19, 2017, 12:37:49 AM
 #15715

The file cannot be accessed because it is being used by another process? Maybe something is running which is using that file, or maybe it crashed uncleanly and left that file open. Try closing everything, rebooting, and trying again?

Hosting bitcoin miners for $65 to $80/kW/month on clean, cheap hydro power.
http://Toom.im
Xantus
Jr. Member
*
Offline Offline

Activity: 34


View Profile
August 19, 2017, 08:22:27 AM
 #15716

The file cannot be accessed because it is being used by another process? Maybe something is running which is using that file, or maybe it crashed uncleanly and left that file open. Try closing everything, rebooting, and trying again?

Reboot done. same problem. i also retryed to install it again manualy by downloading twisterd-17.5.0.tar.bz, extracting direkt to pypy directory and running setup.
here is the output :
Code:
C:\pypy2-v5.8.0-win32>pypy C:\pypy2-v5.8.0-win32\Twisted-17.5.0\setup.py install
Traceback (most recent call last):
  File "C:\pypy2-v5.8.0-win32\Twisted-17.5.0\setup.py", line 17, in <module>
    with open('src/twisted/python/_setup.py') as f:
IOError: [Errno 2] No such file or directory: 'src/twisted/python/_setup.py'

C:\pypy2-v5.8.0-win32>pypy C:\pypy2-v5.8.0-win32\Twisted-17.5.0\setup.py
Traceback (most recent call last):
  File "C:\pypy2-v5.8.0-win32\Twisted-17.5.0\setup.py", line 17, in <module>
    with open('src/twisted/python/_setup.py') as f:
IOError: [Errno 2] No such file or directory: 'src/twisted/python/_setup.py'
interesting here ist that "src/twisted/python/_setup.py" is there ... is not missing !?
but wath du tell me these line : "with open('src/twisted/python/_setup.py') as f:"  i do have no disk drive f:
jtoomim
Hero Member
*****
Offline Offline

Activity: 731


View Profile WWW
August 19, 2017, 10:39:50 PM
 #15717

I tried installing pypy/p2pool on Windows a try myself, and while I got a bit farther than you did by installing twisted from source, I eventually ran into a roadblock because twisted requires pywin32 on Windows and pypy does not support pywin32.

However, I had better luck when I tried to run p2pool with pypy on the Windows Subsystem for Linux (Ubuntu for Windows). If you have Windows 10, I suggest you give that a try:

https://msdn.microsoft.com/en-us/commandline/wsl/install_guide

Once you have Ubuntu for Windows installed, run bash and then copy-paste these lines into your bash command line:

Code:
sudo apt-get install pypy pypy-dev gcc build-essential git

wget https://bootstrap.pypa.io/ez_setup.py -O - | sudo pypy
sudo rm setuptools-*.zip

wget https://pypi.python.org/packages/source/z/zope.interface/zope.interface-4.1.3.tar.gz#md5=9ae3d24c0c7415deb249dd1a132f0f79
tar zxf zope.interface-4.1.3.tar.gz
cd zope.interface-4.1.3/
sudo pypy setup.py install
cd ..
sudo rm -r zope.interface-4.1.3*

wget https://pypi.python.org/packages/source/T/Twisted/Twisted-15.4.0.tar.bz2
tar jxf Twisted-15.4.0.tar.bz2
cd Twisted-15.4.0
sudo pypy setup.py install
cd ..
sudo rm -r Twisted-15.4.0*

git clone https://github.com/jtoomim/p2pool.git
cd p2pool
git checkout 1mb_segwit

Those commands should also work if you're on native Ubuntu or Debian Linux

You'll also need to install and run your bitcoind of choice (I recommend btc1, because I think segwit2x is the future of Bitcoin) and edit ~/.bitcoin/bitcoin.conf with your bitcoind's RPC username and password (or pass it to p2pool from the pypy run_p2pool.py command line), then from your p2pool directory, run

Code:
pypy run_p2pool.py

Hosting bitcoin miners for $65 to $80/kW/month on clean, cheap hydro power.
http://Toom.im
sawa
Legendary
*
Offline Offline

Activity: 1028



View Profile
August 19, 2017, 11:24:52 PM
 #15718

I recommend btc1, because I think segwit2x is the future of Bitcoin...
Is it its source code?: https://github.com/btc1/bitcoin

frodocooper
Full Member
***
Offline Offline

Activity: 122


View Profile
August 19, 2017, 11:44:14 PM
 #15719

You'll also need to install and run your bitcoind of choice (I recommend btc1, because I think segwit2x is the future of Bitcoin) and edit ~/.bitcoin/bitcoin.conf with your bitcoind's RPC username and password (or pass it to p2pool from the pypy run_p2pool.py command line)...

In addition, I highly recommend adding the following two lines to your bitcoin.conf:

Code:
blockmaxsize=1000000
blockmaxweight=4000000

This enables your P2Pool node to mine full blocks. I'm not sure if btc1 changed its defaults, but on Bitcoin Core the default blockmaxsize and blockmaxweight values are 750 kB and 3 MB respectively, meaning that if you left your bitcoind to its defaults, your P2Pool node would be mining artificially smaller blocks.

If you decide to use the btc1 (SegWit2x) client, simply double the above values after the 2x hard fork.

Also, I highly recommend connecting your bitcoind to the public FIBRE network. This helps your bitcoind to be notified of new blocks as quickly as possible. And if your P2Pool node finds a new block, this helps propagate the newfound block to the Bitcoin network as quickly as possible, reducing the chances of that newfound block being orphaned.

Instructions for connecting your bitcoind to the public FIBRE network can be found here.



I recommend btc1, because I think segwit2x is the future of Bitcoin...
Is it its source code?: https://github.com/btc1/bitcoin

Yes.
jtoomim
Hero Member
*****
Offline Offline

Activity: 731


View Profile WWW
August 20, 2017, 12:23:28 AM
 #15720

Is it its source code?: https://github.com/btc1/bitcoin
And binary releases are here: https://github.com/btc1/bitcoin/releases

Hosting bitcoin miners for $65 to $80/kW/month on clean, cheap hydro power.
http://Toom.im
Pages: « 1 ... 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 [786] 787 788 789 790 791 792 793 794 795 796 797 »
  Print  
 
Jump to:  

Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!