30 days with the Ghetto rig

We’ve been running the Ghetto rig for approximately 30 days now and some numbers are coming in that I thought I should share. I’m sharing the complete history for our mining address here, but we’ve only been mining with six GPUs since around 2017-07-20. Before that we had four (because of a PSU shortage) and before that we were mining with two cards but against a different address.

The numbers

As you can see we should soon reach 1 ETH which would be considered some sort of milestone.

mining stats

Statistics from running the Ghetto rig the 30 first days

What is a little worrying (and completely expected) is the recent trend starting late July in the Days between payout column, from 1.15 to 1.57. It’s not all that dramatic in the following graph but that’s just because it’s broken with data prior to July 20th.

Days between payment graph

Days between payment graph

Is winter coming?

Looking at the Ethereum difficulty graph here shows that there has been some movement since the beginning of August.

Graph

Difficulty graph since mid July 2017

Are we starting to feel the effects of the Ice Age? Built into the protocol is a time bomb making it more difficult to mine as time goes by. The idea here is to make users move from the Proof of Work scheme of today to the future Proof of Stake protocol Casper in which mining is obsolete.

I can’t help to think that there is so much invested in mining hardware right now that just because Ether mining might be on the way out, some other coin will attract the miners (and the attention). At least for a short while. If the Proof of Stake algorithms proves viable then maybe all mining based alt coins will eventually fade away. As of now I think the potential of the ETH price still makes it interesting to mine.

the ice age

the ice age is coming

Building the Ghetto rig – part 3

So we had four cards up and running in the Ghetto rig. We were short a PSU with sufficient PCI-E ports to connect the final two, but recently we got a hold of the cables that made it possible to switch out a Corsair HX1050 from one of our gaming rigs. Then we could connect the last two cards and it eased our worries that a 750W PSU couldn’t handle the stress very well.

new psu

new Corsair hx1050 PSU

new psu in place

new HX1050 PSU in place

We also got two more case fans to drive out the heat from between the two new cards as we did with the ones that were already mounted.

6 cards mounted

6×1060 mounted on board with new case fans

Easy peasy, six cards up and running. When mining with all six 1060s we only use 591 W from the wall!

drawing 591W

Using 591 W of power from the wall while mining with 6×1060

..and we are hitting 130 MH/s, maxing out at 60 C per card.

mining with 6x1060

Mining with 6×1060 using Claymore and reaching 130 MH/s

Since the cards where not standing up by them selves very well we screwed each card to the board.

stabilized gpus

GPUs stabilized by extra screw

And that’s it! The rig is complete. It’s quite portable, somewhat modular, less power consuming than we initially thought and now it remains to be seen if it’s profitable. We are aware that we started this project late into the mining craze and right now profitability mainly depends on the future price of ETH. I hope to follow up with a post on the economics once we have enough real life data on power costs and ether yield.

Building the Ghetto rig – part 2

After waiting for weeks for the Chinese to deliver some sort of sign that they were planning to ship the PCI-E risers I ordered, we tried Amazon instead and had them delivered after a couple of days. That meant that we were ready for the second part of building the Ghetto rig. But first a look at recent events…

The last couple of weeks has been interesting

crypto right now

crypto right now

eth usd 60d chart

eth usd 60d chart

Whats behind the plunge in the graph? Lots of things. ETH was up over 5 000% this year when it hit the all time high around $400 so part if this might be the market making a needed recovery. Early investors are bound to cash in sometime. Also, the ETH price follows its big brother currency Bitcoin closely and recent worries in the Bitcoin community about a possible split and protocol changes affected the whole crypto market. The price is up 33% today at the time of writing, so the next couple of days should be interesting, specially from a trading perspective.

Mounting the risers to the Ghetto miner

But we are not trading right now, we’re mining! We headed out to a hardware store to buy a normal wooden board with the dimensions 20 cm x 100 cm x 2 cm to have something to mount the risers on. We reasoned that wood is cheap, sturdy and easy to work with. It worked out well! I sawed it off to give each riser (and GPU) 10 cm. Pro tip: before screwing anything together, measure it out properly so the cables from the motherboard and PSU will reach the cards.

measuring out the cards

Measuring out the cards on the board

measuring out the risers

giving each riser and card about 10 cm each

We fastened each riser to the board with two screws, four seemed like overkill for the job. To mount this glorious looking GPU board to the mining “case” we drilled two 4 mm holes through the case and the board and screwed it together. This brought some much needed stability to the rig.

Risers installed

Riser cables going in to the motherboard. Get all your cables together before mounting something obscuring on top.

Risers screwed to the board

Risers screwed to the board and board screwed to the case

board to case

board screwed to case

Mounting the cards to the risers

Now we are getting close. Just put the GPUs in their risers and hook up power to the riser and the GPU. We got SATA power cables with the risers but after reading this post on Reddit we were not going to use them. The risers themselves had molex connectors so we just hooked them up directly to the PSU.

cards mounted

cards mounted and hooked up on the board

You might have noticed that we only mounted four of our six cards, and that’s because we haven’t solved the PSU situation yet. The Corsair RX750 we have right now only supports 4 PCI-E cards and it would probably not handle the power load from six cards very well either. But four out of six ain’t half bad and it will be easy to mount the other two cards later since the riser board is prepared for it.

We figured that we needed to manage the heat between the cards so just like last time we slapped some case fans right on to the cards with zip ties. This turned out to be very effective with pushing the hot air out.

fans mounted

Good to go. Case fans mounted on cards.

The moment of truth

Everything was in place, time to hit the button!

fail

the look of failure

Goddammit that’s not what you want to see after a couple of hours working, obscure error messages when trying to boot up. It also said it couldn’t find any keyboard before jumping to that message.

We pulled out all of the risers and booted up without any GPUs (the HDMI is connected to the Intel card on the motherboard) and it worked. I remembered that I read somewhere that you should enable 4G Decoding in BIOS when hooking up many cards to the motherboard, so we did that. Then we installed one card at the time. On card 3 we got a Blue Screen of Death, but hopefully that was just a one time thing while Windows were figuring out what the hell we were doing with so many GPUs. Anyway, all four cards were successfully installed and up and running!

4x1060

Device manager showing 4×1060

Mining

Time to see what this thing could do. We loaded up our mining profile with MSI Afterburner and fired up Claymores miner. We usually mine with Genoil but Claymore is better when testing things out since it outputs easier to interpret hashing speeds.

mining with 4x1060

mining with 4×1060

And there we go. ~90MH/s hash rate and each card using ~80w. Interestingly the cards were running a couple of degrees cooler (54 C – 58 C) than in the first setup. This is probably due to that they are further from each other when mounted to the board as well as the case fans can more effectively push away the hot air.

Next time, installing two more cards and a more powerful (or secondary) PSU.

Building the Ghetto rig

My original plan was to:

  1. Mine some ETH with my gaming PC.
  2. Sell ETH for fiat currency on Kraken.
  3. Transfer money to my regular bank account.
  4. Build a proper rig.

More power

Check, check, check and now working on number 4. I got together with two friends and made an investment:

hardware for the ghetto rig

Hardware for the ghetto rig

We went with similar parts to what I used in my gaming PC with some exceptions.

  • Core i3 CPU. Cheap and doesn’t use much power, but not completely worthless. One could use even cheaper CPUs but we reasoned that since we might need to repurpose the rig in the not so distant future that might not be optimal.
  • ASUS z270-P motherboard. This guy managed to build a 8 GPU rig with it so it should work for our initial 6 GPU build.
  • 6x MSI GeForce GTX 1060 6GB OC. Cards are getting increasingly hard to find. This was the only 1060 model we found that we could buy six of. AMD cards haven’t been available for months, otherwise there might have been more value in rx570 cards.
  • Corsair RM750x PSU. This could be where we failed some. If we would be able to connect all GPUs to this PSU we might put to much strain on it. Each of those GPUs will use 85-100W and then you need some for the rest of the hardware. There is a plan B and C though. We have a 1050W PSU available that’s not being used to its’ full potential and we might swap that one for this RM750x. Plan C would be to fit in a secondary PSU and use two in the rig. The PSU situation is the same as with the GPUs, there are just no powerful PSUs in stock at the moment.
  • 2×4 GB Corsair Vengance DDR4. Maybe more than we need but same reasoning here as with the CPU.
  • Cheap WD Green SSD

Since we didn’t buy a case we also needed a power button. I ordered this from AliExpress a couple of weeks ago:

power button

Power button for when you don’t have a case

To be able to connect 6 GPUs to one motherboard you also need PCI-E risers. There are two PCI-E x16 and four PCI-E x1 slots on the board and with these risers you can connect x16 cards to x1 slots. The risers also makes it possible to get the cards (and heat) away from each other which is vital. They haven’t arrived yet though so for now we will only install two cards in the two available 16x slots.

pci-e risers

Risers that connects x16 cards to x1 slots

Putting things togheter

Inspired by all the milk crate rigs you find on the Internet, we went with this:

ghetto case

the ghetto case

It isn’t very well ventilated so we needed to do some work on it, but the motherboard and PSU went magically well inside:

z270-P and RX750 in case

z270-P and RM750x in case

ventilation for psu

Ghetto style ventilation for PSU

modded case

case modded and parts some fitted

pulp ball

To put some distance between the case and the motherboard we needed to raid my five year old daughters room for some ordinary pulp balls. I admit, we came pretty unprepared for this step but it worked out great. Six screws, each through the motherboard and the case with one pulp ball between the case and board. On the bottom where the screws were sticking out we put more pulp balls to hide the screws and get feet for the case. We also used them as distances between the side of the case and the PSU and then secured the PSU with a cable tie. Success.

the ghetto rig

the ghetto rig with two 1060 cards fitted

Once the GPUs where in place we slapped an old case fan directly to the cards to help further with driving out hot air in between.

Results

rig up and running

The ghetto rig up and running

It’s alive! And also mining ETH. We tweaked the cards with MSI Afterburner (power target 70%, memory clock up) and were getting ~23 MH/s per card at less than 60C temperatures after 6+ hours of mining.

ghettominer mining

Getting ~46 MH/s average hashrate

What we need to do next is to wait for risers to arrive, solve the PSU situation and modify the case to support four more cards.

Money in the bank

I finally got tier 2 verification on Kraken which meant that the whole “from mining to money” process should be working.

Recipe for making your GPU buy you beer in 12 easy steps

  1. Download and install Mist and create a new Ethereum address. Be prepared to struggle some when syncing with the chain and keep the developers tools console open to see when/if things fail. I guess UX isn’t yet a top priority.
  2. Protect your encrypted key files and your password. Losing them means losing control over your funds.
  3. Install a miner such as Claymore.
  4. Tune your GPU for mining.
  5. Join a mining pool such as Nanopool or Dwarfpool and start mining. Eventually you will get a payout and have a balance on your address.
  6. Join an exchange such as Kraken so that you can trade crypto for your currency of choice. In fact, do this as early as possible since it takes time to get verified for fiat currency deposits and withdrawals. Maybe I was unlucky but it took me three weeks. After getting in touch with them on Twitter they fixed my verification within minutes though.
  7. Generate a deposit address on Kraken so that you can deposit the Ether you’ve mined.
  8. Transfer some ETH using Mist from your address to your new Kraken address.
  9. Sell ETH for EUR (or whatever is convenient for you).

    selling some eth on kraken

    selling some eth on kraken

  10. Set up your regular bank account in Kraken for withdrawals and make a SEPA transaction.

    SEPA withdrawal confirmed in kraken

    SEPA withdrawal confirmed in kraken

  11. Wait a day or two (actually took less than 24 hours in my case) and voila, money:

    SEPA transaction

    Incoming payment from Kraken to my regular bank account

  12. Buy beer
beer bought by profits from mining

Beer bought with profits from mining. Also more 1060s. We’re putting together a rig.

Rinse, repeat, buy more hardware and mine until the Ice Age hits or Casper makes mining obsolete. Then switch to mining a new crypto currency if there are any profitable ones left or sell your GPUs and short the NVIDIA stock since the second hand market will be flooded with hardware.

Tuning the ASUS 1060 DUAL 6GB GPU for Ether mining

When mining for ETH you really want to get the most hashes per second at the lowest power consumption possible. There are a couple of calculators out there to help you play around with these parameters and see what kind of profit you would be getting.

I bought a power meter and plugged it in to see how much power my rig was consuming when mining. I also installed ASUS GPU Tweak II to be able to control some parameters of the ASUS 1060 DUAL 6GB GPU and HWInfo to get more detailed reading on memory frequencies, temperatures and power consumption. This was from running on stock settings:

mining on 1060 DUAL 6GB on stock settings

mining on 1060 DUAL 6GB on stock settings

consuming ~138w when mining on stock settings

consuming ~138W when mining on stock settings

I was getting out ~19 MH/s from the card and reaching temperatures of around 66C. The machine consumed about 138W and the GPU was using 100W.

It turns out, these stock settings are not optimal for mining as described in this article. You can lower the power target of the GPU and boost the memory clock significantly to get higher hash rates at lower temperatures and lower power consumption! Almost sounds to good to be true, but have a look:

mining on 1060 DUAL 6GB on modified settings

mining on 1060 DUAL 6GB on modified settings

consuming ~119w when mining on modified settings

consuming ~119W when mining on modified settings

I was now mining at ~22MH/s at 60C and only consuming 119W instead of 138W and the GPU only drawing 82W. The conclusion is that tuning matters, a lot! Numbers add up quickly when you have a mining rig running 24/7.

I played around a bit with the parameters of GPU Tweak II and found that the memory clock is the one that counts when it comes to hashrate. Underclocking it by 1500 Mhz got me a hashrate of ~12,2MH/s and overclocking it by 1500 MHz got me to 22 MH/s. The power target parameter mainly affected the power consumption, although bringing it down to 50% killed the hashrate as well. Setting the power target at 70% got me the best hashrate per Watt ratio. The GPU Voltage and GPU Boost Clock parameters didn’t do much for the hashrate at all.

Also, it looks like I’m not really utilizing my 750W gold rated PSU. I might try sticking in one more 1060 GPU in there. I wont be able to run the cards in SLI so it won’t improve gaming performance, but it would double the hash rate when mining.

What a difference a GPU makes

Putting things together

CPU mining wasn’t getting me anywhere as I wrote so I went shopping. Worst case was that I would be losing interest in mining and end up with a perfectly good gaming PC so win-win! This build isn’t at all optimized for mining but it did help as a proof of concept, and it does run Battlefront on Ultra settings in full hd at 60 fps. Here is what I went with:

  • ASUS Prime Z270-P motherboard
  • Intel Core i5-7600K
  • ASUS GeForce GTX 1060 6GB DUAL GPU
  • Corsair PowerSupply (PSU) RM750x 750W
  • Corsair Vengeance LPX White 16GB (2x8GB) DDR4 / 2666Mhz / CL16
  • Fractal Design Define R5 – White / Window case
  • Samsung SSD 960 EVO 250GB
  • be quiet! Pure Rock CPU cooler

When building a mining rig you wont need that much RAM or a powerful CPU. Just lots of GPUs, some means to connect them all to your motherboard, a special case and a really powerful PSU. My build, as I said, is more of a mid range gaming PC that happens to do some mining.

components for gaming/mining pc

result of shopping spree

I hadn’t put together a PC from scratch for at least 15 years so this was good practice for me. It took a couple of hours, I struggled some with that CPU cooler, but in the end it worked out great.

Putting things together. Yes, I know that cooler is upside down. No, I wont fix it.

Payoff

I had been getting about 80 kH/s mining Ether on my Azure Ubuntu VM. Now was the time to see what that 1060 GPU could do. Turns out, a lot better. ~19 MH/s. And the thing wasn’t even running that hot (66C) and almost completely silent inside that Fractal case. The first payouts from Nanopool were coming in after a couple of days and my Ethereum wallet were no longer showing 0.00 ETH in balance.

Next up, tuning it.

gpu mining

mining eth on stock settings with 1060 DUAL 6GB

1060 in case

a look through the window of the fractal case

And more fans!

It wasn’t at all necessary for this build, but I got two more case fans some days later just because I could. One pushing in cold air from the bottom and one pulling out hot air at the top. This meant taking out some parts of the Fractal case and that was easier said than done. End result:

gaming-mining rig

Everything put together with two extra case fans

When you set up a mining vm in Azure and accidentally end up with a WordPress site

So that happened, and I might just keep it…

Long story short. The WannaCry ransomware attack happened, and I got interested in how that might affect the price of BitCoin. I read up a bit on crypto currencies and got fascinated by blockchain stuff in general and Ethereum in particular. During that time the USD/ETH chart looked like this:

eth/usd chart may-june 2017

eth/usd chart may – june 2017

That volatility was enough for me to decide that I needed the ability to trade the currency and learn more. First step was to download Mist and create an Ethereum address to be able to hold any ETH. Then, signing up for an account at an exchange that trades fiat and crypto currencies, and I ended up with Kraken. At the time of this insane ETH price development, I was apparently not the only one with this idea. Trading using Kraken requires that they verify some basic personal information before you can trade, and people were rushing to the site to set up accounts. I took me two weeks to get tier 1 verification and I’m still waiting on tier 2 about three weeks after applying.

So I was stuck with a very disappointing empty Ethereum address with no way to fill it up with Ether, except for mining that is. I had some Azure credit laying around unused so I thought maybe I could set up a virtual machine in the cloud to do some mining for me, and I inevitable stumbled upon this excellent post by David Burela on how to do just that.

cpu mining on ubuntu

azure cpu mining on ubuntu in progress

There’s lots to write about setting up a wallet/address, protecting your keys, what smart contracts are and how they make Ethereum great, setting up a miner, using a mining pool, and so on. By now there are many good resources out there on these topics so I won’t be covering any of them in great detail.

It turns out that mining ETH with a CPU is not good for anything except maybe learning about the process. CPUs just aren’t good at it. GPUs are though. So I finally had the perfect excuse to build a gaming PC! More on that in the next post. Anyhow, my Ubuntu VM in Azure wasn’t really helping anymore so I repurposed it as a web server and installed WordPress. And here we are! My plan right now is to mine some ETH with my gaming PC, sell that ETH for fiat currency on Kraken and transfer that money to my regular bank account. Once the whole process has been tested out, I’ll start building a proper rig, and what ever I learn I’ll post here.

This post is so for pretty useless for anyone who reads it, but it’s my first post and I need to start somewhere. Here is some condensed information on what I’ve learned so far:

  • CPU mining wont get you anywhere. You’ll get kH/s speeds when you need MH/s if you ever want to see a payout.
  • Mining on your own wont get you anywhere. Join a pool. I’ve tried Minergate which has it’s own GUI miner for Windows and low payout thresholds, but later switch to Nanopool and the Claymore miner after ETH payouts stopped working on Minergate for a coupe of days.
  • Syncing the blockchain with your own Mist-instance takes time. Lots and lots of time. Literally days for me. The syncing is done by geth which Mist runs in the background. For some reason the syncing just stopped for me when running it via Mist. I discovered that the latest version of Mist was using a old version of Geth. In order to sync with the chain for the first time I had to download the latest version of Geth and sync on my own. After that Mist has been able to keep the chain up to date. Hopefully this is no longer an issue for newer versions of Mist.
  • You don’t need to sync the chain to see the balance of your Ethereum address. Just use Etherscan.
  • You will want to read up on what happened with Ethereum Classic and the hard fork.
  • ICOs are the new IPOs and they are all the rage in the Ethereum network, raising tens of millions of USD in hours.
  • You will also want to know that there are ambitions of switching from the current Proof of Work protocol to a Proof of Stake protocol and that will affect mining in the future.
  • Follow what Vitalik and Vlad are up to.
  • What if the human race trusts cryptography with their most important communications and assets and someone successfully implements a quantum computer that essentially makes the algorithms in use obsolete? Mayhem. Also, people are already thinking about this and taking measures.