xmr-node-proxy icon indicating copy to clipboard operation
xmr-node-proxy copied to clipboard

How to configure this proxy to support the algo-auto-switching feature of MoneroOcean?

Open CrazyBoyFeng opened this issue 4 years ago • 5 comments

Can this proxy auto select the max-profit-algo for the miners (such as xmrig) based on the calibration/benchmarking of miners?

"pools": [
    {
      "hostname": "gulf.moneroocean.stream",
      "algo": "cn/r",
...
    },{
      "hostname": "gulf.moneroocean.stream",
      "algo": "cn/heavy",
...
    },{
      "hostname": "gulf.moneroocean.stream",
      "algo": "cn/gpu",
...
    }
  ],

Is this right?

CrazyBoyFeng avatar Sep 08 '19 07:09 CrazyBoyFeng

  "hostname": "gulf.moneroocean.stream",
  "algo": "cn/r",

after worker connect

proxy send to pool all supported algo and power

then pool calculate more profitable algo

1|proxy | 2019-09-08 20:38:28:825 +03:00: Setting common algo: ["cn/1","cn/2","cn/0","cn/xtl","cn/msr","cn/xao","cn/rto","cn/half","cn/wow","cn/r","cn/rwz","cn/zls","cn/double","cn-lite/1","cn-lite/0","cn-heavy/0","cn-heavy/xhv","cn-heavy/tube","cn-pico/trtl"] with algo-perf: {"cn":16687.24464416504,"cn/2":17570.07363319397,"cn/half":15147.876152038574,"cn/gpu":959.2593493461609,"cn/r":15626.660610198975,"cn/rwz":21301.646564483643,"cn/zls":22151.784564971924,"cn/double":3143.9067707061768,"cn-lite":20929.852138519287,"cn-heavy":3882.754291534424,"cn-pico":89507.46105957031} for pool XMR

qutimqqcom avatar Sep 08 '19 17:09 qutimqqcom

  "hostname": "gulf.moneroocean.stream",
  "algo": "cn/r",

after worker connect

proxy send to pool all supported algo and power

then pool calculate more profitable algo

1|proxy | 2019-09-08 20:38:28:825 +03:00: Setting common algo: ["cn/1","cn/2","cn/0","cn/xtl","cn/msr","cn/xao","cn/rto","cn/half","cn/wow","cn/r","cn/rwz","cn/zls","cn/double","cn-lite/1","cn-lite/0","cn-heavy/0","cn-heavy/xhv","cn-heavy/tube","cn-pico/trtl"] with algo-perf: {"cn":16687.24464416504,"cn/2":17570.07363319397,"cn/half":15147.876152038574,"cn/gpu":959.2593493461609,"cn/r":15626.660610198975,"cn/rwz":21301.646564483643,"cn/zls":22151.784564971924,"cn/double":3143.9067707061768,"cn-lite":20929.852138519287,"cn-heavy":3882.754291534424,"cn-pico":89507.46105957031} for pool XMR

Thanks. I have a try and find the proxy always switch all the miners' algo together. This is not smart. It is unreasonable to use the rx-algo on a small RAM machine.

CrazyBoyFeng avatar Sep 13 '19 08:09 CrazyBoyFeng

Is the above bug true? Why would it not coin-switch on a per-miner basis just like the upstream pool?

Spudz76 avatar Sep 18 '19 15:09 Spudz76

Is the above bug true? Why would it not coin-switch on a per-miner basis just like the upstream pool?

Because It simply adds up all the miners' algo-perf data as the proxy's. See: https://github.com/MoneroOcean/xmr-node-proxy/blob/cfd9119091fb10a24cd538a7c8103d7954965497/proxy.js#L698

I think it works by uploading algo-perf data then letting the pool decide what algo-job sent to miners/proxies. The proxy just receives jobs and assigns to the miners. If we want smarter proxies, we need to ask the (MoneroOcean) pool for improvement on the extend stractum protocol to send the coefficient of algos to miners/proxies.

CrazyBoyFeng avatar Sep 18 '19 17:09 CrazyBoyFeng