NordVPN

Ethereum Mining Guide – for all Operating Systems

Peter Selmeczy

Peter Selmeczy

January 19, 2017

Ethereum mining can be difficult, I know!

However, you shouldn’t worry!

In this guide, I’ve covered everything from the bottom up so whether you’re a beginner or a pro you should be able to glean some useful insight and learn something new.

It doesn’t matter if you’re planning to do mining using Linux, ethOS or Windows. I’ve made sure to cover the steps for each. You will also find some great tips, tricks, optimizations, and solutions to common troubleshooting issues.

If you don’t have time to read all of it today, then bookmark this page, or sign up to our email list and receive it as a free ebook!

Get your Ethereum Mining eBook

We'll send it straight to your inbox.

Newsletter sign up

Get your Ethereum Mining eBook

We'll send it straight to your inbox.

We promise never to share your email address, ever.

If your also interested in privacy then make sure you check out the best vpn services available, or the best VPNs that allow Bitcoin payment! (Unfortunately none accept ETH yet).

Use the index below to jump to the section that interest you the most.

What is Ethereum?

Ethereum is an open blockchain platform similar to Bitcoin but with additional in-built flexibilities. With Ethereum, the blockchain can be considered to be intelligent thanks to the Ethereum Virtual Machine and Smart Contracts. Whereas with Bitcoin it’s a glorified ledger.

Smart Contracts

With Ethereum you can execute code on the blockchain in a distributed way. These are called Smart Contracts. These allow you to set up a system, whereby a person will only receive payment under certain conditions. As Ethereum grows, the scale and complexities of these contracts are expected to increase. Smart Contracts is what has given Ethereum such a solid footing, as like with http://www.gridcoin.us/GridCoin, the blockchain has a functional use.

If you’re interested in about how Ethereum came about and wanted to find out more about it, then watch this YouTube video by COO, Stephan Tual.

Ethereum Mining Profitability

Before you determine if you should go on your Ethereum mining adventure; you’ll need to decide whether it’s going to be profitable or not.

While, on the surface, this is incredibly easy, as I’ll show below, you must be aware that mining is very much like trading. Cryptocurrency prices fluctuate, your equipment might break, and so on. For example, when I started putting this project together, the rough number estimate was that I’d recoup my investment within six months. Now, with the same calculations, it would take eight months. The advantage of mining over trading is that coin prices can be somewhat more stable, and at the end of the day, you’ll still have the equipment. Which, if you’ve chosen wisely, wouldn’t have lost too much of its value.

Ethereum Mining Profitability

Calculate your expected hashrate and Payout

First, you must calculate how much you’re hashing power will be. If you already have some GPUs that you’re planning to use, then you can use Google to find out its hash rate. Alternatively, you can use a site such as CryptoCompare to determine what the best value for money GPU is. However, I’ve not yet found a database with a full list so you may wish to start your own excel file and compare the hashrate you get per dollar spent. GPU prices can also vary significantly, country to country, so make sure you take this into consideration as well.

I’ve chosen to go with the RX480 as it’s expected to give 25MH/s at stock settings with a price of $200. Therefore, I’m paying $8/MHs, and the aim is to get this price as low as possible. Therefore, if you see second-hand GPUs where you’re paying less than that, then they might be worth a high consideration.

Based on your hashrate you can use CoinWarz to calculate your expected payout, this would be 4.2Eth/month at the moment. This is worth approximately $42 at the moment.

Calculate your Electricity Cost

However, once you have your GPU cards, they will need power. Therefore, the second most important factor is how much your card will consume, and how much you’ll need to pay for this. In order, to calculate this, you’ll need to find out how much power it uses and how much you need to pay per KW/h. These are respectively 150W and $0.10 per KW/h for me. To calculate the per hour cost just convert W to kW (by diving by 1000) and multiply together, so for me the rig would cost 0.15*0.1= $0.015/hour to keep alive. This amounts to $0.36/ day or $10.80/month.

Calculate your Profit and Loss, and Return

So now you know how much money your making and how much you’re spending. With the above numbers, I’ll be making $42-$10.80= $31.20 a month with one RX480.

The calculations neglect the electricity used by the other computer components, but these are usually negligible, especially if you have multiple GPUs in a single rig. In my case, I am mining with multiple RX480s, and expect to generate around $200 a month. Since all the equipment cost me $2000, I will break even after ten months, and make $400 profit or 20% by the end of the year.

Grab a great VPN service today

We review VPNs to bring you the fastest and best services

Unlock the internet with a VPN today

Ethereum Mining Hardware

To start mining, all you need is an incredibly simple computer. You will need a mouse, a keyboard and a screen for it as well, but this is only required for the setup, so you should be able to use any existing ones that you may have.

Below, I have outlined the considerations you need to keep in mind when choosing these base component and the popular options for each. You can use a website such as PCPartPicker to ensure that the parts you have chosen will work together. Also, if you’d like you can buy complete CPU, RAM and Motherboard bundles from gpuShack.

Motherboard

The motherboard is the most important aspect to any mining rig. The reason for this is that it needs to be able to support all of your GPUs. If you only plan on having one or two, then it’s not so important. However, most people will aim to maximize and have 6 GPUs in a single rig. There are very few motherboards that will support the running of 6 GPUs. The big advantage with mining is that you can run the GPUs from x1 PCIe slots, so you don’t need to find a motherboard with 6 x16 PCIe slots.

H81 Pro BTC

Since the mining ‘craze’ has started, ASRock has produced motherboard aimed exactly at mining. It’s for this reason that arguably the best, and most popular motherboard to buy is the H81 Pro BTC or the H97 Anniversary.

Other popular motherboards are: Gigabyte GA970, Gigabyte 990FXA, MSI Z97 Gaming 5 and the Biostar TB85. You can also find further recommendations here.

CPU

When choosing the CPU, you only need the bare minimum. I wouldn’t recommend getting the absolute cheapest, but one or two points above. The reason for this, is that some extra processing power is useful when setting up and makes reboots slightly quicker. I chose to go with the Intel Celeron G1840.

RAM

Again, you will need the bare minimum, 4GB will do. I chose to go with 8GB just in case. Also, if you’re going to be doing solo mining, it’s a good idea to have as much as possible at the start as this will make syncing the block chain a lot faster. Of course, once that’s finished, you can remove the excess.

GPU

I’ve outlined choosing the GPU above. Currently, the RX480s are one of the most popular mining cards, but if you look around the Ethereum Forums, you’ll be sure to find plenty of more recommendations.

Radeon RX480

PSU

To calculate the size of the PSU you require you will need to add together the power requirements of all of your components. A site like PCPartPicker will do this for you perfectly. Add 20% on to the required as a safety factor. Also, make sure you’re using a high-quality, well recognized, and high-standard PSU, as if it blows, you could say goodbye to some very expensive equipment.

Harddrive

For the hard drive, using an SSD is essential. While SSDs are more expensive, you will only need a 16GB one, which will set you back less than $30. If you’re planning to solo mine, it’s recommended that you buy a 32 or 64GB one, but again this will only be a few dollars more.

Other Components

Apart from the main components, you will also need GPU risers. I’d recommend getting USB powered 1x to 16x risers, which you can get from Amazon, for a few dollars. With some motherboard models, you will need to short some pins for the motherboard to recognize the riser. You can find a list of these here.

Powered PCI Riser

It’s also recommended that you buy some additional PCIe to Molex (or SATA) connectors so that you can connect the risers to different rails on your PSU. Again, you can find these on Amazon, and will only cost a few dollars.

On the whole, your hardware, excluding GPUs, shouldn’t cost you more than $500, and the large part of this will be your PSU. Below is a recommended purchase list from Amazon. The total without the GPUs comes to $472.21. While with 6 RX480s your total cost would be $1702.15 sans shipping costs.

ASROCK H81 Pro – $89.99
Intel Celeron G1840 – $43.88
Asus RX480 – $204.99
Powered Risers – $49.95
Transcend 32GB SSD – $24.99
Corsair Platinum Certified HX1200i – $224.42
4GB Kingston HyperX DDR3 RAM – $28.99
6pin PCI to SATA adapter – $9.99

Ethereum Mining Guide

So now that we have covered profitability and hardware, it’s time to get mining.

However, even with mining, there are three important considerations to make: operating system, solo or pool, and mining software.

Which OS to choose?

When it comes to choosing your Ethereum mining operating software, there are three main contenders: Windows, Linux, and ethOS. If you’re a Mac fanboy, it is possible, but it’s advised for numerous reasons.

Windows

If you’re used to Windows and haven’t ever gone near Linux, then stay with Windows. If you’re planning on using 6 GPUs, then Windows 10 is recommended as it has support built in naturally. Windows 7 & 8 will require some playing around with. If you are used to command line style systems, and mining will be the only aim of the rig, then I’d highly recommend looking at ethOS.

Additionally, Windows has the benefit of more universal support and generally speaking, better overclocking tools. Furthermore, accessing it is an absolute ease with something like TeamViewer. It does have the downside of slightly more complicated setup but nothing too difficult, especially if you don’t plan on tweaking the GPUs performance.

Furtheremore, if you’re only looking to mine Ethereum as a hobby with your normal PC, then MinerGate allows you to do this extremely easily.

ethOS

ethOS is a stripped down version of Linux (Ubuntu 14.04 to be specific) that has the simple aim of mining Ethereum (and a few other cryptocurrencies). Not only is it incredibly easy to set-up, but it’s also easy to use and maintain. I’ve also noticed that it runs more optimally than Windows. It does have the downsides that you won’t be able to use your rig for much else, but most people don’t tend to anyway. Furthermore, remote access is only through SSH so you should be comfortable with not having a GUI. However, for $39, it’s a no-brainer in my opinion.

ethOS Home

Linux

Some mining enthusiast swear that Linux is the best operating system for mining. While this did use to be the case, there are stronger disagreements on the topic then previously. While I do prefer Windows, Linux does have it’s advantages and being a slimmer system it can have its upsides. Furthermore, Windows usually comes with a price tag, so if you’re looking for a free option, then Linux is the one for you.

Solo vs. Pool Mining

When it comes to cryptocurrency mining, the situation is very similar to a real mine when you consider each GPU to be a person that is mining.

Solo Mining

Solo mining is when you mine by yourself. The advantage of this is that anything you find is completely yours to keep. Unfortunately, if you only have a few miners it might take a very long amount of time to find “gold.” Furthermore, the frequency of finding gold can also vary extensively. You may have a week where you hit gold thrice, but then nothing for a whole month. Clearly, if you have a lot of miners (GPUs), then the outcome will be more stable, but below 1GH/s mining rate, Solo mining is not advisable if you want a stable return. If you’re not worried about shifts in when you find Eth, then Solo mining is a good option above 100Mh/s as you do not need to pay fees to anyone.

Pool Mining

With Pool mining, many miners join forces to try and find the coin. The found coins are then equally distributed between the miners, though with some pools the ratios can vary on a few factors. However, you do need to pay a small fee (usually less than 1%) to the pool operator for maintaining the service. The upside is that you’ll have consistent payout and thereby make money related calculations more accurate.

If you’re reading this guide, you probably want to mine on a single rig, so I’ll primarily cover Pool mining, but will touch upon Solo mining as well.

Ethereum Mining Pool

Ethereum Mining Pools

  1. http://ethereumpool.co/ – 0.8% fees. Payouts released 2 times a day for balances higher than 0.5 ETH.
  2. http://dwarfpool.com/ – 2% fees. Payouts released 4-6 times a day for balances higher than 1 ETH.
  3. http://weipool.org/ – 0% fees. Payouts released every 24 hours for balances higher than 1 ETH.
  4. http://ethpool.org/ – Predictable Solo Mining pool. 0% fees. Payouts after 10 confirmations. More info on @dr_pra comments below.
  5. http://nanopool.org/ – PPLNS 1% fees. Payouts released 2 times a day for balances higher than 0.1 ETH.
  6. https://www.alpereum.ch – 0% fees. Payout every 30 minutes for balances over 0.2ETH.

Requires registration

  1. https://eth.suprnova.cc/ – 1% fees. Payouts are up to the miner (Manual or Automatic from 0.01 ETH).

Mining Software

Going back to the analogy of real-world mining, in cryptocurrency mining you can use different tools to find the gold, so-called mining software. Each mining software has evolved over the years, but some have developed more than others. The primary contenders for Ethereum mining are Claymore and Genoil.

Geth

Geth is the original software from the Ethereum team. If you wish to solo mine, this will be your best option. It’s simple and straightforward to use. It can also create your wallet for you, but as discussed below, you should get Mist/Ethereum Wallet as well if you prefer a GUI option.

MinerGate

MinerGate isn’t recommended if you plan to have dedicated mining rigs. If, however, you wish to mine on an existing computer as a hobby, or out of interest, it’s perfect.

While it does take a fee from your mining, it’s GUI is quick and simple to use and once install you can be mining instantaneously. It also has some challenges that encourage you to mine, and if you’re an absolute beginner, then the simplicity of this software will have you jumping for joy. If simplicity is something you prefer, then NiceHash is also a very solid option.

Genoil

Genoil is a continually developing and very optimized miner for Ethereum. It runs smoothly, and you can get up and running with it very quickly. Personally, I’ve had a few issues with DAG generation, but a few tweaks quickly solved this. If you’re only planning on mining Ethereum, then Ethminer by Genoil is a strong contender.

Claymore

Personally, I’ve found Claymore to be the strongest and best all round miner. It’s easy to set up, I’ve never had any issues with it, and it has a ton of added functionality (e.g. fan management), that I haven’t seen with other miners. It also has the bonus that it can mine two coins at once, which some people have found very useful to optimize their income. There have been reports of anywhere between 3 and 10 percent extra income.

Claymore Mining Windows

For each operating system, I will give the setup instructions for the preferred miner.

Ethereum Wallet

Once you start mining, you will also need to keep your Ethereum in a safe location. This is possible in two ways, a local wallet or an online wallet. A local wallet, has better safety as it always remains in your control. However, if you do use a local wallet, then either install it on a computer that’s not your miner or regularly transfer funds elsewhere. The reason for this is that should your computer crash; it could be hard to recover any Ether that is kept on there.

Mist / Ethereum Wallet

Mist and Ethereum Wallet are the official developments by the Ethereum team. While at the heart of it it’s straightforward to use, it does pack a lot of extra features. Since it’s integrated with ShapeShift, you can also accept payments from Bitcoin other altcoin accounts as well. It also allows you to develop Ethereum based apps and services – a.k.a. Smart Contracts.

Mist Ethereum Wallet

Geth (with Etherwall)

Geth is the underlying code for the Mist wallet and is the core service for syncing the Ethereum blockchain. Unfortunately, it is a command line service, which can make it hard and annoying to use. http://www.etherwall.com/Etherwall adds a GUI front-end to it, making it easier to use.

My EtherWallet

MyEtherWallet is an open-source client-side Ether wallet running on Javascript. MyEtherWallet makes it easy to create secure wallets without the command line or the need to run an Ethereum client on your computer. By running MyEtherWallet on an offline computer, you can create secure paper wallets for your ether holdings.
Ethereum-Wallet.net is a similar development that is also worth taking a look at.

Poloniex and Kraken

Poloniex and Kraken are online cryptocoin trading platforms. You can use the deposit addresses there to transfer any Ether you make directly there.

Windows

So now that I’ve discussed all the prerequisites, here are all the steps that you will need to start mining on Windows.

1. Install Windows and C++ Redistributables

This is pretty much a given. However, I thought I would mention it as it’s always best to start off with a clean installation. If you’re using more than 4 GPUs, then I’d recommend using Windows 10, or you will need to do some tweaks. If you’re going to use Windows 7 or 8, then also install the 6xGPU Mod software. An important fact to remember with fresh installations is that you should disable your computer from ever going to sleep or hibernating.

You will also need to install the C++ Redistributable Packages for Visual Studio.

2. Download Drivers and Packages

Download the drivers and control packages for your GPUs. While it is possible to have a rig with both Nvidia and AMD GPUs, this is ill-advised as it can lead to several issues.

For NVidia install the 347.52 driver and the latest OpenCL CUDA package, which is CUDA 8.0 at the time of writing.

For AMD,  install Radeon Software Crimson Edition 15.12 and the OpenCL SDK Package. Depending on your GPU, this might not be the correct driver. So if you’re having issues, check the Ethereum Forum for advice.

3. Install Additional Software

Before you start mining, it’s recommended that you install some additional software that will help monitor and optimize the performance of your system.

Display Driver Uninstaller. DDU helps create clean uninstalls of display drivers. This can help if you are having issues with the video drivers. In Windows 10 it also disables the automatic display driver updates that can cause compatibility and mining issues.

GPU-Z. GPU-Z is a tool for monitoring the stats of your GPUs and displaying core details about it. You can easily plot the stats, and log/export them should you wish to.

TeamViewer. If you’re planning on remotely accessing your rig to monitor it and control it, then the free version of TeamViewer will be the easiest to use.

Overclocking Tool. If you’re planning to optimize the performance of your rig (which you should be), it’s recommended that you get an overclocking tool of some kind. Most GPU manufacturers will provide one for you to use. Also, depending on which mining software you will use, you will need it to control the fan speed on the GPUs. Furthermore, AMDs new WattMan has proven to be a very well designed software tweaking your GPU settings.

WattMan

4. Set-up your Wallet

Decide on which service you will like to use for your wallet, and sign up to it. I’ve created a Poloniex account, as I plan on doing some trading with the Ether I mine to try and further increase my profits. Make a note of your address. It should look something like this: 0x7b5eff562ee17b9e27a7af6afc26944266c8b025.

Poloniex Wallet

If you want a local address, then download the Mist wallet, let the blockchain sync and create your account there. Alternatively, download Geth, and save it to a folder such as C:Ether. Then type “geth account new“. Whichever method you go for, make sure that you save your password with a secure software such as KeePass.

5. Set-up Geth (Optional for Solo Mining)

If you’d like to Solo mine, you will need to be in sync with the blockchain. To do this, you will need to download Geth and save it to a folder such as C:Ether. Then open a command prompt, and navigate to this folder using the cd command. First, if you’re not using a local wallet, you will need to sync the blockchain. The quickest way is using the command:

geth --fast --cache=1024 --jitvm console

The cache value is the amount of RAM you have, 1GB in the example above. The more RAM you have, the faster you can sync the blockchain.

In Notepad create a file with the below text and save it as a gethsync.bat, in your Ether folder. Launch this bat file every time before you start mining. You can also create a shortcut to it on your homescreen.

geth --rpc

6. Set-up your Miner

For Windows, the Genoil miner has proven to be the most effective, and I’ll show you how to set this up. However, if you’re interested in other alt-coins, then you should also consider looking at Claymore miner.

Once you have downloaded Genoil, save and extract it to a suitable folder, e.g. C:Ether.

Open Notepad and create a file called genoil.bat with the following text, in the same folder. These settings will optimize your mining capability and launch the mining itself. Make sure to replace the pool and wallet address by what you’re using. If you’re Solo mining, then replace the last line by using the command “ethminer.exe -G”.

setx GPU_FORCE_64BIT_PTR 0
setx GPU_MAX_HEAP_SIZE 100
setx GPU_USE_SYNC_OBJECTS 1
setx GPU_MAX_ALLOC_PERCENT 100
ethminer.exe -F http://us-west1.nanopool.org:8888/your_wallet_address_here -G --farm-recheck 200 --cl-local-work 256 --cl-global-work 8192

Launch genoil.bat, and you will start mining. Every time you start it, there will be a small while where the system will say 0Mh/s as your hashrate. Do not worry. Usually, this means that your DAG file is still being generated. The more GPUs you have, the longer it will take.

7. Monitor your Rig

Once you’re mining, make sure you watch your rig. The first 24-48hours are essential and will determine if your system is stable or not. If it runs without problems during that period, then you should be fine. I’d recommend staying within reachable distance of your rig during this time as all sorts of issues can occur, and if you’re extremely unlucky, you could end up burning a building down.

You can remotely keep an eye out on your rig by checking it’s hashing status on the pool of your choice and also by logging in using TeamViewer.

8. Improving Performance

If you wish to improve your hash rate, then read the section on this at the end.

Ubuntu

1. Install Ubuntu 16.04 and the AMD Driver.

Download Ubuntu 16.04 and install it. Once you’re set up, download the AMDGPU-Pro driver, unzip and install that as well.

2. Install the Ethereum Software

First, you will need to add the repository. Use the commands below for this.

sudo apt-get install software-properties-common

sudo add-apt-repository ppa:ethereum/ethereum sudo apt-get update

Now install the software preferred Ethereum software, the miner, and Geth. These will help you with syncing with the blockchain and then starting to mine.

sudo apt-get install ethereum

sudo apt-get install ethminer sudo apt-get install geth

If you’d like, you can use Geth to create your wallet, but as discussed previously it’s more ideal if you use an online wallet.

3. Benchmark and start mining

You can now test that your rig is mining using the first command, and then start mining using the second. It’s a simple as that. If you want to use a pool different to Nanopool, then, of course, replace it with your chosen one.

ethminer -G -M
ethminer -G -F http://eth-eu1.nanopool.org:9999/0x --farm-recheck 200

If your having an issue with one of your miners, you can use the below commands to help you try and find which GPU is the problem

ethminer -G -M --opencl-device x (where x is your GPU id starting at 0)
list--devices (shows all the GPUs you have available)

ethOS

ethOS is possibly the simplest way of setting up a mining rig and is my go-to option when creating a new one. While it does cost $39, the amount of time it saves on troubleshooting is more than worth it. Arguably, it’s also easier and more streamlined to monitor as you can access it simply through SSH or look at your custom dashboard. You can read my review of it here, or head over to gpuShack to purchase it.

1. Purchase, Download and Install ethOS

Once you have bought a license, you will be given a download link. Download it, and install according to their instructions on a small SSD.

2. Initial Boot-up & Set-up

When you first boot it up, you must have a single GPU connected to the x16 slot closest to the CPU. The initial boot up will take a few minutes. Once that’s done, you will need to change the remote and local config files. To help with this, gpuShack has a fantastic knowledge base. Of course, if you haven’t yet, then you will need to get yourself an Ethereum Wallet/ address.

3. Add GPUs

Add each GPU one by one, making sure that the system runs stable each time. By doing so, you’ll ensure that the system recognises each one correctly, and if there are any issues, it will be easier to pinpoint.

4. Monitor your rig

To monitor your rig, you have two options. You can either log in through SSH or look at the generated stats panel. The stats panel has the advantage that it’s a simple web page and you can easily view it from anywhere. SSH poses the advantage, that should you have any issues, you can easily remotely manage the system (as long as you’re happy with Linux command line operations).

5. Improving Performance

If you wish to improve your hash rate, then read the section on this at the end.

6. Tips for ethOS

Change your password: Use the below commands to change both the root, and main ethOS user passwords. This is important especially if you’re planning to remotely access through SSH. Otherwise, your machine could be maliciously taken over.

sudo passwd
sudo passwd ethos

Set up SSH: If you’re going to set up SSH, there are two important things you need to do. Firstly, set up port forwarding on your router, so that traffic redirects to your rig. Secondly, use the below commands, to change the SSH port to something different e.g. 2221. While this won’t stop an attack if there is a port scan, it will reduce the possibility of an attack by a crawler. You can also consider using private & public keys to 100% ensure that only you can access the rig.

sudo nano /etc/ssh/sshd_config

Change the line that says ‘# Port 22’ to ‘Port 2221’, or your prefered port.

Cloud Mining

It is possible to mine Ethereum, using online services such as AWS, or DigitalOcean. However, no-one has managed to make this real-time profitable, and you should only take this root if you don’t wish to build your own rig and want to speculate on the pricing.

There are also Ethereum Mining Contracts such as by Genesis Mining. These companies provide you with your own dedicated mining rig, and you have to pay for this up front. Again, unless you’re speculating heavily on the pricing, these don’t tend to be worth it.

General Tips Improving Mining Performance

Motherboard Settings

In some cases, your motherboard BIOS might not be set-up correctly straight away. If you’re adding your GPUs one by one, and at one point your rig crashes, and you’ve eliminated GPU related issues, then it’s likely that your motherboard is the issue. Have a look around the forums for help, but often you will need a few settings changing. Personally, I’ve had experience with having to disable switch off some BIOS features and altering allocations, but system setups vary largely so I would say Google is your best friend.

Fan and temperature: control and monitoring

Always, always make sure you have a system in place for monitoring your fans and temperature, and you can check on these remotely. If you’re using Genoil, then the system will try and correct itself, and if you’re using ethOS, it will shut down a GPU if there is an overheat issue. However, not all miners are created equal, and if you’re not careful, you could burn your house down. This is one of the reasons why it’s so important to continuously monitor your rig and ensure that it runs stable within the first 24 hours. Also, bare in mind the heat fluctuations during summer and winter months as those few degrees difference can have a huge impact.

Improving Performance

If you wish to improve performance, you have two options: overclocking and custom BIOS. A custom BIOS usually has overclocking built into it, as well as a few other tweaks.

Overclocking: Overclocking is the simpler of the two methods. Windows and ethOS support these easily through Wattman and ethos-overclocking respectively. The general rule of thumb is that increasing the mem clock by 10% increases your hashrate by 10%. You can also change the core clock. However, this has a smaller effect. Also, reducing core clock can be beneficial because it can reduce your power use and while your hashrate will be slightly lower, you could be positive overall as you’ll be using less power. The right core/mem balance will depend on your electricity cost and hashrate.

Custom BIOS. Custom BIOS’ are trickier. While it’s easy to use a tool such as AtiFlash to flash your GPU, bare in mind that it is risky. You will also need to find a BIOS that is suitable for your GPU unless you’re proficient at tweaking it yourself with a tool like PolarisBiosEditor. However, this can have the largest gain. For example, for the RX480 a custom BIOS can raise its hash rate to 30Mhs+ which is a considerable 30% improvement!

Extra Fans. Especially if you have multiple rigs, then make sure you attach some additional fans to your case/ housing. Some people also use normal desk fans or in some cases high-power industrial fans. Check out my copper tube mining rig, to get some creative ideas about how to create a useful but attractive mining rig at the same time!

Ultimate Mining Rig

Ethereum Mining Conclusion

So that’s it. I hope you enjoyed reading this Ethereum mining guide, now go ahead and start building your rig so you can start mining as quickly as possible!

Have any feedback, questions, comments? Let me know in the comments and I’ll make sure to keep this article up to date.

Grab a great VPN service today

We review VPNs to bring you the fastest and best services

Unlock the internet with a VPN today
Peter Selmeczy

I am an engineer by trade and tech geek by night, who's passionate about sharing his knowledge with the people. Find me on Google+.

57 responses to “Ethereum Mining Guide – for all Operating Systems

  1. Claymore’s miner ETH fee removed (Win 64bit only)

    Hello everybody. I would like to share with you my program that will help you get more ETH with Claymore miner.

    You can watch this youtube video where I livestreamed my mining with earlier version of this program for 11hours.
    https://www.youtube.com/watch?v=rrbM0pgavbo

    Now back to Claymore..

    **Features:**
    -Removes fees from miner hence improves your hashrate
    -Autorestart when miner dies
    -Autokill other miners which could be blocking your miner

    **Limitations:**
    -Works only for ethermine.org and nanopool.org
    -Works only on Windows 64bit
    -You won’t get all fees

    The “ethical” issue of this thing..
    If you have problem with this and you think this modification is not ethical. I have to say if Claymore didn’t make milions dollars monthly of your 1-2% fees I would have agreed but in this case NO I don’t think this is problem.
    I doubt he could even notice! Why? Well I left a debug feature for people just like you this feature shows Claymore’s wallets and show them in your miner console. So you can check his wallets and see for yourself how many bitcoins he make daily.
    He has many wallets on many pools here is just one of them there is maybe 30+ of these you can look them up yourself. https://etherscan.io/address/0xc1c427cd8e6b7ee3b5f30c2e1d3f3c5536ec16f5

    **FAQ:**

    **1. Is it scam? virus?**
    No. You can upload the exe to virustotal.com yourself its clean.

    **2. How does it works?**
    This program starts miner process and monitor it. Precisely it monitors wallets on which fees are sent.
    You can set your startup arguments as well as your payout wallet for fees in config file there is no need for .bat files or other scripts.

    **3. How to use it?**
    Place this exe into same folder where you have Claymore miner and run it. It will create a default config for first run so you can test immediately and see if it works. Let it run for 15 minutes and wait for first dev fee.

    **4. How do I know it works?**
    Best way to use it is to use same wallet for normal mining and for fees but set a worker fo your standard payout as for fees you cant set a worker it has to be “default” or “x” worker.
    Simply when your miner starts mining fee and find a share you should see on your pool stats “default” or “x” worker submited x amount of shares.

    **5. Why did you do this?**
    I made it for my own use because I wanted to try if its possible or how hard it would be. It turned out to be doable so I did it and used it for few days myself and then I decided I would share it.
    I have rewrote it to make it useable for all users and make their mining easier. I have added about 60% code to check for stupid things users may do and much better error handling to ensure your mining will be absolutely flawless.

    **6. You wont get all fees?!**
    Yes you won’t get everything initially. I wanted to sell this program first for little donation but over time it started to look like a worse idea. The main issue was that noone want to buy some random program which claims to do xy.
    It would mean that I would have to personally persuade each person to send me a little donation and thats simply not worth those 5-10 dollars I initally wanted. Not at all. So I would take some of these developer fees which you wouldn’t get anyway.

    **7. So what do you get?**
    You will get more the longer you mine. Here is small table with what I get.
    Basically to be honest I want just a little something I dont want to rob you especially if you like this program I want you to use it and profit from it most so in the end I would get one session daily that is 36/72 seconds based on what you mine.

    Mine 2 days = each 10th fee session is on me.
    Mine > 6 days = each 15th fee session is on me.
    Mine > 13 days = each 20th fee session is on me.

    This program show you in real time how many fees were saved and how much time it saved you.
    Now its good time to ask how much mining time you actually lose to Claymore when using it.

    When you mine just ETH you lose 36*24/60 = 14.4mim (daily)
    When you dual mine you lose 72*24/60 = 28.8mim (daily)

    For fist day of using you should get atleast additional 12.5min when mining just ETH and 25min when dual mining.
    NOTE: These numbers are not accurate they are an estimate it yould be off -+10% I chose this values for better readability.

    **8. Where can I get it?**

    Link: https://mega.nz/#!hlMnQZAS!sx2csiozX3uRlsfpsxU45OfUqCWR6bNYE1Ni9QvD_fQ

    VirusTotal: https://www.virustotal.com/#/file/0221b376bd67486abe4a2cd20008327a3077723e384d86b7e16560f830020023/detection

    You can donate me with any amount of ETH if you like my powerplay mods or this program I would appreciate it very much! Thank you!
    ETH: 0x951B737cc259f5d05286183b75eF8C544B4c3772

    If you have any questions just ask..

  2. Hi, great artical. I’m currently learning all about this and am about to build my rig. I’m planning on using Ethos and have 2 x RX 580 8G and 4 x Nvidia 1070 8G (I’m planning to add more cards over time on my Asrock h110 pro BTC Mobo). My question is this: Can I run this mixture of cards altogether on the current version of Ethos? And will Claymore handle this mixture of cards too?

    1. No, you shouldn’t really mix AMD and NVidia in the first place and last time I checked ethOS was a PITA with Nvidia

  3. thank a lot for your job. this is great.
    i don’t understand how works the Unique payout scheme of ethpool.org.
    if i have a big farm i can get more reward than others ?
    if i have a simple RIG i may mine for weeks without earning anything waiting for my turn to be paid ?
    thank for you help

    1. No with a pool you always get paid that’s the good thing. You lose some due to fees but it’s more constant than solo mining.

  4. I bought, download, installed and update ethOS on my new 8 GPU rig at my friend’s house and it worked perfect for a 3 days for test.
    After I brought it to my house, everything works the same but it can not connect to pool. I tried everything what I know but problem remains the same, rig works but don’t have any hash.
    Does anybody faced this problem?

  5. Please i have no progrMming knowledge and i want to start solo mining with PC, which software would you prefer me to use that is very simple

    1. Minergate if you have absolute none, but they take a large cut so I’d recommend you learn how to use ethminer as described in the guide.

  6. Since this article came out in January how much did the hardware change? Should I be looking for an updated article? Very interested in getting started. Thanks

    1. The RX480 is still very much worth it. So is the 470, 570, and 580. Interestingly the NVidia GTX1070s have also shown to be very good.

  7. Guys is the main point of mining Ethereum to cash out every month or is it not better to mine ethereum and keep it for when the value of ethereum peeks to sell them all at once ?

    1. Up to you to decide. Some spend it all once it’s earnt, some hold on. I keep some and spend some – your choice.

  8. EXCELENT CONGRATULATIONS. FIRST REALLY STRUCTURED AND WELL EXPLAINED PAPER IN CRYPTOMINING AND RIGS. REALLY THANKS!!!!!!

  9. I’m using Genoil as per your guide on Windows with NVidia GT 650M graphics card, 2GB memory.

    When I run genoil.bat, it is stuck at “Received new job …”

    C:\Users\Aniket\Desktop\ethminer-0.9.41-genoil-1.1.7\ethminer-0.9.41-genoil-1.1.7>setx GPU_FORCE_64BIT_PTR 0

    SUCCESS: Specified value was saved.

    C:\Users\Aniket\Desktop\ethminer-0.9.41-genoil-1.1.7\ethminer-0.9.41-genoil-1.1.7>setx GPU_MAX_HEAP_SIZE 100

    SUCCESS: Specified value was saved.

    C:\Users\Aniket\Desktop\ethminer-0.9.41-genoil-1.1.7\ethminer-0.9.41-genoil-1.1.7>setx GPU_USE_SYNC_OBJECTS 1

    SUCCESS: Specified value was saved.

    C:\Users\Aniket\Desktop\ethminer-0.9.41-genoil-1.1.7\ethminer-0.9.41-genoil-1.1.7>setx GPU_MAX_ALLOC_PERCENT 100

    SUCCESS: Specified value was saved.

    C:\Users\Aniket\Desktop\ethminer-0.9.41-genoil-1.1.7\ethminer-0.9.41-genoil-1.1.7>setx GPU_SINGLE_ALLOC_PERCENT 100

    SUCCESS: Specified value was saved.

    C:\Users\Aniket\Desktop\ethminer-0.9.41-genoil-1.1.7\ethminer-0.9.41-genoil-1.1.7>ethminer.exe –opencl-platform 1 –farm-recheck 200 -G -S asia1.ethermine.org:4444 -FS us1.ethermine.org:4444 -O 0x24E2b85Ab3d992D18A44a65A404f2F95b621CF38.BiggerDell –cl-local-work 256 –cl-global-work 8192
    Genoil’s ethminer 0.9.41-genoil-1.1.7
    =====================================================================
    Forked from github.com/ethereum/cpp-ethereum
    CUDA kernel ported from Tim Hughes’ OpenCL kernel
    With contributions from nicehash, nerdralph, RoBiK and sp_

    Please consider a donation to:
    ETH: 0xeb9310b185455f863f526dab3d245809f6854b4d

    Found suitable OpenCL device [GeForce GT 650M ] with 2147483648 bytes of GPU memory
    i 17:32:27|main Connecting to stratum server asia1.ethermine.org:4444
    i 17:32:27|stratum Connected to stratum server asia1.ethermine.org : 4444
    i 17:32:27|stratum Starting farm
    i 17:32:28|stratum Subscribed to stratum server
    i 17:32:28|stratum Authorized worker 0x24E2b85Ab3d992D18A44a65A404f2F95b621CF38.BiggerDell
    i 17:32:28|stratum Received new job #f32036fa
    i 17:32:28|openclminer0 set work; seed: #129656ac, target: #0000000112e0
    i 17:32:28|openclminer0 Initialising miner…
    m 17:32:28|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:28|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:28|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:29|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:29|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:29|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:29|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:30|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:30|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:30|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:30|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:30|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:31|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:31|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:31|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:31|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:31|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:32|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    Using platform: NVIDIA CUDA
    Using device: GeForce GT 650M(OpenCL 1.2 CUDA)
    m 17:32:32|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:32|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:32|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:33|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:33|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:33|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:33|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:33|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    Printing program log

    Creating cache buffer
    Creating DAG buffer
    Loading kernels
    Writing cache buffer
    Creating buffer for header.
    Creating mining buffer 0
    m 17:32:34|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    Creating mining buffer 1
    Generating DAG data
    clEnqueueNDRangeKernel(-4)
    clEnqueueNDRangeKernel(-4)
    m 17:32:34|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:34|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:34|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:34|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:35|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:35|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:35|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:35|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:35|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:36|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:36|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:36|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:36|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:36|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    m 17:32:37|main Mining on PoWhash #f32036fa : 0.00MH/s [A0+0:R0+0:F0]
    i 17:32:37|stratum Received new job #0a03d025

  10. In Windows section, under point 6. Set-up your Miner, you have mentioned for Genoil. Please can you also tell how to use Claymore with a mining pool?

  11. since this was written in January 2017, has there been any updates on recommended drivers for Sapphire RX 470’s?

    I have the following cards:
    3x Sapphire RX 470 4GB OC Reference (Hynix memory)
    2x Sapphire RX470 4GB Nitro OC (not Nitro+)(Hynix Memory)
    1x Sapphire RX 470 8GB Nitro OC (not Nitro+) (Micron memory)

  12. really easy tutorial here, thanks! just one question… i am running 1 gpu at the moment and want to get another within 2 weeks. here is my bat file

    setx GPU_FORCE_64BIT_PTR 0
    setx GPU_MAX_HEAP_SIZE 100
    setx GPU_USE_SYNC_OBJECTS 1
    setx GPU_MAX_ALLOC_PERCENT 100
    setx GPU_SINGLE_ALLOC_PERCENT 100

    ethminer.exe –farm-recheck 200 -G -S eu1.ethermine.org:4444 -FS us1.ethermine.org:4444 -O (address).rig1

    what would i have to add for the second gpu for it to work? any help is appreciated thanks!

    1. might need an extra command for multi GPU (it’s -t x off the top of my head where x is the number of GPUs).

  13. I don’t even know where to start…

    “geth –fast –cache=1024 –jitvm console”

    Does not work. I get: flag provided but not defined: -jitvm. I downloaded Mist, so I think I have a local wallet? Not necessary? The mining command doesn’t work regardless

    geth –rpc seems to start a synch. Its been running for a long time now. How long should I expect this to take?

    You say, if mining solo, replace the “last line” with “ethminer.exe -G”

    So would that look like:

    ethminer.exe -G

    ethminer.exe -G //your wallet address here

    ethminer.exe -G //your wallet address here -G –farm-recheck 200 –cl-local-work 256 –cl-global-work 8192

    I’ve tried creating a batch script with every iteration of the final line, it does nothing. The CMD prompt appears and then closes within a second. I’ve been at this for HOURS. Any help would be awesome….

    1. HI AJ
      It’s — (double dash) and not single. If you are local mining it is necessary to sync the blockchain

      geth rpc will never stop it’s the live syncing of the blockchain.

      Not sure why the mining isn’t working, looks fine to me.

    1. Hi there.

      This guide is magnificent, and easy to follow. Are there any good alternatives for storing ether? I’m mining at 26 MHS, and poloniex will not update my balance until i’ve mined 1 ethereum total, that might be a while.

  14. One of the bests tutorials, thank you so much!! i really appreciate !
    “ethminer.exe -F “””http://us-west1.nanopool.org:8888/”””””your_wallet_address_here””” -G –farm-recheck 200 –cl-local-work 256 –cl-global-work 8192″

    It’s in here that i put the pool address ? just that and it’s on the pool ? Which apps can we install to watch the rig ?

    Can i run with windows and comodo firewall ? (since i don’t know a linux) Port forwarding is programming TCP and UDP to come and go on 2221 ?

    Thank you so much for your help, good karmas for you and your family. 😀

    1. yes you can change the nanopool to another one. You can use Teamview on Windows but there are some dedicated apps out there, I will look into them in the future. And yep Firewall shouldn’t cause issues.

  15. I appreciate the instructions, but I get E: Unable to locate package ethminer after I type “sudo apt-get ethminer”

  16. a very helpful post, but can you make a post in which after Assembling the rig. how to configure that rig in windows. in step by step process.

  17. some of friends say that it use lost of data(mb) . my question is how much data it use in a month for 6 gpu’s ….

    1. I honestly have no idea. With unlimited internet pretty much globally it wasn’t something I considered. Might look into it in the future.

  18. Hi Peter,

    Thanks for the sensational information. I have never mined crypto coins before. Am looking into Ethereum based on its recent rise to about $200AUD.

    Apparently preferred GPU RX480 are really hard to get so I guess RX 470 will do the job?
    I am also looking at Claymore so I can mine another coin – which one would you suggest?

    In Adelaide SA, our going rate for 1Kwhr is 36c, not 10c that most seem to base their calcs on. I have put these figures through the profit estimator and it still looks viable.

    My question is this……… Is Ethereum going to get ‘scarcer’ and therefore harder to mine. i.e. take longer, need higher hashrate and cost more (power) due to time taken to find coin?

    Do you think ‘solo’ mining Ethereum on a rig with a hashrate of (say) 170MH/s at a cost of 36c/KWhr is still worth it?

    Thanks again,

    Peter

    1. There are mining rigs with just 1 GPU and there are ones with 8, so yes it would work with 3. 6GPUs is common as it’s relatively easy to set up and is cost effective.

  19. Heelo Peter, kerdezni szertnem ha a pc hez amit fel epitek es el inditom a soft-ot, kell meg hoza egy tuning soft ami szabajoza a dolgokat? ugy olvastam azt is kell csinalni hogy be legyen alitva egy optimalis run-ra es utana mindig valamit alitani benne? Koszonom

    1. Én az Ethereum Mist-et töltöttem le, de úgy tűnik, nem használja a grafikus kártyát (r9 390) kell valami plusz beállítás hozzá?

  20. Hello
    A very good article. But i have one question , Can we use wifi Network ?for geth or Claymore ? Because I am living on remote side. SO there is no dsl here. I have 4g Network Data device.

    Thanks
    Haider

    1. Hello Peter, I was wondering if you know ethOS well enough to possibly help me getting my Sapphire NITRO+ Radeon RX 480 4G to get higher in hash rate? I am stuck at 24mh/s and I can’t seem to get it higher but everyone keeps telling me most people are reaching 28+. If you want just email me please! I would appreciate all the help!

      1. You would need to flash your GPU BIOS using Windows. I have specifically not covered this in detail as it’s risky and I do not wish to take responsibility for flashed GPUs. However, there are plenty of sites out there that show you how to do it.

  21. ethos operating system is a freak it rejects my rigs extra gpu after updating to 1.2.1

    I was getting 2 gpus to work now i get 1 . genoil here we go

  22. Hello, Peter,

    I`ve read your article and I found some thing that are unclear to me:

    1. You published this article on January 19,2017 and you talk about RX 480, but you recommend a driver that is not for this type of video card. I know that Claymore recommends it, but I think it was long time ago, when he wrote his program.

    2. You say that “You can also change the memory clock. However, this has a smaller effect”. Is this for real? Everywhere I read about overclocking it has been said that the memory increase increases your hashrate. The core clock also increase it, but this affects the power consumption.

    So, my question is: is your article a little outdated or I have read thing that are not correct on this subject.

    Many thank.

    BTW, a very good article. Whish I had read it at the begining of the year, but I found it just today…

    1. Hi Liviu

      Thanks for the compliments.

      1) I’m running ethOS at the moment, but I’m fairly certain I used that driver, however, I’ll check at a later date. I will update the article to mention that you’ll need to find out the best driver for you as you’re correct it does vary from GPU to GPU.
      2) You’re 100% correct, I must have switched the clocks around by accident, so again, thanks for the feedback.

      Let me know if you spot any other mistakes, or if there’s any additions you’d like to see

      Thanks
      Peter

Leave a Reply

Your email address will not be published. Required fields are marked *

Your Information will never be shared with any third party.
Enter your email address to receive your Beginner's Guide to Online Security for Free
You'll also receive great privacy news and exclusive software deals!
Enter your email to get the ebook:
Your Information will never be shared with any third party.
Enter your email address to receive your Ultimate Online Privacy Guide eBook!
You'll also receive great privacy news and exclusive software deals!
Enter your email to get the eBook:
Special VPN Deal
SAVE 49% TODAY
WITH OUR
Exclusive Offer
Get a Special Deal - 72% OFF!
With a biannual subscription
Exclusive Offer for BestVPN.com Visitors!
50% Off Annual Plan
Limited Time Only
Exclusive price of
$3.25/mo