GeForce RTX 3060 Ti

I recently acquired a GeForce TRX 3060 Ti for gaming reasons, and the coworker who helped me find one mentioned that they're very profitable for mining these days. Since I already have the hardware, it seemed like I might as well mine when I'm not gaming. Since mining isn't the purpose of the computer, my goals are somewhat different than hardcore miners', and I thought this documentation could be useful for other casual miners.

Power costs and the environment

I generally don't think mining is a good use of electricity, but it's winter where I live, and I use an electric space heater in my office anyway. Since wasted power just turns into heat, running this computer as a space heater doesn't actually waste any power right now. If I want to continue doing this over the summer, I'll probably try to setup some sort of solar panel / UPS setup, although even with that, it would still increase the work my air conditioner needs to do unless I can vent it outside.

What to mine

I used whattomine to look up the most profitable coin to mine on an RTX 3060 Ti. According to the site, I should be able to make around $6-7 per day profit mining Etherium (see publish date; this is likely to change over time).

Aside: NiceHash

If you want to avoid this and always do what's most profitable, NiceHash effectively automates running the most profitable algorithm (although it actually sells your hashing power to other people in exchange for bitcoins).

Since I'm running this on my primary PC, I'm pretty paranoid, so I'm not willing to run a closed-source program that downloads other closed-source programs and runs them, but if you're not concerned about that, it's definitely the easiest choice. NiceHash OS is also a good choice if you have a dedicated mining rig, since you just boot from a USB drive and it does the rest. NiceHash also automatically "mines" the most efficient coin without any input from you, and it always pays in bitcoins, which may be useful if the most profitable coin isn't something you want.

Etherium mining pools

Back to direct Etherium mining. It's unrealistic to make any money mining alone, since only one miner gets the block reward, and you're vanishingly unlikely to be that miner unless you own hundrds of GPU's. As a casual miner, your best bet is to join a pool, where you all work together and share block rewards.

I looked into a few Etherium mining pools, and the two I saw discussed most were Ethermine and NanoPool. They both charge 1% and seem to have good reviews, so I picked one at random. You may want to ping their servers and pick whichever pool has the closest server (since this will make stale shares less likely).

You can get pool comparisons here:

Best Ethereum Mining Pools for 2021 - PoolWatch.io

Mining etherium

I looked into several mining programs and ended up choosing ethminer, mainly because it's the only open source etherium GPU miner I was able to find, and (as mentioned above) I'm paranoid about closed source mining programs. I also built it from source myself, and looked into the code a little bit while trying to solve some performance issues (this ended up being an issue with CUDA making X11 laggy; it went away when I switched to Wayland).

If you're not concerned about closed source, the consensus seems to be that Phoenix Miner is slightly better.

Etherium deposit address

Before joining a pool, you'll need to get the address of your Etherium wallet so they can pay you. I got mine by logging into Coinbase, choosing "Receive", selecting Etherium, and then copying the address. If you use Coinbase, there are two things you should know here:

  • Make sure you select the right coin type (Etherium and not Etherium Classic). If you pick the wrong coin type, your rewards will be sent to an address you don't own on that network!
  • Be aware that they generate a new address every time you select "Receive" (for privacy reasons). Every address they give you remains valid forever, and mining pools have minimum sizes for payouts, so make sure to pick one address, write it down, and don't change it.

If you're not using Coinbase, get your deposit address however you do that in your software.

Setup ethminer

You can download pre-built etherminer releases here, but I built it myself so I could see what it was doing (and potentially build with optimizations more specific to my machine).

If you want to build it yourself, you can find instructions here.

Start mining

Follow the instructions from EtherMine to start mining:

My command looks like:

SSL_CERT_FILE=/etc/ssl/certs/ca-bundle.crt ./ethminer -U --report-hashrate -P stratum+tls://0xe96f5D09b22725b3aa0E7848E8cDA423d02Af8a3@us1.ethermine.org:5555 -P stratum+tls://0xe96f5D09b22725b3aa0E7848E8cDA423d02Af8a3@us2.ethermine.org:5555

Options

  • -U means mine with CUDA
  • --report-hashrate makes the stats on the EtherMine control panel slightly nicer
  • -P [some url] adds a pool URL. You can and should pass multiple -P options. ethminer will use the first pool address by default and switch to the second if it goes down (and then back to the first one again if the second one goes down). If you're in North America, you should use both us1.ethermine.org and us2.ethermine.org (put whichever has a lower ping first). If there's only one pool near you, consider putting the same pool address twice as a way to trick ethminer into retrying that address forever instead of giving up.

    For Ethermine, I recommend using the stratum+tls protocol on port 5555 to avoid potential man-in-the-middle attacks, although the actual risk is probably fairly low.

    Also, make sure to replace my deposit address with your own, unless you want your workers to mine for me.

  • There are a number of options you can set that might improve performance, but the defaults were good enough for me. Run ethermine -H cu to get a list of all options.

Watch it run

Once your miner has been running for a few minutes, you can monitor it by entering your deposit address in the search box on Ethermine's website.

In my experience, miners don't show up until you submit your first result (a "share"), which can take a while. I'd recommend checking on your miner after about ten minutes to see if anything shows up. Because the process is luck based, you won't really see accurate stats for your miner for a few hours, but give it time and it will get there.

Note that EtherMine only pays out to your deposit address once you reach a certain threshold. For me, it's 0.05 ETH, but it looks like the minimum has gone up to 0.1 ETH since I last checked. You can configure this on the settings page once your worker is detected.

You can also use the settings page to configure a notification if one of your workers goes down.

That's it

Good luck, and may the odds be ever in your favor.