Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add pool mining screen #368

Merged
merged 2 commits into from
Jan 14, 2017

Conversation

moneromooo-monero
Copy link
Contributor

Wa want to make it easy for people to mine

@ghost
Copy link

ghost commented Dec 28, 2016

Tried on OSX 10.12.2. If I click "Start poolMiner" it tries to start but fails with no log output. Also it could use a right side margin.

screen shot 2016-12-28 at 5 12 48 pm

@ghost
Copy link

ghost commented Dec 28, 2016

Personally, I don't like this feature, and feel we shouldn't include it. Pool mining is the one page in the wallet where we're suddenly relying on a third party. What qualifies a pool to be added to this list? Certainly cryptmonero.com isn't included since this pool is tied to Reddit-reported malware mining. So there is already a distinction between good and bad pools, and suddenly our devs are tasked with making that distinction. Suddenly our work begins to grow exponentially, especially if XMR really takes off and a hundred new pools appear and have to be evaluated. Who does the evaluating and what is the criteria?

Suddenly pool operators have an incentive to get in good graces with XMR devs? Already we can see MoneroWorld (where I personally mine, so I love it there) is at the top of the list?

What if one of the listed pools gets hacked, malware, or leaks private data? Are we partly responsible / could be sued? We have to wait for a whole release before we can change the code away from an adversarial pool?

This is not decentralized, and thus sort of goes against the spirit of The Monero Project.

I'm a big fan of adding a solo smart miner to the wallet. Not a fan of this.

@moneromooo-monero
Copy link
Contributor Author

Yes, I don't really like it either, unless it's an optional plugin. It just seems to be a lesser evil than dwarfpool at > 50% hash rate. Other opinions welcome.

@moneromooo-monero
Copy link
Contributor Author

In fact, I'll add solo mining too. Tomorrow :)

@moneromooo-monero
Copy link
Contributor Author

The latest patch removes the default pool list, and adds a "load from file" button.
We may still have to provide a default though, for ease of use. We'll see.

@expez
Copy link

expez commented Dec 29, 2016

'load form file' seems very cumbersome. Why not just let people copy/paste the pool address into the GUI directly, instead of editing a file (and then re/loading the file to pick up changes)?

@moneromooo-monero
Copy link
Contributor Author

Because you're not really supposed to enter URIs directly. There will probably be a default pool file, loaded at startup. Most people will likely then just select a pool (or keep on automatic). Third parties can make/maintain their own pool list that people can download/import. The intent is that the control of the pool list is not solely on the devs', er, control.

@ghost
Copy link

ghost commented Dec 29, 2016

Will this be amended if/when a future universal p2pool miner is implemented?

@moneromooo-monero
Copy link
Contributor Author

Solo mining is now in (not smart mining yet obviously)

@moneromooo-monero
Copy link
Contributor Author

The last commit needs monero-project/monero#1513

@moneromooo-monero
Copy link
Contributor Author

moneromooo-monero commented Dec 29, 2016

Also, for the time being, the pools list is empty.
To test or use, place wolf's minerd in the same place as monero-wallet-gui, and place the following in a file, and load that with the load button:

moneroworld: stratum+tcp://drill.moneroworld.com:7777
monerohash.com: stratum+tcp://monerohash.com:7777
poolto.be: stratum+tcp://xmr.poolto.be:3000
supportxmr.com: stratum+tcp://pool.supportxmr.com:5555
xmrpool.eu: stratum+tcp://xmrpool.eu:5555
prohash.net: stratum+tcp://xmr.prohash.net:2222

@ghost
Copy link

ghost commented Dec 29, 2016

OSX 10.12.2

I built it (included #1513), built MinerD from here and added it to the directory, and also added pools.txt containing the list above. Loaded the wallet, then the daemon, and navigated to Advanced > Mining.

Noticed the Monero Solo Mining tool had already started? Watching it, I noticed the solo miner was starting and stopping. The "Start Mining" button would depress and it would say "Status: mining at 0 H/s" at the bottom. Then the "Stop Mining" button would depress and it would say "Status: not mining." I also turned on my Mac resource monitor and noticed that there was no excess CPU load.

I also loaded the pools.txt file and clicked "Start poolMiner" but it again didn't do anything and there was no output in the log.

Here's the daemon log-level 1: https://paste.fedoraproject.org/514809/48303598/

screen shot 2016-12-29 at 1 24 32 pm

@ghost
Copy link

ghost commented Dec 29, 2016

@moneromooo-monero
Copy link
Contributor Author

Have you built the node with monero-project/monero#1513 ? This is needed for solo mining,
As for pool mining, any error in the GUI output ?

@moneromooo-monero
Copy link
Contributor Author

And did the pool list fill up after you loaded it ?

@Hueristic
Copy link

What about separate releases? The one with the integrated pool release add the stratum and have the default local, therefore to change from mining on a local pool the user would have to enter one them self or just as easily add their pool to the list (maybe setup and auto msg to irc for the new pool to announce and scrape it?).

@antanst
Copy link

antanst commented Dec 30, 2016

Imho the pool list should not be populated by default. Doing so may be considered as an official endorsement; it also encourages centralization to specific pools.

@iamsmooth
Copy link

Yes, I don't really like it either, unless it's an optional plugin. It just seems to be a lesser evil than dwarfpool at > 50% hash rate. Other opinions welcome.

I agree with the comment not liking providing a specific pool list in the standard software as it puts the project in the bad position of either acting as gatekeeper on the list or adding bad/scam pools to the list (knowingly or otherwise).

I also don't think this is a useful way to address a particularly pool (dwarf currently, but that's not really the point) having a high hash rate. For one thing, the number of GUI wallet users will likely be much too low to make any real difference in the near term and for another it could easily lead to even more pool concentration in the future as wallet users (when there are a lot) may still choose the largest and best-known pools.

If the project-supported software is going to support mining it should be focused solo mining, which robustly helps the problem of pool concentration and avoids potentially making the problem worse. Serious miners with high hash rate who want to pool mine will find their way to the appropriate software one way or another. I would revise the text to present it as primarily helping the network, and any rewards being secondary. But again given the likely near-term usage of the GUI wallet this likely isn't signifiant either.

Also, as I understand it, there are a few feature-related reasons that dwarfpool is popular. I've seen more than one person mention rig-specific stats and miner downtime notification. It would probably be more useful to pool concentration to add those features to the open source mining software.

@moneromooo-monero
Copy link
Contributor Author

This latest update has only solo mining.

We want to make it easy for people to mine
@moneromooo-monero
Copy link
Contributor Author

Now with wording/layout/error changes when the daemon isn't local, as suggested by smooth

@ghost
Copy link

ghost commented Dec 31, 2016

Similar problem to last time.

OSX 10.12.2

Built with monero-project/monero#1513. Added MinerD from here. Upon loading the wallet, starting the daemon, and letting the sync complete, I navigated to Advanced > Mining. Here the "Start mining" button was already depressed, but "Status: mining at 0 H/s". Then the button would automatically click to "Stop mining" and the new readout would be "Status: not mining". If I tried to click "Stop mining" myself, it wouldn't affect anything.

Here's the log-level2 output: https://paste.fedoraproject.org/515725/83141887/

See line 2703:

2016-Dec-30 18:46:29.543597 [RPC0]HTTP [127.0.0.1] GET /stop_mining
2016-Dec-30 18:46:29.543722 [RPC0]Miner has received stop signal
2016-Dec-30 18:46:29.543752 [RPC0]Not mining - nothing to stop
2016-Dec-30 18:46:29.543800 [RPC0]/stop_mining processed with 0/0/0m

Edit: I rechecked the resource monitor and a 1 thread miner does seem to be running (task labeled: "bash"). But the hash rate isn't listed on the GUI and it doesn't seem start/stoppable within the GUI

@moneromooo-monero
Copy link
Contributor Author

Oops, I'd been using fixes in the GUI VM which I hadn't merged, and forgot. They're now merged in 1513.

@ghost
Copy link

ghost commented Dec 31, 2016

Works great

@ghost
Copy link

ghost commented Dec 31, 2016

Perhaps the gray outline box around the miner can be removed since pool mining was taken away.

@ghost
Copy link

ghost commented Dec 31, 2016

I attempted to start a miner using 521,230,093 threads and the GUI locked up.

screen shot 2016-12-31 at 4 02 33 pm

@iamsmooth
Copy link

iamsmooth commented Jan 2, 2017

I think its okay to leave this under Advanced for now as it is new and not necessarily user friendly (doesn't do any smart mining type things to avoid excessive system load, users won't really know how to set thread count, etc.) but the plan should be to move this out of Advanced and encourage, or a least make easily available, some "help the network" mining for everyone.

@fluffypony
Copy link
Contributor

I don't know whether or not I should merge this or there's more stuff to be done...can I get some input, plz?

@moneromooo-monero
Copy link
Contributor Author

It's solo mining only now, so I think it's OK. I'd forgot about the sanity check xmr-eric mentions, I'll have to look at that before merging though.

@moneromooo-monero
Copy link
Contributor Author

(though the change for this is not in this patch, but in the daemon)

@Jaqueeee
Copy link
Contributor

Jaqueeee commented Jan 9, 2017

just make sure monero-project/monero#1513 is merged also.

Copy link
Contributor

@fluffypony fluffypony left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed

@fluffypony fluffypony merged commit 94e8f3a into monero-project:master Jan 14, 2017
fluffypony added a commit that referenced this pull request Jan 14, 2017
94e8f3a Add mining screen (moneromooo.monero)
1cd7dd6 StandardDropdown: fix for empty model (moneromooo.monero)
@ghost ghost mentioned this pull request Mar 24, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

7 participants