SChernykh / p2pool

Decentralized pool for Monero mining
GNU General Public License v3.0
1.03k stars 124 forks source link

Hashrate losses between Nicehash and p2pool. What settings should be applied to the p2pool ? #245

Closed Paul1804 closed 1 year ago

Paul1804 commented 1 year ago

I have about 5% on the NiceHash statistic. What settings should be applied to the p2pool to reduce losses between the nicehash and p2pool? My command line for p2pool... ./p2pool --loglevel 1 --light-mode --in-peers 10 --host 10.0.0.2 --wallet 47YmJAymcRB69jLsaexS2hFGJe4QKzBLuX47Gj3fKuSa999sJ4bb5f5XEV7yAHJKbs1toqAYHhGUp2CAmf7QsQnAM9FT3Rf --stratum 0.0.0.0:3334 --p2p 0.0.0.0:37888

SChernykh commented 1 year ago

I have about 5% on the NiceHash statistic.

Can you show the screenshot? Because I don't understand what "5%" you're talking about. Please also show the output of status command in P2Pool.

Paul1804 commented 1 year ago

image

image

SChernykh commented 1 year ago

This is delta between "Speed at pool" and "Speed paying". I don't know how exactly it's calculated, but it can be because of luck factor (peers found 5% less shares than expected at this hashrate and difficulty). You also have 1 rejected shares, you should check P2Pool logs for warnings and errors to find this share and why it was rejected. Search P2Pool logs for INVALID SHARE.

Paul1804 commented 1 year ago

INVALID SHARE -pattern not found in p2pool.log file . But I understood everything. Thank's.

SChernykh commented 1 year ago

Ahh, I forgot this commit is not released yet. Then you can also grep your logs for any WARNING or ERROR lines and see if anything sticks out.

Paul1804 commented 1 year ago

I find somethings. What about this ? WARNING 2023-03-22 05:21:18.1813 P2Pool invalid transaction: tx id = eb361c42e50a19224154df85a5560cc596378d376575efdc964845250238eaa2, size = 0, weight = 0, fee = 160.400 um WARNING 2023-03-22 05:21:18.1814 P2Pool invalid transaction: tx id = 362964a7bd698374ea0f3e45d367786ccf52fd187a488aa19590a4926b7100a4, size = 0, weight = 0, fee = 160.400 um WARNING 2023-03-22 05:21:18.1814 P2Pool invalid transaction: tx id = 354265abc9308215a766c686e5cd71418947bbca5ac84e50ec51df25087a9856, size = 0, weight = 0, fee = 158.600 um

...and this... ERROR 2023-03-23 10:56:53.1648 StratumServer failed to get IP address of the client connection, error ENOTCONN ERROR 2023-03-25 21:08:09.1852 P2Pool submit_block: daemon returned error: 'Block not accepted', template id = 22546, nonce = 3305177219, extra_nonce = 1391076012, id = e7dfa1f3cba2195b1f5d1da66136529d2d9871dd1ef55eea33e1ffd35e87e7ed

SChernykh commented 1 year ago

invalid transaction

This transaction is just ignored by P2Pool, it shouldn't affect hashrate

StratumServer failed to get IP address of the client connection

One of your NiceHash miners tried to connect to P2Pool, but failed to connect. This one can affect hashrate because some miners have unstable connection.

daemon returned error: 'Block not accepted'

This is normal, it happens all the time when other miners in P2Pool find their blocks and your node can't submit it because it doesn't have some of their transactions in its own mempool. It doesn't affect your hashrate.

Paul1804 commented 1 year ago

I want to try to miningrigrentals.com take the power for rent. Will the NiceHash settings for p2pool suit? ./p2pool --loglevel 1 --light-mode --in-peers 10 --host 10.0.0.2 --wallet 47YmJAymcRB69jLsaexS2hFGJe4QKzBLuX47Gj3fKuSa999sJ4bb5f5XEV7yAHJKbs1toqAYHhGUp2CAmf7QsQnAM9FT3Rf --stratum 0.0.0.0:3334 --p2p 0.0.0.0:37888

Description on MRR

`This rig is not compatible with low difficulty, please set the difficulty higher than 1000000 This can usually be done on the pool by:

SChernykh commented 1 year ago

You can set user name to x+4000000 in MRR configuration (user name is where the wallet address usually goes). This will fix the difficutly to 4000000. Or you can just run MRR rig as is, because P2Pool has autodiff that starts from 4000000 and then adjusts.

Paul1804 commented 1 year ago

I will rent power there. I have p2pool + monerod . I don’t need to do anything because a p2pool with autodiff. This is true ?

SChernykh commented 1 year ago

I don’t need to do anything because a p2pool with autodiff.

Yes.

Paul1804 commented 1 year ago

Thank you!

SChernykh commented 1 year ago

To rent the NH reseller rigs you will most likely need to send it through xmrig-proxy for it to work.

@xmrvsbeast why is that? Is P2Pool's stratum incompatible?

Paul1804 commented 1 year ago

I have about 5% on the NiceHash statistic. What settings should be applied to the p2pool to reduce losses between the nicehash and p2pool? My command line for p2pool... ./p2pool --loglevel 1 --light-mode --in-peers 10 --host 10.0.0.2 --wallet 47YmJAymcRB69jLsaexS2hFGJe4QKzBLuX47Gj3fKuSa999sJ4bb5f5XEV7yAHJKbs1toqAYHhGUp2CAmf7QsQnAM9FT3Rf --stratum 0.0.0.0:3334 --p2p 0.0.0.0:37888

you will not be able to get any better than -5% delta on NH, they penalize you for sending new work to their miners too often, since p2pool has 10s blocks it sends out new work very often

You are right. This is true. How to overcome this? This is solved as that? tryed use xmrig-proxy for NH ?

Paul1804 commented 1 year ago

I compared MRR vs NiceHash. The Nicehash is cheaper. Is it only visibility?

I will rent power there. I have p2pool + monerod . I don’t need to do anything because a p2pool with autodiff. This is true ?

The high hash rigs on MRR are just reselling Nicehash, you can tell which ones by using the "live" filter. NH resellers are not mining until you rent the rig, then it starts. Regular rigs have active hashrate historically.

To rent the NH reseller rigs you will most likely need to send it through xmrig-proxy for it to work. The normal rigs should work straight to p2pool.

Paul1804 commented 1 year ago

To rent the NH reseller rigs you will most likely need to send it through xmrig-proxy for it to work.

@xmrvsbeast why is that? Is P2Pool's stratum incompatible?

some of my test NH orders... image image image

SChernykh commented 1 year ago

NH is expecting jobs for randomx ~1-2min intervals but p2pool is sending jobs at ~10s

Interesting. But all major pools increased job frequency, so does NH punish them too?

Paul1804 commented 1 year ago

Interesting. But all major pools increased job frequency, so does NH punish them too?

Good questions, I have not tried NH -> reg. pool so I am not sure. I would guess so, but I do not know what NH considers too fast. Maybe they are OK with 30s but not 10s, or they are using some algo.

I do this in order of experiment. But how to do this in the settings p2pool?

SChernykh commented 1 year ago

Job update frequency? It's not a setting, it's defined by P2Pool network consensus (10 seconds block time).

Paul1804 commented 1 year ago

It's clear