How to mine Etheruem with an Nvidia GPU (and Siacoin, Decred, Lbry, or Pascal)
Since cryptocurrencies have risen exponentially in the past few months people want in. And one of the best ways to make money with currencies like Ethereum and Bitcoin is to 'mine' them. When you mine a cryptocurrency you are running a program on your computer to use your computers computing power on the network. Whenever your computer solves a piece of the puzzle, a block in the blockchain, your miner is rewarded. There are two main ways to mine:
- Rent out miners. I will not be covering this topic today.
- Use your computer as a miner.
I will go through start to finish on how to set up an Ethereum miner on Ubuntu. This is because if you are mining with an Nvidia Graphics card the windows drivers are a little wonky so you will be limiting your hashrate. For me I have 2 GTX 980ti's in my gaming computer. When I mine Ethereum on windows I get around 5 Mh/s and when I mine on Ubuntu I get 40 Mh/s. For those of you with gaming computers this can be a nice passive source of income while you aren't playing games. If you have AMD GPU's I would suggest looking at this guide here.
Step 1: Make room on your PC
If you want to dual-boot and not just clean install you will need this step. Right click on the windows start menu, on the bottom left and select 'Disk Management'. Select your main HDD or SSD that you want to dual boot from, right click on it and press 'Shrink'. I suggest using at least 32gb just to be safe.
Step 2: Install Ubuntu 14.04
You can either dual boot your computer or run a clean install. To do this you will need a USB drive. Download the Linux Live application.
Linux Live
And you will need to download the Ubuntu 14.04 iso.
Ubuntu 14.04 iso
Once you have these downloaded open up Linux Live, select your usb you want to use and select the Ubuntu 14.04 iso you just downloaded. Then press the lightning button. Once it is done reboot your PC, and boot into the BIOS. You can usually do this by pressing F2 or F12 when the computer is booting up. Once you are here select 'Boot Menu' and select your USB drive. From here it is pretty self explanatory.
Step 3: Download the Mist Client
How to set up Mist
Once you have downloaded and installed this create your wallet and copy the address.
Step 4: Download Nvidia Cuda
Step 5: Download and Install dependencies
Now I will say I know how to use Linux and I have built quite a few computers with this OS, but this is just a list of dependencies that if I run all of them I don't have any problems. Some of them might not be needed, but they won't hurt. You will want to open your terminal by pressing 'Ctrl+Alt+T', and copy and paste these lines into the terminal and press enter. To paste into the terminal you can not just press 'Ctrl+V' you need to press 'Ctrl+Shift+V'. And if for some reason you need to kill a process that is running in your terminal you need to press 'Ctrl+C'. So here are all the dependencies, this is easily the longest part of the tutorial.
First we will need to set up a root password. To do this:
sudo passwd root
Then type your desired password.
Now to sign in as root:
su
Now to install all the dependencies:
sudo add-apt-repository main
sudo add-apt-repository universe
sudo add-apt-repository restricted
sudo add-apt-repository multiverse
sudo apt-get update
sudo apt install ocl-icd-opencl-dev
sudo apt-get install libmicrohttpd-dev libssl-dev cmake build-essential
sudo apt-get install automake libtool make gcc
sudo apt-get install libjansson-dev
sudo apt-get update
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-4.9
sudo apt-get upgrade
sudo apt-get purge nvidia-*
sudo apt-get purge nvidia-cuda*
sudo update-initramfs -u
sudo apt-get install libopenblas-dev liblapack-dev
sudo apt-get install linux-image-generic linux-image-extra-virtual
sudo apt-get install linux-source linux-headers-generic
sudo apt-get install nvidia-common nvidia-prime nvidia-settings
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt-get update
sudo apt-get install nvidia-375
sudo apt-get install libglu1-mesa libxi-dev libxmu-dev -y
sudo apt-get — yes install build-essential
sudo apt-get install python-pip python-dev -y
sudo apt-get install python-numpy python-scipy -y
sudo apt-get install libglu1-mesa libxi-dev libxmu-dev libglu1-mesa-dev
sudo apt-get install apt-file && apt-file update
Now install Cuda.
Find the place you installed Cuda and navigate to it. To do this it is easiest to download it and drag it into your home folder. To do this press the file cabinet at the top left of the screen. It should open up to the desired folder. You should see icons like Desktop, Documents, Downloads, etc. Now just drag your Cuda download here.
Go back to the command prompt and put in these lines substituting your Cuda version as necessary.
sudo apt-get install build-essential
sudo chmod +x cuda_8.0.61_375.26_linux.run
./cuda_8.0.61_375.26_linux.run --driver --silent
./cuda_8.0.61_375.26_linux.run --toolkit --silent
./cuda_8.0.61_375.26_linux.run --samples --silent
Now we just have a few more dependencies to install.
sudo apt-get update
sudo apt-get install cpp-ethereum
sudo apt-get install software-properties-common
sudo add-apt-repository -y ppa:ethereum/ethereum
sudo apt-get update
sudo apt-get install ethereum
Step 6: Download the Sia Client
Sia Download
If you want to mine something other than Sia you will need to create a wallet for that coin. Once you have downloaded it make a wallet and copy the address.
Step 7: Download the Claymore Dual Miner
Download Link
Find the most recent version for Linux. Right click on it, and select standard download. Once it is downloaded extract the file.
You can do this by dragging the download to our home folder and in the terminal typing.
To do this we don't want to be a super user so in the terminal type
exit
And now we can extract the tarball.
tar -xzf ClaymoreMinerFileName.tar.gz
Step 8: Edit the start file
Go in to your extracted Claymore file and find the 'start.bash' file. Select it, right click on it and click 'Edit'. Once you are here you will need to delete the contents in it and paste this with your addresses and press save.
export GPU_FORCE_64BIT_PTR=0
export GPU_MAX_HEAP_SIZE=100
export GPU_USE_SYNC_OBJECTS=1
export GPU_MAX_ALLOC_PERCENT=100
export GPU_SINGLE_ALLOC_PERCENT=100
#./ethdcrminer64 -epool us1.ethermine.org:4444 -ewal 0xf9ea6F60Dd61ffF6B2e1b34D274383AaBd918880.rig01 -epsw x
./ethdcrminer64 -epool us1.ethermine.org:4444 -ewal 0xf9ea6F60Dd61ffF6B2e1b34D274383AaBd918880.rig01 -epsw x -dpool stratum+tcp://sia-us-east1.nanopool.org:7777 -dwal ae847addc8f9a98c2dd41a2b35a3ca7d38da5e1fec0c423f9a1c6ac6f67e301c20fe6e6463dc/rig01/[email protected] -dcoin sia -dcri 18
You can change the number after -dcri to increase or decrease the intensity of dual mining. I have it set at 18 because this is the highest return for me. These addresses are set up to specific mining pools. Look around for the ones you think are best. Those are just my choices. This is also set up to mine sia, if you want to switch you will need to find a mining pool for the coin you want to mine.
Step 8: Start your miner
To see all the directories in your current location type 'ls'. I personally like to change the name of my claymore directory in the home folder to 'claymore' just so it's shorter. You can do this by selecting the directory you want to rename and pressing 'F2'. Now we will need to change directories to the claymore directory. So type in the terminal
cd claymore
Now we need make the 'start.bash' file executable, to do this type:
chmod +x start.bash
Now me personally I am a little superstittious when it comes to running things and I for some reason like to run my mining programs a super user. This will be a little redundant, but this is just how I do it.
su
Type in your password
sudo ./start.bash
Congratulations!! You are now mining Ethereum and Siacoin!
If you have any questions feel free to ask me. I'll help out as much as I can.
doesn't sound very complicated... lol
The way I mapped it takes like 30 mins total. Mining with an AMD card on windows is WAY easier. The longest part of that one is actually installing windows!
nice post,, upvoted all of your posts.
Well thank you! I appreciate it! :)
Nice one! does this work for nvidia 760?
I haven't tried it with that, but I would test it on Windows before you dual boot because the drivers might be okay since the 760s are a little older.
Thanks for your information
No problem! I'll be putting one out today about how to mine zcash
How do you go about overclocking?
Download msi afterburner if you are on Windows!
hi bro, im getting the gtx 1060 msi 6gb. i read around that it makes like 20mh/s on stock..
i will try it on windows as i am not expert linux :$
The Nvidia drivers on Windows are really bad so I bet you'll get max 5 Mh/s unless you do Linux
Interesting post. I was about to post a similair post. There's a lot of exchanges out there. I found that coinmarketcap.com gives quite a decent overview. An interesting website I found: https://www.coincheckup.com They seem to give this complete indepth analysis of all cryptocoins. Sorted by team, product, company, advisors, previous investors, etc. See: https://www.coincheckup.com/coins/Decred#analysis To check Decred Detailed report