This is a step by step guide on how to setup your own mining pool for things like bitcoin, litecoin, and other crypto-currencies.
This guide is meant to replace Novice’s Guide to Setting up a Crypto-Currency Mining Pool
Why the update? MPOS (Mining Portal Open Source) is very old now and NOMP (Node Open Mining Portal) has branched off into another project called uNOMP (Unified, Node Open Mining Portal). uNOMP has a very active development team and is updated on a regular basis. This not only ensures adequate support of new currencies, but also better security. uNOMP also has many things in one, and is easier to setup then the old MPOS/NOMP hybrid as described in the legacy guide.
I have ran several large mining pool operations, and helped out at several more. The purpose of this guide is to enable more people the opportunity to run their own pool, whether it be for their own miners or just out of curiosity to understand how it all works. This is by no means meant to be a guide so you can setup your own professional mining pool operation. Running your own mining pool that other miners other then yourself will use is not an easy undertaking, and requires extensive systems administration experience as well as a large budget, patience, troubleshooting skills, and a solid knowledge of how crypto-currencies work. This guide will not be going over any security features.
This guide is going over how to setup a uNOMP (Unified, Node Open Mining Portal) pool. This is meant to setup a mining pool for a single crypto-currency. This is not a guide for a multipool.
If you want to see what it looks like before you set it all up, head to the Example Pool that was built completely off of this guide.
- VPS with at least 1GB Ram, 20GB Disk Space and Ubuntu Server 14.04 x64
- Very basic knowledge of Linux
If you are setting up a bitcoin pool, you will need more then 20GB of disk space because the blockchain is very large.
I am using a Windows 10 based PC, and communicate with the VPS using Putty and WinSCP.
This guide will probably take you a long time, especially if you are new to Linux. I highly suggest you be patient, and take it one step at a time.
This guide is meant for novices. If you are already an experienced systems administrator then head on over to the uNomp Github and follow their directions.
A lot of these commands will seem very redundant, especially all the blank “cd” commands. Since everything is split up into different sections, sometimes readers can loose track easily. Blank “cd” commands can put them on track and get them into the right directory.
I will be using Litecoin (scrypt), I will not be going into specific of how to host something like dash (x11) or other algorithms. After you understand the basic concept of how uNOMP works, you will later realize it is not hard to change algorithms.
If you have the ability to snapshot your VPS, then I suggest you do that every time you complete a step. It will save you a lot of time if you make a mistake.
All shell commands will be surrounded with a code box like this:
Information I want you to insert into a file, or somewhere else will be surrounded with a block quote box like this:
info for a file
At this point you should have your VPS started, putty up and running and your logged in as root.
Let’s go ahead and setup the VPS before we get into the meat and potatoes.
By default there is no swap setup on my VPS, it is required especially on a system with limited memory. I am setting up a 4GB swap, which is the most common swap size used for a VPS.
dd if=/dev/zero of=/mnt/myswap.swap bs=1M count=4000
Now let’s add it into fstab so it will activate at boot.
Add the following line at the end of the file.
/mnt/myswap.swap none swap sw 0 0
Should look something like this:
Ctrl O to save, and Ctrl X to exit the nano editor.
Now your swap is setup, you can modify the size in the future if you need more or less.
Install Required Packages
nvm use 0.10.25
apt-get install build-essential libtool autotools-dev autoconf pkg-config libssl-dev
apt-get install libboost-all-dev git npm nodejs nodejs-legacy libminiupnpc-dev redis-server
apt-get install libdb4.8-dev libdb4.8 -dev
curl https://raw.githubusercontent.com/creationix/nvm/v0.16.1/install.sh | sh
nvm install 0.10.25
nvm use 0.10.25
All required packages are installed, we may have to hit a few more later but for right now you are good.
You never run things like your coin daemon (wallet), or other things as root!
Let’s create a user for your mining pool.
As root type:
Use whatever username you want, I will be using “poolguide” for this guide just because it is simple. Do not use the sample username I use, think of your own for security purposes. You will be prompted for a password, please use a password that is different from your root password.
The other info it asks for you can either fill out or just leave blank and hit enter.
Now let us give that new user sudo access:
adduser usernameyousetup sudo
A lot has been done to the VPS. Let us go ahead and reboot it as a good, safe practice.
That is it for the VPS setup, let’s move on.
Litecoin Daemon Setup (Wallet)
Now let’s setup the coin daemon, I will be using Litecoin.
Boot up putty and login to that new user we setup earlier.
git clone https://github.com/litecoin-project/litecoin.git
Now let’s compile litecoin.
sudo make install
The compile process will take a long time, especially if you have a small VPS with only 1 or 2 vCores. Once you do the command “sudo make” I highly suggest you take a break or whatever it is you need to do, because it will be a moment until you are ready to do the next command.
Now let’s go ahead and run litecoind (the daemon) so it will create the .litecoin directory in your users home dir.
You will get a message stating there is no configuration file, and they suggest such and such rpc user/pass. We are getting to that.
Now we need to setup the config file for the litecoind.
I am going to start using WinSCP to edit/add files, yes you can use nano, gedit, vim, or whatever shell based text editor you want instead. However, when a novice starts editing as many files as we are about to edit it will be easier for them if they use graphic interface for all of it. It will also help a novice understand the file structure better.
You can get WinSCP here: http://winscp.net/eng/download.php
I will walk you through WinSCP with this litecoind config file, but after that you should be able to use it easily if I just list out what directory you need to go to. You will see here shortly.
Once you install WinSCP, you should be prompted with a login screen.
- Select “New Site”
- “File Protocol” will be SFTP
- “Hostname:” is your VPS IP
- “Port number” is your ssh port that you have been using with putty
- “User name:” will be root
- “Password:” is your root password
Fill all that out and it should look like this (with your server info in there):
Click login, make sure to accept the host key.
Now that you have logged in, you are in the /root folder. Double click the “..” to back out of it.
The file path is /home/username/.litecoin
- Click on the “home” folder.
- Click on the folder that is named after your username.
- Click on “.litecoin” it will be grayed out like such:
- Right click on the white area in WinSCP and Go to “New” and “File”. Should look like this:
- Name the file “litecoin.conf”
A white text editor window should pop up, this is WinSCP’s internal editor and what we will be using to edit files. Now we’ll want to put some basic stuff into the configuration file. You should definitely use a different username and password then that I use in the guide. I am just using the ones that litecoind generated for me already.
rpcuser=litecoinrpc rpcpassword= wdYMsDT4E61jCv8xx6zZd6PYF3iZkjD7t3NpuiGpn6X rpcallowip=127.0.0.1 rpcport=2300 daemon=1 server=1
I understand that some of these .conf settings are redundant for litecoin, however in the past I have ran into certain crypto-currencies that did not allow localhost to connect, etc… Just thought this was the best overall config for a multitude of scrypt coins since the users following this guide are probably not setting up a litecoin pool. I also changed the rpcport, which is just a simple security measure I like to take.
If you are setting this up for a PoS (Proof of Stake) currency ensure that you put “staking=0” into the config otherwise your miners may not be able to withdraw their matured coins if they start staking.
The default listen port for litecoin is 9333.
Now that you have updated the litecoin.conf file, go ahead and click on the floppy disk icon in the top left of the WinSCP Editor.
Now that we have setup and saved the config file, let’s get back into ssh (putty) on your user that you created earlier.
You should get a message that states “Litecoin server starting” if for some reason you can’t get out of that command simply press Ctrl C in putty and it’ll fix it.
Now let’s make sure it’s updating.
You should see a bunch of info that looks like this:
Run that getinfo command several times, and you should see the “blocks” number updating everytime you run that getinfo command.
The wallet should be fully updated by the time this guide is over, however if you are quick or unsure simply run the getinfo command again and compare the block number to http://explorer.litecoin.net/ if the block number matches what’s on that site then you are good to go.
Now let us set the crontab so that the litecoin daemon (litecoind) will always start on boot.
- Select “2. /bin/nano <—- easiest”
- Use your arrow keys to scroll down to the bottom of the crontab.
- Add this line below the # symbols.
- Should look something like this:
- Press Ctrl O to save and Ctrl X to exit
The Litecoin daemon will now start on boot.
Last thing we need to do is get a new address for our litecoin wallet.
An address will show up, please keep record of this address. We will be using it later in the guide.
Mining Pool Setup
Now we are at the part you have been waiting for, actually setting up the mining pool. As mentioned earlier we will be using uNOMP for this. uNOMP already has the stratum server, webpage, payout system, and much more built into it.
You should have Putty and WinSCP up and running, you are logged in as your new username on Putty and root on WinSCP.
Download and Update uNOMP
sudo npm update
git clone https://github.com/UNOMP/unified-node-open-mining-portal.git unomp
sudo npm update
cp config.json.example config.json
Now let’s open up WinSCP.
- Navigate to /home/username/unomp
- Right click on config.json and select edit
- Find “website”:
- Underneath website, find “host”: and change the “0.0.0.0”, to your VPS IP
- Save It!
Here is a picture example, what I had you change is highlighted in yellow. I used a fake IP but please use your actual IP.
The rest of the default settings in the config.json will work, however it is recommended you open it up on WinSCP after this guide is over and change things like your site title, admin password, stratum host, etc… For right now we will be using the default config settings to make the guide easier to follow.
Your asking, what do you mean by pool configuration? I thought we were doing that! Well yes, you are. However, the way the uNOMP works you can have multiple pools running on one instance. For this pool configuration portion of the guide you will be setting up the Litecoin pool. So if you want another pool for your currency of choice in the future, you can add another pool config into the pool_configs folder and you will have another pool running for a different currency (as long as you setup the coin daemon, make sure the coin.json is in unomp/coins/ and the settings are correct in the pool config).
cp litecoin.json.example litecoin.json
Now let’s open up WinSCP.
- Navigate to /home/username/unomp/pool_configs
- Right click on litecoin.json and select edit
- Find “enabled” and change it to true,
- Find “auxes”: and delete everything inbetween the [ ], if you do not understand there will be pictures below.
- Find “address”: and place that address we saved earlier from the litecoin daemon setup.
- Find “paymentInterval”: and change it to 30,
- Find “minimumPayment”: and change it to 0.01,
- Find “daemon”: and underneath it find “port”: and change it to the user from your litecoin.conf (see litecoin daemon setup)
- Find “user”: and change it to the password from your litecoin.conf (see litecoin daemon setup)
- Find “password”: and change it to the password from your litecoin.conf (see litecoin daemon setup)
- Scroll down to “daemons”: after ports and configure your litecoin daemon (same info as the past 3 steps)
- Save It!
Here are picture examples, everything I had you change is highlighted in yellow.
Start your Mining Pool
Now it’s time to start everything up, fingers crossed!
sudo node init.js
You should see something like this:
If you see something like the picture above, congratulations you configured everything correctly. If you got an error somewhere, the first thing I suggest is while in the unomp directory, do a quick “sudo npm update” then try again. If it does not work, then read through the guide again and try to spot any mistakes. If that does not work, then use a search engine to lookup your error. Odds are there is a solution for it on github or somewhere else.
Now let’s see if your webpage is working, use your web browser and go to http://yourvpsip
You should see something like this:
Now fire up your miner, I am not going to go into specifics about setting up cgminer or what have you. If you don’t know how to setup a miner, you probably should of researched that long before you attempted to setup your own pool.
Details for your miner:
stratum tcp://yourvpsip:3032 -u ltcpayoutaddress
Open up SSH Terminal (Putty) that you used the command “sudo node init.js” in. You should see that your LTC address was authorized, should look something like this:
Overtime you will see accepted shares. You can also look at the statistics on your uNOMP webpage.
Now that you verified everything is working, go ahead and open up the Putty window again and “Ctrl C” to stop the pool for the time being.
Forever will make it so you can start a nodejs application (unomp for instance) and close your SSH client (Putty) and it will still remain running.
sudo npm install forever -g
Forever is now installed, now let’s run your pool.
sudo forever start init.js
You can now close out of Putty and your pool will keep on running.
You may want to read up on forever on their github page, https://github.com/foreverjs/forever. You can use forever to log all outputs of uNOMP, which will make life much easier if you run into an issue later on. You can simply read the logs and find the error.
If you want to stop uNOMP, simply go to the unomp directory again as your user and type:
sudo forever stop init.js
Congratulations if you completed this guide successfully, it is not an easy task especially if you are a novice with mining pools and linux. Remember that the best way to learn something is just to mess with it, and see what you can do. Push your mining pool to it’s limits, edit the software, mess with the database, etc… These things will make you more knowledgeable. I did not get to where I am at from simply following guides.
You can edit the actual uNOMP website by going to /unomp/website/. If you have a basic knowledge of HTML you should have no issues, the website is still in early development. Please remember that this guide has not gone over the security aspect whatsoever. You need to secure your VPS! There is plenty of guides about this on the internet.
If you have any issues, please review the guide again and make sure you have not missed anything before you start asking questions. It is a huge guide and you can easily miss a step. Also, search engines are your friend.
I get asked a lot about what sort of server power is required to run a mining pool. Based off of the scrypt algorithm, you want about at least 1 CPU Core and 1GB of Memory per 1 GH/s to be on the safe side. This is not including at least 1 CPU Core and 1GB minimum to run your frontend (website), which will also fluctuate depending on the amount of traffic. Internet connection wise, you want at least a 10Mbps port. Most VPS or Servers that you can rent usually have at least a 100Mbps port now-a-days. I would highly recommend SSD drives, especially if you plan on going over 1 GH/s on your pool. Mining pools love to use a lot of IOPS.
I would like to thank the developers that made uNOMP. I had to cross-reference their guides multiple times to make this one. Please check them out on Github, and donate to them if you are using their software.
You are free to use my guide whichever way you want, just please give credit to my site BlockGen.
GeForce GTX 1070 Ethereum Mining - Legit Reviews
Short Bytes: VPN, or a virtual private network, helps you to make your online activities more private and anonymous. It can protect you from the prying eyes of hackers and government agencies, which are after your personal information and actions. Some of the best reviewed and trusted VPN services are Private Internet Access, ExpressVPN, and IPVanish. In this list of best VPN services, you can find the qualities of these services, their price, and downloading links.
Best VPN Services Of 2017
1. Private Internet Access
Private Internet Access is one of the world’s leading premium VPN services which is based in the USA. If you’re taking your security for granted, it’s time to reconsider your preferences and invest in some reputed VPN service like Private Internet Access. It’s one of the best VPN services that won’t burn a hole in your pocket.
Recommended by many reputed websites and privacy-focused blogs, Private Internet Access can be simultaneously used by up to 5 devices with unlimited bandwidth. It currently supports OpenVPN, PPTP, and L2TP/IPSec protocols. Private Internet Access doesn’t monitor the users or sensor its servers. It has servers located all around the world (more than 3,000 servers), so you don’t need to worry about bad data speed. It also supports BitTorrent downloading and ad-blocking.
Android, iOS, Chrome, macOS, Linux, Windows
Private Internet Access VPN price and payment method:
For using this anonymous and secure VPN service, you need to spend $6.95/month. If you choose the yearly plan, you’ll need to spend $3.33/month, i.e., $39.95/year. Buying a Private Internet Access subscription can be accomplished using PayPal, credit cards, Google Wallet, OKPay, etc. Bitcoin is also accepted as a mode of payment.
— Private Internet Access
ExpressVPN is a reputed private internet network service that promised to deliver the best security and private experience. Based in the British Virgin Islands which has no retention laws, ExpressVPN doesn’t keep user logs. It works on the shared IP basis, so that a single IP can’t be tracked back to a single user. It also has a kill switch that bars the apps from connecting to the internet if the VPN is disconnected.
As its name suggests, ExpressVPN is known for its speed. With the support for PTP, OpenVPN, and L2TP protocols, ExpressVPN has established itself as one of top VPN services around. They also have a .onion website. This VPN service is great for torrent and P2P downloading as all its servers are optimized for the same. It also has no restrictions on how much you use the services. Another thing, ExpressVPN doesn’t store logs, so you don’t need to worry about that.
Windows, Linux, macOS, Android, iOS
ExpressVPN price and payment method:
ExpressVPN’s yearly plan, which is also its most popular one, costs $8.32 per month. The yearly plan also comes with 45-days moneyback guarantee. Being one of the best VPN services around, ExpressVPN allows you to make payment via different modes, including BitCoin.
NordVPN, a Panama-based company, is known for its simple-to-use VPN solution with hundreds of worldwide servers located in 57 different countries. Its Double VPN technology encrypts data twice to provide you a better peace of mind. As it follows the zero log policy, no log of user activity or IP addresses is kept.
For torrent downloading, the majority of NordVPN servers are a good choice. Other servers are optimized for other purposes like streaming, Tor-over-VPN, and double encryption. Using NordVPN, you can connect up to six different devices simultaneously, which is great for a small household.
Windows, Linux, macOS, Android, iOS
NordVPN price and payment method:
To use NordVPN, you’ll need to spend $5.75 per month if you’re choosing the annual plan. This way you can avail 52% discount. For monthly plan, you’ll need to spend $11.95 per month. Apart from credit card, PayPal, and other popular payment modes, you can also choose the Bitcoin payment method.
IPVanish, a Florida-based VPN service, is a top VPN service for general users. With more than 750 servers spread across 61 countries, you can rest assured that IPVanish won’t disappoint you with its performance. It is also known for its no-log and no ad-injection policy. The website of IPVanish provides detailed instructions regarding the setup process to make the overall process hassle-free.
IPVanish supports Open VPN, L2TP, and PPTP protocols. Just like most of the other services on this list of best VPN services, you can connect up to five devices with IPVanish. For the BitTorrent downloaders, IPVanish is a boon as it doesn’t restrict P2P downloading. It’s also a great VPN for Kodi users. However, unlike our top recommendation Private Internet Access, IPVanish doesn’t come with ad-blocking.
Android, macOS, Linux, iOS, Android, Chrome OS, Windows Phone
IPVanish VPN price and payment method:
The best-value IPVanish’s yearly plan costs $6.49 per month. Just in case you wish to go for a single month plan, you’ll need to spend $10. For payment, you can also use BitCoin to remain anonymous. It goes without saying that you can use other methods like Visa, MasterCard, American Express, PayPal, etc.
PureVPN is a Hong Kong-based VPN service that’s known for its speed and performance. With its end-to-end encryption and variety of tunneling protocols, PureVPN promises to deliver complete online privacy to its users. It has more than 750 servers spread across 141 countries. Its inbuilt tool chooses the best server based on different factors.
PureVPN has repeatedly scored great points in speed tests. It also comes with additional add-ons that let you use a NAT Firewall or get a dedicated PC address. PureVPN supports torrent downloading on more than 200 of its servers.
Android, macOS, Linux, iOS, Android
PureVPN price and payment method:
PureVPN’s 2-year plan costs $2.95 per month. It comes with an attractive 7-days money-back guarantee. If you wish to grab a single month’s plan, you’ll have to spend $11 per month, which doesn’t make much sense. This premium VPN accepts BitCoin payments. You can also select the traditional payment modes like credit card, PayPal, etc.
StrongVPN is based in California and it promises to provide a log-less anonymous internet experience. It has more than 400 servers spread across 24 countries to help you out. You can connect StrongVPN using the popular protocols like PPTP, L2TP/IPSec, SSTP, or OpenVPN. While the users are limited to two devices at a time, the bandwidth is unlimited.
There is also an option to scramble the web traffic to make the VPN traffic look like normal traffic. StrongVPN is one of the best VPN services for unblocking US Netflix and Hulu. Its servers support torrent download as well. The setup of StrongVPN is also simple and it comes with good documentation.
Windows, macOS, Android, iOS
StrongVPN price and payment method:
If you wish to choose the yearly plan of this premium VPN service, you’ll need to spend $5.83 per month. The single month plan costs you $10 per month. Both of these plans have free StongDNS included. Apart from the popular payment methods, anonymity-focused Bitcoin is also available as a payment mode.
The #7 entry on this list of best VPN service providers is VyprVPN. It’s a popular VPN service that claims to be the world’s most powerful VPN. It offers a high level of security and downloading speed, thanks to 700 servers and 200,000 different IP addresses.
VyprVPN uses and manages all of its hardware to ensure end-to-end privacy. It supports PPTP, L2TP/IPsec, and OpenVPN. It also comes with a Chameleon technology for defeating VPN blockades and throttling. It makes it very useful in geographical regions like China where the government has employed strict restrictions.
Windows, macOS, Android, iOS, Linux
VyprVPN price and payment method:
Just like other top VPN services for accessing blocked websites and anonymity, Golden Frog VyprVPN comes in different plans. The annual plan of VyprVPN, which allows 5 simultaneous connections, costs $6.67 per month. The standard VyprVPN plan with 3 connection support costs $5 per month when billed annually. These plans also come with a 3-day free trial.
TorGuard is own by a US-based company and follows the no logs or time stamp policy. It’s a special VPN service for torrenting and P2P file sharing. Please note that it’s not connected to the Tor Browser in any manner. Here, Tor refers to torrent.
Apart from anonymous VPN service, TorGuard also provides proxy and email service. The VPN service has more than 1600 servers in more than 50 countries. It allows 5 simultaneous connections and unlimited bandwidth. If you need more devices, you can do so by paying $1 per month. TorGuard supports OpenVPN, SSTP, L2TP, and IPsec protocols.
Windows, macOS, Android, iOS, Linux
TorGuard price and payment method:
If you choose the yearly plan of this excellent VPN service for torrent downloading and safeguarding your privacy, you need to spend $4.99 per month. Going for the single month plan will cost you $9.99. Bitcoin payment method is also supported here.
9. Buffered VPN
Buffered VPN is a Gibraltar-based company, and promises to provide a decent security and no-compromise performance. You can use Buffered VPN and connect up to five devices simultaneously. Its server network is spread across 40 countries and the new servers are being added. It doesn’t store any private logs.
Its port discovery feature automatically searches for open ports to run OpenVPN over. It’s a feature that sounds useful for travelers. It should be noted that Buffered VPN doesn’t come with a Kill Switch. It supports BitTorrent traffic and treated equally.
Windows, macOS, Linux
Buffered VPN price and payment method:
The yearly plan of Buffered VPN costs $8.25 per month and monthly plan costs $12.99 per month. It should be noted that unlike other service providers in this list of best VPN services for anonymity and privacy, Buffered VPN doesn’t support Bitcoin payment mode at the moment.
— Buffered VPN
TunnelBear, the last entry on this list of the best paid VPN services, is known for its slick interface. It follows the no-logs policy and provides good encryption. It provides good download speeds and comes with a kill switch. Moreover, it also works with Netflix.
TunnerBear also offers a free VPN service that restricts one to just 500MB data per month. Compared to other premium VPN services, TunnerBear has lower server density; it has servers in 20 countries. It should also be noted that it doesn’t support P2P filesharing or BitTorrent downloading. It also doesn’t come with the inbuilt ad-blocking feature.
Windows, macOS, Android, iOS, Chrome, Opera
TunnelBear price and payment method:
As said above, TunnelBear VPN comes with a free VPN plan that gives you 500MB of free data every month. The paid plans are of two types. The yearly plan costs you $4.99 per month, and monthly plan costs $9.99 per month. Apart from payment methods like VISA, MasterCard, American Express, etc., TunnelBear VPN can also be purchased by making a payment in Bitcoins.
The first two entries on this list, Private Internet Access, and ExpressVPN, are one of the best reviewed and well-received VPN services. Private Internet Access VPN is known for being affordable and ensuring complete security. ExpressVPN, on the other hand, is known for its speed and performance.
What is a VPN service? How Does it work?
In today’s times, VPN (and other privacy-focused services) are witnessing a great increase in the popularity. VPN, or a Virtual Private Network, is a private and controlled network that lets you connect to the internet. It’s like your private lounge where you can browse the web without any foreign interference. VPNs encrypt 100% of your computer traffic and routes it through the VPN servers located all across the world.
Just in case you’re willing to know about the working of a VPN and its different components, don’t forget to read our dedicated article on the same.
Why should I use a VPN service?
Apart from hiding your internet activity from your internet service provider, a VPN service also lets you bypass the governments’ censorship practices. Here are some major reasons to use a VPN service:
- Hide from your ISP
- Use public Wi-Fi without risk
- Bypass government/office internet restrictions
- BitTorrent/P2P downloading
This isn’t the end. Privacy is your basic right and you shouldn’t hesitate from using methods to secure your digital life. Here’s why you must use VPN for torrent downloading. For more reasons to use a VPN service, read this dedicated article.
Are free VPN services as good as paid ones?
There’s a big reason why all the VPN services aren’t free. Providing VPN services and encryption to millions of users demands hundreds of servers all across the world. You might be promised multiple security features by a free VPN provider, but they might come with restrictions like low speed, limited bandwidth, insecure encryption, and risk of logging your personal information and sessions.
Here are some more articles on VPNs to help you understand its importance. Do give them a read and share your feedback with us:bitcoin-qt debian jessie.
Ethereum GPU Mining on Linux How-To – Mirco Bauer
Energy-efficientcryptocurrency mining saves you money, saves the planet, and can make you money. The trick is to maximize your hash rate per watt or reduce your system’s overall energy footprint. Here are the components and configuration settings needed to maximize your computer’s energy efficiency for mining the cryptocurrency Ethereum.
Ethereum Mining Precursor
There are two approaches to reducing power costs when mining Ethereum (or any cryptocurrency):
- You can reduce the total wattage consumption of the system.
- You can maximize the amount of cryptocurrency mined relative to its power consumption.
Both design styles end up looking very similar to one another. That’s because cryptocurrency mining focuses on two parts: the graphics card and the power supply. The rest of the computer can be little more than scrap heap pulls.
Let us begin with the most important component: the Graphics Processing Unit(GPU).
Parts for Building Your Ultra-Efficient Miner
The most energy efficient GPUs around come from Nvidia. Unfortunately, Nvidia GPUs aren’t quite as good at solving cryptographic hashes as AMD hardware. More or less, if you want energy efficiency (without paying a fortune for a 1070 or 1080), your only option is an AMD graphics card. The most energy efficient of these is the AMD Radeon RX 460 or RX 470 (or the pricier RX 560 and RX 570). The RX 470 pulls around 145 watts, with the recommended power supply for it producing around 350 total watts. The RX 460 on the other hand, uses a total of 75 watts. That makes it easier to deploy on single-card mining rigs.
The hash rate of the RX 460 is reported to be around 11 mega-hashes per second (MHS). With a “peak” wattage consumption of 75 watts, that translates to 0.147 MHS/W. The 470 produces a hash rate of around 25 MHS with a power consumption of around 120 watts for 0.208 MHS/W. Of the two, the 470 offers better efficiency per watt. But the 460 is easier to deploy on low-cost, low-end systems. And the 470 costs a great deal more on secondary markets. More or less, the 470 is running for well over $350 on eBay, whereas you can still get a 460 for around $100.
Note: The more RAM, the better the hash rate of the card. If you can get more RAM, do it.
The RX 460 Is Easier to Power
GPUs like the RX 470 require additional power from either a 6-pin or an 8-pin connector, supplied by your power supply unit (PSU).
Unlike the 470, the 460 draws so little power that it can operate entirely off the power supplied by the motherboard’s PCIe connector (which maxes out at around 75 watts). That means you don’t need an eight or 6-pin connector, so it can almost certainly operate off the energy supplied by what’s known as a picoPSU: a tiny, fanless, highly-efficient PSU.
The power supply determines how efficiently a computer pulls current from the wall socket. Unfortunately, the standard PSU converts from wall current (Alternating Current, also known as AC) to Direct Current (DC) at around 70 percent efficiency. That means 30 percent of the power pulled from the wall gets turned into waste heat. Fortunately, a variety of PSUs can convert at 80 percent and higher. When certified by the 80 Plus organization, a power supply unit receive an efficiency rating which varies depending on the load of the unit. The ratings vary between 80 , 80 Bronze, 80 Silver, 80 Gold, 80 Platinum, and 80 Titanium. At the highest end of the spectrum, PSUs produce above 90 percent efficiency at all loads, but they tend to cost a fortune.
I prefer using what’s called a picoPSU. A picoPSU generally supplies power somewhere under 200 watts. It also tends to offer higher efficiencies than standard power supplies, at around 80 to 90 percent efficiency. If you’re using an RX 460, you can get away with a picoPSU. The model I recommend is the 160-XT. The XT includes a 4-pin CPU connector.
On the downside, you can’t just slap a picoPSU into a case without making modifications. For example, I had to run the DC power jack through my case’s three-pronged female port. On top of that, picoPSUs usually only support a single SATA-powered device. If your case places its storage drives in odd places, you might also need an extension cable.
The Motherboard and Processor
There is only one requirement for the motherboard: it needs to support a full-size GPU. The processor doesn’t matter.
I would normally recommend using an Intel Atom motherboard. Unfortunately, no consumer-class Atom board offers full-sized PCIe x16 ports. Also, there’s some confusion regarding how much power the PCIe slot produces. According to its specifications, a PCIe x16 slot can deliver around 75 watts. That should be enough to handle the 75-watt draw of the 460, but some 460 manufacturers include an optional 6-pin connector — for added safety.
Fortunately, a handful of AMD motherboards include full PCIe slots and low-power processors. AMD released two different lines of processor that offered a winning combination of low power consumption, low cost, and a full PCIe slot: the AM1 platformand a series of motherboards with soldered-on processors. Of these, I prefer the ECS KBN-I/2100 — but these tend to be hard to find and overpriced. Fortunately, the AM1 platform provides similar low build cost and low power consumption. For example, you can find an AM1 dual-core Sempron processor for around $35. And the motherboard costs around $25 with Prime shipping.
The Rest of the Computer
The rest of the computer doesn’t matter much. In general, you want a case that can adequately cool either an RX 460 or RX 470 — but GPUs include their own cooling mechanism. The basic idea behind a case is that it shouldn’t impede the GPU’s ability to cool itself. Some people even choose to do open air builds. An extreme few daisy chain together multiple 470 GPUs on Ikea storage shelves!
Sample Build: Super Low-Energy Ethereum Miner
Here’s what my ideal build looks like:
- Motherboard CPU: ECS KBN-I/2100 ($60 via eBay)
- GPU: XFX 4 GB RX 460 (Amazon)
- Case: RAIDMAX Elements ($30 via Newegg)
- PSU: 160XT picoPSU rated for 180 watts with adapter (Amazon)
- RAM: Crucial DDR3 1 x 2 GB DIMM (Amazon)
- SSD: DREVO X1 Series 60 GB SSD (Amazon)
Total wattage consumption: 100-120 watts
Estimated hash rate: 11 MHS/S
Hashes per watt: 11 MHS/100 W = 0.10 MHS/W
A slightly more expensive miner would differ in its PSU and GPU, but otherwise should look identical. Instead of using an RX 460, it might use an RX 470 (or even 480). Unfortunately, the prices of higher end cards has gone through the roof. I wouldn’t advise anything beefier than a 460 — just enough to get your feet wet mining crypto without costing a fortune in build costs and power.
The SSD will ensure that this system is fast to boot and configure, and you could double the RAM by purchasing two 2 GB DIMMs instead of one. This would slightly increase the hash rate for very little additional cost.
Configuring Your Miner: Undervolting Your GPU
Like with CPUs, you can reduce the voltage supplied to the GPU and decrease the power consumed and waste heat produced. Whether or not there’s a trade-off depends on the silicon lottery. Most discrete graphics cards can undervolt