CryptoCurrency: Building a Rig Part 1

 

Recently the price of BitCoin has skyrocketed. This led to a lot of new people getting into CryptoCurrency trading and mining. I’ve never been much for using the traditional exchange interface, so I like to focus on the mining aspect. I have done a bit of CPU mining in the past, but this will be my first delve into GPU mining.

What I am looking for is a Motherboard(MB) with at least 4 PCI-E slots, and a pretty good processor for some CPU mining. While that runs, I can do some research on which particular GPUs I want to run. I also decided I was going to stick with a platinum rated power supply. There is no sense wasting money on cheap shit that wastes power. So, a platinum PSU is as efficient as I can get.
 

The Hardware
ASUS Prime H270-Plus
Intel Core i7-7700K + heatsink
EVGA 1000w Platinum PSU
8GB Crucial RAM
USB stick
 

Why this hardware?
The ASUS Prime was selling for $100 at Micro Center. This particular motherboard has 6 PCI-E slots. They were also bundling it with $30 off if you buy a processor. So, the motherboard fits my spec, and the i7 is pretty standard these days. So I picked those up together. I don’t really plan on utilizing all of the PCI-E slots on this board right away. So, 1000watt PSU should be more than enough to get an OS installed, and a few GPU plugged in.
 

alt text
alt text
 

The Software
I used an Ubuntu live image to get things up and running. This will probably change. I’ve been using docker in CentOS7 to spin up the latest versions of the miner in a docker container. But for some reason it doesnt want to work in an Ubuntu Live image.

To get the Ubuntu Live image up and running, I do the following

apt install git g++ libcurl4-openssl-dev make automake cmake openssl libssl-dev libgmp-dev
git clone https://github.com/JayDDee/cpuminer-opt.git
cd cpuminer-opt/
./build.sh 

 

Where is this going?
I have a pretty neat idea. I am thinking setup docker to listen on a tcp port. Then from my workstation, I can essentially tell it which coin/pool to mine by passing in the parameters. If I do this across the 4 machines I am mining from, I can write something that allows me to control all of them with a single command.