Ethereum Mining Guide for AMD and NVidia GPUs – Windows Cryptocurrency Mining Guide

Windows 10 Ethereum Mining Guide for AMD GPUs (12 GPU supported)

1. Introduction

I’m mining ethereum for quite some time now. I have a collection of lots of RX 4xx/5xx GPU’s and many Nvidia Gtx 1060/1070 Gpu’s and I have helped people on various forums, and had a lot of customers from which I’ve gained all of this knowledge. I have written this guide to help you setup your own gpu for mining purposes.

If you need help in setting up your bios for your GPU, check the GPU Bios Guide, it will teach you how to bios mod with just 1 click, and yes it will 99% mod your bios the proper way.

Please follow all the steps described in this guide by their order! This is a collection of my experiences with fixing various mining problems. I have helped over 500 people with their problems and this guide should have an answer to most or probably all of them 🙂

Other Guides:


2. Motherboard

What motherboard to get?

  • For the 6 GPU mining rigs the best, cheapest and most reliable motherboard is a H81 pro BTC 2.0 (works better than most very expensive gaming motherboards like Z170 and Z270 Pro series) .
  • For the 12/13 GPU mining rigs, the best motherboard to use is a ASRock H110 Pro BTC (Windows can only support 12 AMD GPU’s at the same time, you can combine 12 AMD + 6 Nvidia GPU’s but it’s not worth it, there are some 19+ Motherboards, but from personal experience you will have problems with them, so better stick to 6 or 12 GPU Mining Rigs)

IMPORTANT: You MUST have the latest motherboard bios installed. (you can check your motherboard bios update history, to see what was changed from your bios version till the latest available one. If there are no major changes, then you can skip this step.(Chipset, PCI-E, GPU support changes are the most important ones and you NEED to upgrade your Motherboard BIOS if they came out).

Common motherboard problems?

  • each Motherboard has a FIXED MAX PCI-E support. For example an H81 pro btc has 7, that means you can’t have more than 7 GPU’s connected on that motherboard! (Integrated GPU on the motherboard + 6 GPU = 7 GPU total)
  • integrated GPU counts as 1 GPU, remember that! (maybe you can get 1 more GPU per motherboard if you had the integrated GPU disabled, but that is not recommended.
  • ALWAYS have your Motherboard’s Integrated GPU as your main video output or target display, that way you will remove the stress of mining the GPU’s to produce a video output (in the bios settings, it should be under the Chipset option, and will you need to set the PCI-E to IGFX (integrated graphics adapter).
  • don’t use PCI-E splitters because it won’t probably work, because the main reason for this is, that the motherboard caps to the GPU’s (PCI-E lanes used) are connected. (some Motherboards can handle 8 GPU’s without integrated GPU enabled, but that can cause instability and it’s not worth the risk).
  • if your motherboard has additional SATA or Molex PSU connectors, you will have to connect them to the PSU, for example an H81 pro btc has 2 additional Molex connectors,and they must be enabled if you plan to have 4 or more GPU’s connected, so that your PCI-E lanes can get enough power to run stable.
  • some motherboards like the Z170 which are used for Gaming have 6 PCI-E inputs, but if you connect all 6 of them and you have an Integrated GPU enabled on your rig, it probably won’t start or it will give you a poor performance. That is an error on your motherboard, and you have to disable the Integrated GPU to make the rig work, and that is not a good option. And it will for sure cause problems.

How to setup your motherboard?

  • first you will need to connect your motherboard with just a CPU, RAM and the Disk. DO NOT use any of the GPU’s until the end of this setup.
  • connect your video display to the integrated GPU on the motherboard
  • turn on the PC and go into the bios:
    1. set the Chipset’s primary video display to an Integrated GPU (IGFX)
    2. Set the PCI-E to Auto
    3. Disable the audio
    4. activate above 4G if you have that option available under your motherboard, that is specially option for some motherboards , used to optimize your PC if it has 4 or more GPU’s connected, mostly Z270 motherboards have this option (h81 pro btc does not have this option, it has it already by default)
    5. Set the power loss options to “Always on” – so that your PC turns on immediately after you connect it to it’s power source.

Other PC parts?

IMPORTANT– never use WiFi to connect your mining rigs, from my experiences that can cause big trouble. Higher ping, random disconnects, Wifi freezing at start of mining, shares rejected and so on. For example my Wifi adapter would stop working if it was directly connected to the mining rig, but if I was using an usb extender so I can place Wifi Adapter away from the rig (1-2m) then it would work, as if the rig itself disrupted the Wifi signal, as strange as it sounds…. If you want to use Wifi, use the 5G. The more mining rigs you have, the more trouble with Wifi you will get.

RAM

  • 4gb of any RAM is enough for 6 GPU rigs.
  • 8gb of  any RAM is used only for 12/13 GPU rigs.
  • RAM is not so important so that the 1333mhz cheap memory is ok

CPU

  • any CPU that fits the socket of your motherboard (1150 for H81 pro btc) is ok
  • or 1151 lga CPU for H110 Pro BTC Motherboard
  • For 12/13 GPU rigs get a slightly better CPU (60$-100$) cause it will be a bit faster when working on the Rig especially when changing GPU’s from Graphics to Compute mode in AMD Settings and using streaming software (Team Viewer, Splashtop)

PSU

  • get 80+ gold or 80+ platinum certified PSU’s ONLY. From my own experiences, I have heard many times that the cheap PSU’s caught on fire or even have melted, thus making serious damage to the motherboard.
  • DON’T overload your PSU! For example, an 1000W gold PSU should NEVER be forced over the 800W power draw for max efficiency, you might end up destroying it. please don’t buy cheap PSU’s for running your mining rig 24/7! If you run PSU at 100% a lot of bad things can happen, I have confirmed from a lot of sources that. If you already have so expensive components, the worst thing would be to save money on your PSU.
  • NEVER have more than 2 GPU Risers connected to the SAME PSU Molex/Sata cable, this is very important because, it could melt the cable or burn the PSU!!
  • 80 PLUS certificate tells you how much extra power the PSU will draw to power your components. Let’s say you have 8 GPU’s and they use with your motherboard and other parts exact 1000W (let’s say it’s 50% PSU load).  80+ Platinum will use 1060W total (it will lose 60W extra), 80+ Gold will use 1080W, 80+ Silver will use  1100W, 80+ Bronze will use 1120W and a PSU without certificate will use 1150W or more. The power draw of each PC part is the same, the only thing that changes is the extra power the PSU needs to power your rig (in our example our PC will always use 1000W but the PSU needs extra to generate that flow). PSU maximum efficiency is stated in it’s manula, mostly it’s 50-80% of it’s load, the ones I used in this example. At higher PSU loads the efficiency drops by additional 2-4%. Higher grade certificate is expensive and most of them have 5-10 years warranty. It’s very important to get top grade and high quality PSU with long warranty because that reduces the RISK (PSU went trough a lot of testings, that’s why they are expensive), and if you already spend so much on your Mining Rig, there is no point to save some small $ on a very important component, and you will save power in a longer run that will increase your ROI.

Risers

  • they are responsible for most of the trouble with your GPU’s, so if you have a problem with one of your GPU’s for example, and you don’t see it or you can’t flash the bios, try to replace the riser.
  • try to get high quality risers (V009S), they are a very important part of your mining rig and you don’t want them to make problems,  60cm cable length is fine

Disk

Which GPU to buy?

Check GPU profitability HERE and how long would it take to recover your investment  here.

 


You can get Windows 10 Pro for FREE at their official website. You can download their Windows tool for making a bootable USB stick(If you are doing this on a PC that has Original Windows already on it) or download the Windows 10 ISO from their site and make yourself a bootable USB, install Windows on your SSD and , you will never have to pay for the license if you don’t want to. Still don’t have any GPU’s connected to your Mining rig! Because the first thing we want is to optimize Windows for our own mining purposes. THIS IS THE MOST IMPORTANT PART THAT PEOPLE DO WRONG! If you want to have original Windows 10, buy them at Kinguin. The only difference from OEM version instead of Retail version is that you can have the Windows activated on only 1 PC (you can’t reactivate the key on another PC), this version is used by most miners.

3. Windows 10 Pro

Why Windows instead of Linux?

Most people think that Linux is a more stable operating system or because it’s so lightweight, that it runs better, it can have more GPU support (Windows 10 supports 12 GPU now) and should be a better option for 24/7 mining. It would seem logical, but it isn’t:

Because Linux has various problems, such as:

  • drivers for the GPU’s under Linux are OUTDATED and they have poor support
  • overclock tools for Linux are hard to get and they most likely won’t work on all of the gpu’s properly (especially not the undervolt part, which is the most important).
  • it’s hard to tell if one GPU produces memory errors or if it’s something bad with the GPU, that would cause it to break in the longer run (Windows has strong tools like HWinfo64 that can tell you precise if your GPU is working properly or if it’s unstable)
  • POWER DRAW – yes, under Linux your GPU’s will use about 5% more power than on WIndows, with the exact same settings for overclock/undervolt.
  • HASH RATE – as described before, Linux is not EFFICIENT and you will not get the same hash rate as on Windows, for example the exact same settings on a GPU on Linux would give you 28.8 MH/s and on Windows you will get 29.3 MH/s.
  • Linux isn’t more stable than Windows 10, if Windows is setup properly, it can run for months without the need of a reboot, most people don’t know that.
  • Tools like SMOS or EthOS are very expensive and they offer you as they describe it: “Simple” mining monitoring solutions. Their tools for overclock and undervolt are not working properly. Those Linux based OS CAN’T have the same Overclock/Undervolt settings as on Windows, or they will crash because of poor driver support (800mV on Memory works on most GPU’s under Windows, but almost none on Linux…).
  • you can monitor your rigs on Windows almost the same way as on SMOS or EthOS, I will explain how to do that later in the guide.

How to setup Windows?

4. Optimizing Windows

4.1 WINDOWS UPDATES

If you have downloaded Windows 10 from the official Microsoft website (never use torrents for this) then your Windows 10 pro is almost up to date.

  • Go to the Control Center
  • Go to Updates and Security
  • Go to Windows Update
  • Check for updates and install the latest ones
Ethereum GPU Mining Guide Update Windows   

 

 

Update Windows

4.1 DRIVERS AND SOFTWARE

Download latest .NET Framework 3.5 Offline Installer – it is required to run Polaris 1.6 and OverdriveNtool. Windows 10 Comes with 4.x Framework, but that one will not work with Polaris and OverdriveNtool. You need to install the .NET 3.5 manually. Insert the Windows 10 USB stick into the PC (the one you used to install Windows) and set the USB Disc Drive as the Source for installing the .NET 3.5. Here is the Guide how to do it, it’s very simple.

Download LATEST Drivers for your motherboard, especially latest Chipset driver. This is very important.

4.2 WINDOWS 10 REGISTRY TWEAKS FOR MINING

  • Once windows is fully installed and has booted for the first time, you will have to run the Windows 10 Registry tweaks for mining.bat file using this tweak disables EVERYTHING that is not important for mining on Windows, disable everything from this tool
  • Run it in administrator mode
Ethereum GPU Mining Guide Windows Registry Tweaks  Windows Registry Tweaks
  • Once everything is applied, restart the rig

4.3 STOP WINDOWS UPDATE #DOUBLECHECK

  • Open RUN and type in it “services.msc“, the services page will be opened
  • Search for “Windows Update
  • Click “Stop” if the status is “Live” or “Checking/Running
  • Select “Disabled” on “Startup type
  • Apply & Restart
  • Do it again and make sure that it is disabled
Ethereum GPU Mining Guide Services Tweaks

 

 

Services Tweaks

4.4 INCREASE VIRTUAL MEMORY

  • Open up search and type in “This PC“, right click on it and choose “Properties
  • Then click on “Advanced System Settings
  • On “Advanced” tab where it says “Performance” click on “Settings
  • Click “Advanced” tab
  • At the bottom you will see the “Virtual memory“ option, click on “Change
    • Uncheck “Automatically manage paging file size for all drives
    • Check “Custom size
    • Now depending on how much GPU’s you have you will need to increase the virtual memory. In general for each GPU you need to have 3GB Virtual Memory (because the DAG file used for hashing ethereum is above 2GB and going to 3 GB this year). So if you have 6 GPU you need to have 6x3GB Virtual Memory = 18GB
    • In the “Initial size (MB)” type: 2000MB x GPU Count (12000MB for 6 GPU mining rig, 24000MB for 12 GPU) 
    • In the “Maximum size (MB)” type: 3000MB x GPU Count (18000MB for 6 GPU mining rig, 36000MB for 12 GPU)
    • Click “Set” , then “OK” and “Apply
  • Restart the rig
Ethereum GPU Mining Guide Windows Advanced Settings

 

 

Windows Advanced Settings

Ethereum GPU Mining Guide Changing Virtual Memory

 

 

 Changing Virtual Memory

4.5 POWER PLAN AND OPTIONS

  • Open up search and type in: “Power Options
  • Click on “Show additional plans
  • Select “High Performance” plan
  • Then while still on the “High Performance” plan, click on “Change plan settings
  • Select “Never” on all four selections for “Turn off the display” and “Put the computer to sleep
  • Click “Change advanced power settings” and look for “PCI Express” -> “Link State Power Management“, make sure it is set to “OFF“, usually it is but better to check on that
  • Restart the rig
Ethereum GPU Mining Guide Change Power Options  Change Power Options
Ethereum GPU Mining Guide Change Power Plan

 

 

Change Power Plan


5. GPU drivers

Now after Windows is setup properly, download a tool called DDU,   That tool will uninstall your current driver (even your integrated GPU) and block Windows from automatically installing GPU drivers. That’s important so that Windows does not install an outdated driver! It will ask you to run in “safe mode” but that is not necessary. When you run the program just click on “Clean and restart”. We want to manually download and install the right drivers.

Ethereum GPU Mining Guide Uninstall GPU Drivers, Block WIndows Automatic Driver Installation Block Windows Automatic Driver Installation

 Now turn off your PC and connect only ONE GPU.

What driver is the best?

IMPORTANT – From AMD Crimson 17.10 driver (and all drivers released after that) they have added the mining mode in the driver and enabled up to 12 AMD GPU’s to be able to run on Windows 10.

AMD released Radeon Software Adrenaline Edition, download latest version of it. It will improve hashrate on some cards and in general give you best possible hashrate on all RX 4xx and 5xx cards.

Very rare it’s possible that you will get better results with the Beta Blockchain Driver , but that driver only supports 8 AMD GPU’s and please try first the Adrenaline edition (In the Blockchain driver you will not need to change GPU’s to Compute mode, they are there on default).

If Adrenaline or Blockchain driver is not working, your last hope is latest Crimson ReLive Driver release (you need to change in Radeon Settings to compute mode each GPU)

At the beginning of the install process go to CUSTOM instead of Express and ONLY select “AMD Display Driver” and “AMD Settings”. During install SKIP  the installing of ReLive,  because we won’t need it.

Optional fix (RX 470,RX 570)

After you have installed the driver restart your PC. If you’ve  already modified your GPU’s before, there might be a possibility that you won’t be able to see them anymore. That is most likely a problem with the RX 570 series and it’s very rare with some RX 580 models. The problem comes from the bios mod, because it changes how the GPU’s work and you  will need to Patch your drivers to make them work properly or  the driver will just end up disabling  or hiding the GPU’s (Error 43). This is only needed if you can’t see your bios’ modified GPU’s in the Windows Device Manager. Download the Pixel Clock Patcher.

Ethereum GPU Mining Guide Pixel Clock Patcher For RX470/570 GPU  Pixel Clock Patcher For RX470/570 GPU

Installing all other GPU’s

Once you successfully installed the driver with just one GPU, shut down your PC and plug in all of the other GPU’s. After that, when you turn the PC back on it should automatically detect each of them and it will install the drivers for all of them. Just remember that it will take some time (about 5-10 minutes) for all of the GPU’s to be detected properly. You can open up the Device manager, to see if all  of the GPU’s are listed there. Just turn the PC on and wait 5-10 minutes before doing anything, Windows will do it’s job.

Mining(Compute) Driver Mode

Now after you have all of your GPU’s under the right driver, there is one more important step to make.

  1. Ethereum GPU Mining Guide Radeon Settings

     

     

     

     Radeon Settings

  2. Then  click on “Gaming”
    Ethereum GPU Mining Guide Radeon Settings Gaming  Radeon Settings Gaming
  3. at click on “Global Settings”
    Ethereum GPU Mining Guide Radeon Settings Global Settings  

     

     

    Global Radeon Settings

  4. Now all of your GPU settings are displayed. We will need to change each GPU to be in MINING (Compute) mode. By default each GPU is in graphics mode, and to enable proper mining (high hashrate due to DAG fix) we will need to change each GPU’s “Global Graphics” “GPU Workload” to COMPUTE from Graphics. Each time you change one of the GPU’s to COMPUTE, it will ask you to restart the AMD Settings, which will take some time,  but it’s also possible that even if you’ve changed it to Compute,  that the GPU will still display “Graphics” instead of it. To fix this, try to restart your PC and see if the value was stored properly after that.
    Ethereum GPU Mining Guide Radeon Settings Change GPU Workload to Compute Change GPU Workload to Compute

6. Bios mod

Each GPU has its own bios, that tells it how it should work. There are four different memory types that you will encounter on your GPU : Hynix, Elpida, Micron, Samsung

During the  mining of ethereum, you will only be using memory of the GPU, that means that the higher quality of the memory is, the better hashrate you can get. While testing all of the memory types, I’ve found out that Samsung and Hynix are a little bit better than Elpida and Micron, but the difference is very subtle.

Hynix and Samsung Graphic cards:

  • all RX 580 8gb cards
  • most of RX 570 8gb cards (there is a chance of getting micron memory)

Elpida Graphic cards:

  • most of RX 580 4gb cards (there is a smaller possibility of getting micron and very rare hynix/samsung)
  • most of RX 570 4gb cards (there is a smaller possibility of getting micron and very rare hynix/samsung)

Micron Graphic cards:

  • they are the rarest memory type and you can found them mostly on RX 570 8gb cards (they can appear on every RX series but it’s very rare)

What memory are my cards and how to export the BIOS?

Download a tool called GPU-Z.  

 This tool allows you to see what memory type your card has as you can see in this picture.

Ethereum GPU Mining Guide GPU-Z Bios Exporting

 

 

GPU-Z Bios Exporting

On the Green selection you can see the “Memory Type”. In this example it’s Elpida. If you bought your GPU’s all at once, and they are the same card type and if you see  that they all have the same Memory Type, that means that they all CAN USE THE SAME BIOSExporting GPU BIOS can be done with clicking on the Red circle as displayed in the picture above, under the “BIOS Version”. Now you have your original bios exported, make a backup before going to the next step.

How to BIOS MOD yourself in one click?

Go to my guide: GPU Bios Mod

IMPORTANT – Always work with the original BIOS of your cards, don’t download random BIOS online cause you can’t be sure they are made for your card type, even if they are the same model that does not mean they have the same bios. It’s very important to work with the original card BIOS to reduce the unnecessary risk to the minimum.

How to flash the new BIOS?

First you will need to download a tool for flashing the bios called ATIFlash.

With this tool you can put the custom bios over your current one. Always make a backup for your current bios and store it somewhere safe, you can never know when you are going to need it.

IMPORTANT – be very careful what bios you are going to flash on what GPU, I would recommend you to never have different card types plugged in when you are going to flash, so you don’t flash by accident a wrong bios to a wrong card (even if this is almost impossible, because if you use the AtiFlash properly (as explained in this guide) it should give you a warning that you can’t flash the specific bios, because it’s a different type than your original card)

  1. s that you are going to flash in the AtiFlash folder, for example “upgrade.rom”.
    Ethereum GPU Mining Guide Backup BIOS

     

     

     Upgraded BIOS, Part 1

  2. Step – copy the file path location to the AtiFlash folder like shown in the picture
    Ethereum GPU Mining Guide Backup BIOS Rename

     

     

     

     Upgraded BIOS, Part 2

  3. ss Windows Key + S, then type CMD, after that the first result will be “Command Prompt”, right click on it and press “Run as Administrator”
    Ethereum GPU Mining Guide Run CMD as Admininstrator    

     

     

    Run CMD as Admininstrator
  4. Step – Now in the console window,  type “cd ” and copy the path to the AtiFlash directory as you did in “Step 2”, and it should look like in the picture (except your PC username  is different than mine of course)
    Ethereum GPU Mining Guide Change Directory to AtiWinFlash

     

     

    Change Directory to AtiWinFlash

  5. Step – now type in the console “AtiFlash -f -p 0 upgrade.rom” where each word  represents the following:
    • AtiFlash -> the name of the execution file.
    • -f -> forces the flash of a GPU.
    • -p 0 -> the GPU at position 0 will be flashed (GPU orders are as displayed in GPU-Z or Device Manager).
    • upgrade.rom -> that is the name of the bios  that you want to flash to the GPU
      Ethereum GPU Mining Guide Commad to Flash GPU BIOS

       

       

       

      Commad to Flash GPU BIOS

Bios flash problems

  • you get the error that the ID’s mismatched , that means that you want to flash the wrong bios on your GPU
  • you get the error that the ROM file could not be read, for that you will need to replace the Riser your GPU is connected to, or  you will need to connect that GPU directly to the motherboard or use  a DDU to reinstall the current driver and install the driver back on, if that does not work try to download Atiflash 2.74 Version and try using this instead.
  • you get the error on 4000 or 8000 bytes wrong size, that means that you want to flash the wrong bios (some older cards have a 512kb bios, exact same new version of cards use a 256kb bios, that means that you wanted to flash the older bios to the new cary type and of course you got rejected. You need to always be careful about what bios you are flashing).
  • after flashing your GPU and restarting the PC you don’t see the GPU anymore, you didn’t install the “Pixel Patcher”, go to the GPU Driver section and read it again.

7. GPU Miner

Now after all your GPU’s are flashed with the right upgraded bios we can move on  to the most important step, the mining software part. There are a couple of different popular mining programs, depending on the algorithm they are working with, the most popular are:

  • Ethash (ethereum,ubiq,ethereum classic… ) can be mined with the same mining software because they  all work under the same algorithm (ethash) and the best miner is Phoenix Miner
  • CryptoNight (monero,electroneum….) are also mined with the same software
  • EquiHash (zcash,zclassic,bitcoin Gold…) are also mined with the same software

This guide is focused on the Ethash algorithm mining, so the settings and the tutorials from this guide are not optimized for the other mining algorithms like CryptoNight. For this I plan to make another guide or expand this one so that you will understand how to optimize your GPU’s for the other algorithms.


8. Phoenix Miner

Phoenix Miner is currently the best miner for Ethereum, and it comes with a nice option of dual mining  with some other altcoins (Decred, Sia… ) that can boost your profit by around 20-30% for 20% more power draw. Even if you have expensive electricity the bonus profit is probably worth it.

All miner software have a developer fee, that is your miner mines for the developer as a fee for a few seconds every hour. Phoenix miner has a fixed fee of 0.65% (which is lowest so far) when you are mining ethereum or 1% fee when you are dual mining.

How to setup Phoenix Miner?
DOWNLOAD Phoenix Miner and extract it to a directory (say, C:\PhoenixMiner).
You may also download it from BitcoinTalk. If Chrome doesn’t allow you to download the file from BitcoinTalk, you may want to FOLLOW this guide to temporarily disable chrome’s safe browsing.

Now that we have our miner, we need a mining pool to start mining. Until now, Ethermine was the most popular pool, however, they have recently changed the minimum payout to 0.1 ETH, and they levy a 1% mining fee. Hence, I prefer binance pool over ethermine.

Binance pool has a fee of 0.5% and they pay DAILY, no matter how little the mined amount is! Also, with binance, it is very easy to convert our wallet’s eth to BTC, in case we want to transact a btc payment on some website.

To mine using Binance, create an account at Binance Pool
Create a mining account username.
In the directory where you have extracted Phoenix, create a new text file. 
Add the following line in the text file:

PhoenixMiner.exe -pool stratum+tcp://ethash.poolbinance.com:1800 -pool2 stratum+tcp://ethash.poolbinance.com:25 -wal USERNAME.USERNAME

If you would rather use Ethermine, use the following line:
PhoenixMiner.exe -pool eu1.ethermine.org:4444 -pool2 us1.ethermine.org:4444 -wal 0x1339b94A820d5050C1849E024d9805C3161D0010 -proto 3

Unlike binance, that stores the mined coins in your binance account, with ethermine, you need to have a ETH Wallet address. Replace the address above with your ETH wallet address. If you don’t have a wallet address, download MetaMask Chrome Extension and create one.
In the above command, we have used eu1.ethermine.org as the mining pool. You may want to use us1.ethermine.org or asia1.ethermine.org or so depending on your location. Visit ethermine.org for more info. 

Save the file as “start.bat”. You may name it anything you want, but the extension should be “.bat”. Double click to start the mining process.

You may also add a shortcut to start.bat in your Windows Startup folder, so that it would run every time you turn on the pc. To do so, create a shortcut of start.bat, cut it and paste it in C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp (where C:\ is your Windows directory).

To view the statistics of your mining and unpaid balance at:
binance, you may visit Binance Pool Stats
ethermine, you may visit ethermine.org/miners/[YOUR_WALLET_ADDRESS]

Ethereum Mining Pool

-pool is the mining pool you are mining on, it’s just a persona preference, some people like to use nanopool, some like dwarfpool, ethermine, you can use whatever pool you like. Be careful what pool you are using, it should be based on your location, it would make no sense to mine on an European pool if you are in America because of the high ping. Always use the pool that is close to you (nanopool,dwarfpool,ethermine and others have mostly location specific pools, you can’t miss them, they mostly start with eu, us or asia. After that you can write your own ethereum address which is used to collect your ethereum shares. You can view statistics on the mining pool by searching it with your address, for example if you are using the nanopool pool you can see your current active statistics withhttps://eth.nanopool.org/yourEthereumAddressFor example using Nanopool:

  PhoenixMiner.exe -pool eth-eu1.nanopool.org:9999 -wal YourEthWalletAddress/WorkerName -pass x

I use Binance to mine Ethereum (I have explained the reason above), you can use ethermine or dwarfpool or nanopool also, but ethermine gives most reliable statistics. Go to Chapter 11 to see why some people prefer nanopool.

Ethereum Wallet Address

-wal is your ethereum address, be careful because you will always need to write only an ETHEREUM wallet address, not a bitcoin or any other address. Most easy way to create an ethereum wallet and keep it safe is to use the exchange sites like Bitfinex or Bittrex. They will  offer you high security and you can use  the Two Factor Authentication which makes it very secure. For big amounts I would recommend to use offline wallets like Trezor Bitcoin Wallet.

How to setup dual mining?

Ethereum is mined just by using the memory of your GPU, so the GPU’s core is almost not affected by  the ethereum mining at all. This gives a possibility to utilize the GPU core for mining some other coins in the same time as you mine ethereum without affecting its hashrate. Of course if you would mine the dual coin at full potency, it would affect the ethereum hashrate, that’s why we will need to optimize the intensity of the dual coin, lowering it at such degree that it’s not affecting the ethereum hashrate.

The following Dual Mining options are for Claymore Miner, but similar settings may be used for Phoenix Miner. To see the dual mining settings for Phoenix Miner or for more info, please visit its author’s thread

DUAL MINING CLAYMORE START.BAT CONFIG:

EthDcrMiner64.exe -epool yourMiningPool -ewal yourEthAddress -epsw x -dpool dualCoinMiningPool -dwal dualCoinWalletAddress -dpsw x -dcri 25

Dual Coin Mining Pool

The part before the -dwal is the same as for the solo ethereum mining described above. The -dwal has the same representation as -ewal, it just is the mining pool of the dual coin. I would recommend to mine ONLY Decred as a dual coin, because it has the highest efficiency of all of them . As described above the Dual coin uses the GPU’s core for mining and not all dual coins give the same results. For RX 5xx cards the best way would be to go with Decred. I use the Supernova decred mining pool. You need to create an account there, and the account name will serve you as a decred mining pool address. This way it gives you one more security improvement, because you don’t show people your address, instead just your account name. On your account you will need to create a worker and give it a name for example: worker1, and leave it’s password as it is (“password”). Now to connect properly to the decred mining pool you would need to put “-dwal supernovaAccountName.supernovaWorkerName        

How to mine decred?

You can create a decred wallet at Bittrex. It’s a very good trading site featuring a lot of altcoins including decred. You can cash out your decred at your account page in supernova, under “My Account” -> “Edit Account” -> “Payment Address” and you need to type your bittrex address there. And now you just need to set “Automatic Payout Threshold” to your desired value, I use 0.5 as my payout cap. I convert my mined decred to ethereum at  a bittrex exchange site, and store my value like that. It’s safe if you use a 2FA (authenticator).

IMPORTANT DUAL MINING INFORMATION

As you can  see in the dual mining configuration, the last part is “-dcri 25”. That means that the  dual coin is set to mine intensively ,  and it shows how much GPU core is assigned for that task. Yes it’s needed for solo mining too, and needs to be set to 6! This is a very important part because it’s DEPENDANT ON THE GPU SERIES. The only noticeable difference between the RX 570 and RX 580 series is their GPU Core. The memory (used for ethereum mining) is almost the same on those cards, so there is basically no difference in  the ethereum hashrate, but the big difference comes in the GPU Core. The RX 580 series can handle around -dcri 25, don’t go above that because it can reduce your ethereum hashrate. For RX 570 series the optimal -dcri is around 19-22. For some cards even lower as 13, this needs to be tested by yourself. The proper way would be to start with -dcri 10. Then using your keyboard press “+” or “-”, that way you can increase or decrease -dcri by 1, as you will see on the claymore miner. By going up you will see the dual coin hash rate going up, repeat  that until you can start to see the ethereum hashrate decrease, then, after you find that spot reduce -dcri by 3, so you are not pushing the GPU to the limit. On the RX 570 series it’s possible to get a higher hashrate on ethereum with dual mining rather than just solo mining. Optimal for RX 570 is around -dcri 19 , optimal for RX 580 series is around -dcri 25. For some cards it’s possible to go even further, but it’s not worth it to stress the GPU too much.


9. Overclock/Undervolt

This is the most important part of this guide, it’s very important for you to learn the right way of overclocking and undervolting to optimize the GPU as much as possible.

  1. STEP – Delete all the overclock tools that you have installed, especially MSI Afterburner because it can interfere with the proper way of overclocking and undervolting.
  2. STEP – Remove any overclock and undervolt from Claymore “start.bat” file if you were using those commands before (-cclock, -mclock, -cvddc, -mvddc) , even -tt and any other option. Claymore overclock and undervolt tools are terrible and have various problems:
    • The GPU sometimes random resets to a default stock hashrate even if you see the GPU is at it’s desirable clock rates
    • GPU’s get random hashrate drops, for example it shows 29.5MH/s, but sometimes it will randomly drop to 20 MH/s for no reason in the logs, and that happens very often. The way Claymore software tries to force your GPU’s to stay at those clock rates is terrible, and it will not work properly if a new Driver from AMD comes out.
    • You don’t have full access to the overclock tools in claymore and it’s a mess configuring each GPU individually
    • Overclock or undervolt sometimes don’t apply properly. Often you  will need to start it again 2 times or even restart the PC to have proper Overclock values applied
  1. STEP – Reset your GPU’s to the default clock rate settings if you have overclocked them before
  2. STEP – Download a tool called OverdriveNtool This is the BEST and most RELIABLE overclock/undervolt tool for AMD graphic cards.

What is OverdriveNtool?

Now after your GPU’s are at their default settings, we’ll be using OverdriveNtool to handle the overclocking,target the GPU’s temperature and it’s  undervolting. There is no other tool where you can have full control of your GPU and the ability to quickly optimize the GPU’s. You can’t be 100% sure the overclock/undervolt settings are working properly. This is a special software that gives you FULL access to your AMD GPU’s and it’s very easy to use once you know the basics.

How to use OverdriveNtool?

This software may seem confusing or complicated at first, but it’s very easy to understand. I will explain it through the following picture:

Ethereum GPU Mining Guide OverdriveNtool Default Settings 

 

OverdriveNtool Default Settings

GREEN – this is the target temperature of your GPU. OverdriveNtool will automatically keep your GPU’s at their desired temperature by increasing/decreasing the fan speed, as it’s needed to stay at those temperatures.  The optimal value would be 60C. You can check this during the mining in Claymore, by seeing how much the current fan speed is in percentage. If  the fan’s speed goes over 70% increase the target temperature to 65C, but that can only happen if you have a high room temperature, probably because of no cooling or  a weak air flow.

PROFILES – This serves to save current overclock settings for further use. For example after you turn on your PC, you can automatically load all the  overclock settings to the desired GPU’s.We will have 1 profile per GPU on your mining rig. First make a new .txt file in the folder in which you have the  OverdriveNtool.

Ethereum GPU Mining Guide Create .txt File 

 

 

Create .txt File

After that go to “Save As” and change the “Save as type” to “All Files” and then name the script “overclock.bat”. That way you will create a Batch file the same type as Claymores “start.bat” and it will work in very similar way.

Ethereum GPU Mining Guide Convert .txt File to .bat File

Now after that open the overclock.bat file with notepad and write in the following:

OverdriveNTool.exe -r1 -p1″gpu1″ -r2 -p2″gpu2″ -r3 -p3″gpu3″ -r4 -p4″gpu4″ -r5 -p5″gpu5″ -r6 -p6″gpu6″

As you can see in the following picture:

Ethereum GPU Mining Guide Overclock Script for OverdriveNtool 

 

 

Overclock Script for OverdriveNtool

This will make a batch script that will run the OverdriveNtool.exe and set  the each gpu (-p) to a predefined profile (“profileName”)

  1. -r1 ->resets the GPU 1 to default settings, it’s important to always reset GPU before testing new clock settings
  2. -p1”gpu1“ ->set the GPU 1 values to the profile called “gpu1”
Ethereum GPU Mining Guide

 

 

List of AMD GPU’s

Carefullas you can see in the displayed image in my case, I have on this mining rig 7 GPU’s enabled. The first one is an INTEGRATED GPU and it’s ID is -p0 , all others are mining gpu’s (p1,…p6). So if you have your integrated GPU disabled or for some reason you use a motherboard that does not have it, then your mining GPU id’s start from p0, but you can see the GPU’s order as displayed in the picture below. The GPU’s order in OverdriveNtool is the same as in the GPU-Z and Claymore 10.2.

Now make 6 “New” profiles and name them gpu1, gpu2… gpu6 and each profile will represent the GPU it’s attached to, so for example, we are using the “-p1” GPU to the profile “gpu1” and so on. You need to make so many profiles as you have mining GPU’s (all GPU’s except the Integrated one)

RED – this part shows you the real GPU’s core clock rates and its voltages. In other            overclocking tools you will only see the last one, in this case 1340 Mhz. As you noticed there are 8 of them (P0,P1….P7) and that are the GPU’s core states. This means the GPU switches automatically to default between those states, depending on how much you use the GPU. From all those 8 states, we don’t want the GPU to switch between them, we want it to run stable at the fixed clock rates we put it on. To do that we will need to DISABLE all  the GPU’s states except the last one (P7). You can disable every state from P0 till P7 simply by double clicking on its name (just go with  the mouse over “P0” and doubleclick), you will know if you are successful if that state changes colour.

GPU CORE OVERCLOCK/UNDERVOLT – we need to do two things to the GPU core. First, we will need to set P7 clock rate and its voltage. You need to remember that the GPU’s core is not used to mine ethereum a lot, it just helps the memory to do the hashrate. The GPU’s core generates the most heat on the GPU and uses the most power, so our intention is to push the GPU’s core down as much as possible to save power and lower the temperature on the GPU without losing ethereum hashrate, or lose some hashrate because we save more on the power cost reduction than the small ethereum hashrate drop. It would be very recommended to have Wattmeter to make your own calculations to see what’s more worth for you. In general most optimal clock rates for ALL GPU’s is around 1150mhz. Some RX 570 can even work at around 1100mhz without losing any, or very low hashrate reduction on ethereum and that will reduce  the power draw drastically. Some RX 580 need 1200mhz to have the optimum hashrate, but most of them work best at 1150mhz. In general never go above 1200mhz because it will start to use much more power,  and you can will that with your Wattmeter. For the Voltage part, it’s best to keep them at 850mV. You can try to reduce the voltage to 825mV or 800mV if you are going to keep the GPU’s at 1100mhz, but it is possible to get a freeze or crash. The best way for you is to test your hashrate with those values described and see what effect it has for your GPU to run it at 1100mhz, 1150mhz, 1200mhz with 850mV voltage in all cases. Then compare the power draw with the hashrate and calculate what’s more profitable for you. In most cases 1150mhz/ 850mV is optimal.

MEMORY – This works identically as the GPU core, except it’s for the memory. This is the holy grail, this is the most important part of GPU mining and it’s very RANDOM. There is no fixed values from which you can know that it will work 100% on your GPU. There is just one proper way of doing it without risking any problems. We will need to disable P0 and P1 by double clicking on them.

HOW TO SET OVERDRIVENTool PROPERLY?

We will need to repeat the process for each GPU individually, it’s very important to test it that way so if you end up getting a crash or reset, you will know exactly at what part that happened so  that you can reverse the crashing settings.

First we will need to test the first mining GPU only, not all at once:

  1. Set the GPU target temperature to 60C
  2. Set the GPU core as explained in the RED part of the guide (GPU Core) to 1150mhz/850mV, and disable all of the previous states.
  3. Set  the Memory to 1800mhz/900mV and disable all of the previous states.
  4. Apply settings to the GPU.
  5. From Profiles find the “gpu1” profile and click Save.
Ethereum GPU Mining Guide

 

 

 

Overclocked and Undervolted Template

As you can see in the picture, you will need to have values set exactly like that. Apply settings first, then click on  the “Save” button near the profile or else the profile settings won’t be applied properly. You have your first GPU all set and ready to make the FINAL STEP

OVERCLOCK PROPERLY!!!!!

This is the most important question people want to have an answer for and it’s the most tricky one. There are no optimal or universal values, because on the identical GPU’s the same Overclock/Undervolt settings don’t work the same way. Each GPU is unique and requires individual testing to optimize it properly.

Download a tool called HWinfo64.

Install it and run it in “Sensors only” mode as displayed in this picture:

Ethereum GPU Mining Guide  

 

 

 

Sensors only mode for HWinfo64

After that scroll all the way down till you see your GPU’s, they are located at the end. Now after you found the GPU’s, select all sensors except “Memory Errors” and HIDE them (right click on the sensors and press “hide”). Ater that, you will have something as in the image below:

Ethereum GPU Mining Guide

 

 

Memory Errors in HWinfo64

In my case there are 6 AMD GPU’s and I have disabled all other sensors because they don’t interest me. We only want to have GPU Memory Errors displayed, this will tell you if your GPU is overclocked too muchNow this is the way we will test your GPU’s optimal settings.

  1. Start mining with the current base settings as we did for first GPU (1150mhz/850mV on GPU core and 1800mhz/900mV) on the Memory,  the target temperature is  60.
  2. If you see no memory errors then the current setting is working properly, you will need about 2 minutes to see if they start to show or not.
  3. Now change the memory to 1850mhz, then click apply, after that click save on the profile.
  4. Now start the overclock.bat script , it will reset the GPU to its default settings, and after that you will need to apply it’s new 1850mhz memory settings.
  5. Start mining and see if you get any memory errors after 2-3 minutes.
  6. If you don’t get any memory errors, that means your GPU is having no problems running at those clock rate. Now we will try to increase memory clock rate by 50mhz increments, and each time you increase memory repeat step 4 and 5 (if you see no difference in hashrate after chaning memory clock rate you need to restart your PC, sometimes if you change overclock/undervolt a lot it will stop making change). We want to repeat that process till you start to see memory errors, depending on them do the following:
    • If you get few memory errors after some time, rollback  to 25mhz and test it again.
    • If you get millions of errors, that’s the HARD CAP of the GPU and you can’t push it above that, reduce the clock rate by 50 mhz.
    • If you get 1-2 errors each couple of seconds it’s fine and you can keep it like it is.

Now after you found the optimal value for your GPU you can do the following:

  • Set the GPU core to 1100 Mhz and then to 1200 Mhz (don’t forget to apply, save profile and then run the overclock.bat) to see the difference in hashrate and the power draw from the wall. (if you see no difference in hashrate after chaning GPU core clock rate you need to restart your PC, sometimes if you change overclock/undervolt a lot it will stop making changes)
  • Set  the memory voltage to 850mV and then to 800mV, always look into HWinfo64, because the reduction of voltage on the memory can cause it to produce errors,  so don’t go below 800mV . Reduction in the memory voltage can also cause the GPU to stop working (0 mh/s) or cause the rig  to freeze or blue screen. Don’t worry about that just revert the settings.

After you done all that for the FIRST GPU, you can repeat the process for each other GPU, always keep an eye in HWinfo64 for memory errors, so  that you don’t have an unstable rig. The rig can work with a bunch of memory errors but that can cause:

  • real hashrate to drop
  • rejected shares
  • seeing random hashrate drops in claymore
  • it can cause serious damage to the GPU

If all of  your GPU’s on the RIG are the same, you can try to apply the profile settings that worked for the first GPU to the next GPU and test if it works, then try to adjust the small settings to reduce memory errors if you get them. It’s possible that the same GPU with the same settings will crash the PC or cause a freeze, that’s why you test one GPU at a time.

AVERAGE OPTIMUM GPU SETTINGS

This is a list of different GPU’s and their average optimum settings. So that you can have a clear picture of what your GPU should look like:

RX 570 Series:

  • Micron Memory
    • gpu core: 1150mhz / 850mV
    • memory: 2050mhz / 850mV
  • Hynix Memory
    • gpu core 1150mhz / 850mV       
    • memory: 2175mhz / 800mV
  • Samsung Memory
    • gpu core 1150mhz / 850m
    • memory: 2200mhz / 800mV
  • Elpida Memory
    • gpu core 1150mhz / 750mV
    • memory 2100mhz / 850mV

RX 580 Series:

  • Micron Memory
    • gpu core: 1150mhz / 850mV
    • memory: 2050mhz / 850mV
  • Hynix Memory
    • gpu core 1200mhz / 850m
    • memory: 2250mhz / 850mV
  • Samsung Memory
    • gpu core 1200mhz / 850mV
    • memory: 2250mhz / 850mV
  • Elpida Memory
    • gpu core 1150mhz / 850mV
    • memory 2100mhz / 850mV

RX 5700XT Series:

  • gpu core 1300mhz / 850mV
  • memory 1850mhz

10. Starting to mine at Windows startup        

After you’ve managed to setup all of the GPU’s profiles and have tested them, and you are sure that they produce no, or very few memory errors, you want to make sure that your mining rig works automatically.

  1. Create a shortcut to Claymores “start.bat”
  2. Create a shortcut to OverdrivenTools “overclock.bat”
  3. Press Windows Key + S
  4. Type “Run” and press Enter
  5. Type in: “shell:startup”
  6. A folder will pop up
  7. Drag OverdriveNtool and Claymore shortcuts to that folder
Ethereum GPU Mining Guide

 

 

Windows Startup Folder

Ethereum GPU Mining Guide Mining and Overclocking Scripts Starting With Windows

 

 

Mining and Overclocking Scripts Starting With Windows

Now try to restart your PC, it should overclock and start mining automatically.

 

 


11. Managing mining rigs

There are many ways of managing your rigs and a lot of software to do that. I like the most simple one and that works great for me.

  1. NANOPOOL – I use this pool to mine ethereum, and to monitor my rigs. At the part of -ewall after your ethereum adress you can put    “yourEthWallet.yourRigName/yourReportingEmailAddress” . That way nanopool will send you a email if one of your rigs goes offline. Also at nanopool website you can check your current hashrate of your rigs. If you see one rig reporting lower hashrate than it should you know something is wrong. Nanopool works very well as a monitoring tool.
  2. SPLASHTOP – If nanopool finds a problem the best way to fix the issue is using remote desktop software to access your rigs. Instead of Splashtop you can use Teamviwer they do the same job. And as your Main GPU is integrated one, the streaming software will not have big impact on the hashrate or stability of the rig.
  3. SMART PLUG – If the rig is frozen and cannot be accessed with remote desktop, then we need to restart it. I use smart plugs for that. You can monitor your power draw and restart your rigs with it (by switching power off and back on)

 

And that’s it, you’ve optimized your Mining rig the proper way 🙂

Hope you’ve learned a lot and that my guide helped you to achieve a better and efficient mining.

If you found this useful, consider donating ETH at 0x1339b94A820d5050C1849E024d9805C3161D0010. Thank You!

Good luck!