As an Amazon Associate I earn money from qualifying purchases.

Thursday, January 30, 2014

Vertcoin, Litecoin, Megacoin: Everything You Want to Know about Kimoto's Gravity Well (KGW)

After my initial post on Vertcoin last week, the difficulty started to do some interesting things. Mostly, it was reacting to miners jumping on and then off VTC, which resulted in the difficulty spiking up, then dropping down, then up again.... I didn't think we'd see that much variance thanks to the relative difficulty of getting the new VTC cgminer version running, but I was clearly wrong. Thankfully, the developers were already looking at improving the core design of VTC, and as such we have two major changes that are coming at block 26754, which should arrive some time in the next 12-16 hours.

First, the rollout schedule for changing N-Factors has been modified so that the first jump to N=12 (it's currently at N=11 while standard scrypt is N=10) will happen around early 2016. This will allow slightly older GPU hardware (think Radeon 5000 and 6000 series cards) to continue to mine VTC for two more years before it becomes potentially too demanding in terms of memory requirements.

The second change is perhaps more important: instead of the current difficulty adjustments that take place every 2016 blocks (which is what happens with BTC and LTC), VTC will be implementing Kimoto's Gravity Well (KGW). KGW is names after its creator, Dr. Kimoto Chan of Megacoin fame. The problem with difficulty adjustments is that they generally don't happen frequently enough in our modern day of cryptocurrency pool hopping and multi-coin pools. KGW fixes this by adjusting difficulty more or less after every block, avoiding huge spikes in difficulty followed by huge drops in hash rate as miners (and multi-coin pools) jump ship.

Consider the following all-too-real scenario. Coin XYZ has a network hash rate of 1GHash, with a difficulty of 1, and let's say that this coin is highly profitable right now -- maybe returns are 10X higher than mining LTC. People see this coin rise to the top of Coinwarz (or just paying attention to the cryptocurrency network), and suddenly instead of 1GHash XYZ has 50GHash. Now if the creators of the coin were perhaps short-sighted, difficulty might adjust every 2016 blocks, with a target block time of 2.5 minutes (every 3.5 days). Sound familiar?

For a sequence of up to 2016 blocks, instead of 2.5 minutes per block suddenly it's only taking 15 seconds! That won't do at all, and so at the next adjustment point the difficulty jumps from 1 to 50. Okay, normally the maximum adjustment is 4X or 8X, so after 2016 blocks at difficulty 1, there's another 2016 blocks at difficulty 4, then 2016 at difficulty 16, and now we're at difficulty 50. But for the sake of a worst-case scenario, let's just say we jump from difficulty 1 to 50.

Now suddenly the profitability of XYZ has tanked, because where it was 10 times as profitable as LTC at difficulty 1, it's now only 1/5 as profitable at difficulty 50. Everyone jumps off the bandwagon and the network hash rate drops back to 1GHash -- the core miners of XYZ. But now, with only 1GHash remaining on the network, instead of finding a block every 2.5 minutes it starts taking 125 minutes! And the next difficulty adjustment is 2016 blocks away, which instead of being 3.5 days it now requires 175 days. If this actually happened, coin XYZ is now dead, and the only options are to hard fork (an update to the client that changes the difficulty) or to just let the coin go away.

Megacoin and others have had this sort of problem, but instead of just hard coding a new difficulty, the adjustment algorithm was scrapped and KGW was created. Now the difficulty follows the hash rate in a very organic way, so if a bunch of people start mining MEC the difficulty jumps in response, and if they all leave the difficulty drops again. It doesn't happen immediately of course, but it happens within minutes or hours instead of days or weeks (or even months). VTC experience this sort of phenomenon as well, though it was "only" a jump of about 50% difficulty for three rounds straight. That took the coin from potentially earning 0.03 BTC/MH to 0.02 BTC/MH to 0.013 (more or less), and then miners went looking for greener pastures.

So now, starting with a block in the very near future, Vertcoin will be using KGW to avoid future complications. Long-term, I think VTC has a lot of potential thanks to using a different hashing function (Adjustable N-Factor Scrypt). With the addition of KGW to deal with large swings in the number of people mining VTC, it should be even better.

As an interesting aside, check out the recent LTC difficulty/hash rates. LTC went from a high of around 4000 difficulty and everyone suddenly decided to jump ship and go to more profitable coins like DOGE. The result was a huge drop in network hashing speed, so it took much longer than the usual 3.5 days for the next difficulty, which dropped all the way to 3200 or so. That still wasn't enough, apparently, so it took another 4+ days before it dropped to 2400. Suddenly, at 2400 LTC starts looking really tasty again and a bunch of miners hop back on the train, so the next sequence of blocks only takes 2.5 days and the difficulty jumps back to 3300! This is something I think we'll see a lot more going forward, and all other alt-coins better learn fast that long periods of time between difficulty changes are going to be really detrimental.

Why I mention that is that Litecoin is the original scrypt coin, and it did really well for a while, but not it's starting to look a bit rusty. There are still a lot of people mining LTC, and it's profitable, but as an example the total network hash rate on LTC is around 84GHash and DOGE is currently at 91GHash. Other alt-coins are gaining on LTC as well, though some will invariably end up as pump-and-dumps. If the currently second largest cryptocurrency in terms of market capitalization can't really deal with large mining swings, what chance do the newer/smaller coins have?

Getting back to VTC, at present you can trade it on two exchanges, and both are lesser exchanges in my book. First up and slightly better (though terribly sluggish) is CoindedUp, a "tier 3" exchange where the price is currently around 0.0004 BTC per VTC. The other option is Poloniex, a newer and hence "tier 4" exchange, where price is even lower (around 0.0003 BTC per VTC right now). The main Vertcoin page has the difficulty for VTC mining (9.9), and it's around 340 MHash. Keep in mind that most people get 40-50% of their usual scrypt hash rates with VTC, so that's the equivalent of roughly 680-850 MHash.

In terms of profitability, let's say you have a 3x280x rig that does 2.1MHash on scrypt; on VTC you should expect more like 900 KHash. That should produce about 90 VTC per day at current difficulty levels (VTC and LTC have a cool feature that let's you divide your KHash rate by the difficulty to get a decent estimate of your number of coins -- at least until the block reward drops to 25 in a few years), which works out to 0.036 BTC per day using CoinedUp. Compared to scrypt mining, that would mean you're getting around 0.017 BTC per MHash, which is pretty good.

The change to KGW incidentally is scheduled for block 26754, at which point VTC will become much more responsive to mining adjustments. That should be good for the long-term outlook, and potentially I could see VTC catch up to LTC in value. Of course, when the scrypt ASICs arrive, LTC will likely be a big target, and due to its status as the original scrypt coin it has become a medium for exchange, so I don't think VTC can catch LTC value for at least six months to a year, and perhaps never. Even so, a valuation of 0.003 (10% of LTC) is pretty reasonable, and it could become higher. We'll see. For now, I'm holding all the VTC I've mined (though I admit to jumping ship to other options, like Leasing).

BTC: 1GGJUb1gFpydygpeKzd6oFoShLRUSyThV7
LTC: LfCLyykrNFftzpdWejR73hf478ZtBzQ9jE
VTC: VaYNYUUi3amUTKQAQSs9EM4xJyNRyqnoUG

An Alternative to Mining: Leasing

This continues from where I left off yesterday, where I mentioned there are potentially ways to make far more than 0.015 BTC per MHash on scrypt coins. Or, if you find a hot new coin and you want to throw everything you have and then some at it, you can do that as well! The service is called LeaseRig.net, and in the past two days I've played both sides, leasing my rigs to others as well as paying rent to get more hashing power.

Before I get into the details, let me be frank: paying 0.03 BTC per MHash to rent somebody's rig seems awfully crazy to me. I rented roughly 50 MHash of power yesterday to try and grab a whole bunch of LEAF coins, and while I definitely ended up with a lot of LEAF, at the current value it was a losing gamble -- I could have spent 2 BTC and purchased 10 million LEAF, whereas with leasing and mining I only earned about 70% of that target.

On the other hand, I actually learned about LEAF through the leasing program, as several of my rigs were rented and ended up mining LEAF. "What's so hot about this new coin?" I wondered, so I went and checked it out and found that the previous day, people were earning nearly a million LEAF per MHash, and at an exchange rate of 0.00000015 BTC per LEAF that worked out to 0.15 BTC per MHash. Naturally, that brought in a whole bunch of miners and difficulty quickly ramped up, but even now LEAF is generating pretty decent returns. Other coins I've seen being mined: Coino, PXLcoin, Tittiecoin, Potcoin, and Swagcoin -- but I'm not going to explicitly recommend any of those and in particular the launch of SWAG was a joke.

Long story short, you can play both sides of the LeaseRig "game" -- actually paying others for the use of their rigs is a bit more risky, whereas if you want to be conservative but still generate a higher-than-normal rate of return, it's not unusual to get upwards of 0.02 BTC per MHash, and if there's a popular new coin you could get 0.03 or higher lease prices. The great part is that when your rig isn't being leased, it can go back to mining for you, and you can even manage the pools remotely through LeaseRig. The bad news is that at present the interface only allows you to list up to two default pools -- I'd like at least three or four.

Now if you're interested, I'm not going to spend a ton of time explaining how to get things working with LeaseRig, as there's a How To Guide already. The process involves PM'ing the operator of the site, djeZo, on the Bitcointalk.org forums, potentially making a security deposit with him (if you're new), and then you need to set up an account with some place like NoIP. From there, you also need to configure your router via Port Forwarding, and edit your cgminer.conf settings to allow his server to talk to your rig. Let me also suggest that you back up your current cgminer.conf file (or if you're using some other file name, copy that to cgminer.conf and use that instead). You can still use CGWatcher or other utilities in most cases, and if you know enough to figure all of this stuff out, you're probably ready to get listed on LeaseRig.

If you'd like to try the service out as a renter rather than leaser, feel free to try one of my systems (trogdorjw73) -- I've kept them reasonably priced right now, at roughly 0.025 BTC per MH. And as usual, let me end by saying at that rate, a $2000 rig like the one I listed yesterday that does 2000KHash could generate 0.05 BTC per day and 1.5 BTC per month. If you can consistently get that sort of ROI, you'll pay for the rig in under two months!

BTC: 1GGJUb1gFpydygpeKzd6oFoShLRUSyThV7
LTC: LfCLyykrNFftzpdWejR73hf478ZtBzQ9jE

Wednesday, January 29, 2014

Mining for Profit and Learning

I'm always on the lookout for new ways to make my mining rigs generate money. I know, that's sort of bass-ackwards -- we're supposed to be promoting cryptocurrencies, not mining cryptocurrencies so we can exchange them for fiat, right? RIGHT!? Well, maybe that's true for some of you, but for me I have bills (and debts) to pay, so I've definitely exchanged plenty of BTC/LTC/alt-coins for cold, hard USD, and I suspect the same holds true for many of you. Unless you have enough money that going out and buying thousands of dollars of mining hardware isn't a problem, then investing money into cryptocurrencies is at best a risky business. Which brings me to the point of this post.

Hypothetically, just to keep things simple let's say that you have 10,000 KHash of scrypt mining hardware at your disposal. Hopefully all of you are familiar by now with Coinwarz.com, Coinchoose,com, or some similar site -- and if you're not, you should be! I like Coinwarz as it let's you compare profitability to LTC, which is far more useful than looking at profitability vs. BTC mining since no one (smart) does that with GPUs anymore. Coinchoose does have a Litecoin comparison page, but for reasons I can't fathom it omits many/most of the scrypt coins and still includes several SHA256 coins. Seriously, what? Anyway, let's run some quick figures on Coinwarz with our 10,000 KHash:
Okay, that's a huge image and I apologize that I needed something like that. Obviously the exchange rates and mining difficulty are all in constant flux, so you can't base your choice of what to mine off of the above. But looking at this snapshot in time, we can see that there are some coins that look really profitable right now, but over the past fourteen days they're actually not that great -- PHS, ALF, FRK, and CAP are all in this category. On the other hand, we have coins that are currently not as profitable as their two-week average -- RPC, DOGE, and LOT fall into this group. So what do you mine?

So if you're mining alt-coins, at the current difficulty/exchange rate you could mine coins and then trade for BTC at the following rates (which are different from the above image), and I'll include LTC as the baseline since it's the one we have to beat in my book:
Coin Name (Symbol)Rate in BTC per MHashMonthly Earnings
from 10 MHash/sec
Litecoin (LTC)0.00918 BTC~$2203 USD
RonPaulCoin (RPC)0.01057 BTC~$2537 USD
Lottocoin (LOT)0.01225 BTC~$2940 USD
Worldcoin (WDC)0.01300 BTC~$3120 USD
Dogecoin (DOGE)0.0133 BTC~$3192 USD
Fastcoin (FST)0.01437 BTC~$3449 USD
Neocoin (NEC)0.01502 BTC~$3605 USD
We've been over this before, but the basic idea is that you could build five systems capable of doing 10MHash+ total for roughly $10,000. If that's your investment, most of you would be pretty pleased to recover your money and begin making profit in three or four months, right? But what if I told you there are ways where you could double the best return on that list, on a fairly consistent basis? Yes, we're talking about 0.03 BTC per MHash of scrypt mining, so at $800 per BTC (an estimate given current prices), you would pay off a $10,000 investment in about 42 days! And what if the difficulty/exchange rate of the various alt-coins wasn't really a consideration?

I've caught your interest I hope, but I'm going to stop here for now -- I'll reveal why tomorrow. But let's just say that first, there are coins not yet listed on Coinwarz, and sometimes not even an any exchanges, and mining these early can reap huge benefits (albeit with some risk). That's one option, but for the other let me ask a question: Who made the most money on average during the Gold Rush of the 1800s? The answer to that leads into the answer of what to mine and how to do it...tomorrow. For now, here's my current pick of hardware for a $10,000 investment:
ComponentDescriptionPrice
MotherboardGigabyte GA-990FXA-UD3/UD5/UD7 AM3+$145-$234 USD
ProcessorAMD FX-8320 Vishera$156 USD
MemoryCrucial Ballistix Sport 4GBx2 DDR3-1600$73 USD
GPUs3 x Radeon R9 280X 3GB$1200 USD
Power Supply2 x Rosewill Capstone 750W 80 Plus Gold$200 USD
Storage2.5" 60GB Kingston V3 SSD$63 USD
Case?Build it out of wood or PVC pipes!$40 USD
Total Cost$1877-$1966
The biggest change here is a move to an Extended ATX motherboard (the Gigabyte GA-990FXA-UD7), which comes with six x16 slots and will allow you to do one of two things: either run up to six GPUs with risers (note that you'll need more and/or beefier power supplies!), or short-term you could actually run it with three GPUs without risers and still get two slots between each pair of GPUs. $234 is a lot of money to spend on a motherboard, but with x16 risers now going for $20 each that's $60 for three GPUs that you save, and you still have room to expand in the future. The UD3 and UD5 are less expensive alternatives, with the UD3 being standard ATX and it comes with four x16 slots, while the UD5 is also an ATX board but it comes with five x16 slots.

The other change is the recommendation to build your own case using either wood or PVC pipes, both of which are relatively inexpensive and easy to procure. My next case I've decided to go with wood -- I'll take pictures when it's done. It may not look as classy as an aluminum frame cage, but almost everyone has easy access to wood, a circular saw, a hammer, and nails -- and since wood doesn't conduct there's less risk of shorting out your motherboard if you're not careful with the mounting. Just make sure you have adequate airflow so nothing catches fire. :-)

Friday, January 24, 2014

Vertcoin: About to Go Vertical?

I mentioned Vertcoin a few days back, but at the time I was busy and didn't really give the coin a real chance. I like that it uses the same basic payout structure as Litecoin (50 coin blocks, dropping approximately every four years, with a total of 84 million VTC eventually). I also like the idea of trying to be ASIC resistant. So what don't I like? Well, mostly I don't like having to play with conf files to get all of my rigs properly mining VTC, I don't like that my miners tend to get SICK GPUs more often, and I don't like that most of the VTC pools are somewhat unstable right now -- it's not uncommon for several of the mining pools to be slow/down at once!

If that's the bad, what's the good? For one, given the reward structure and the fact that there's no pre-mine, Vertcoin could end up looking a lot like Litecoin. Right now that means over $20 per VTC is a reasonable target, but it could take a while to get there. But make no mistake, Vertcoin is picking up steam! When I first discussed VTC just four days ago, the difficulty was at 2.097. Given that VTC is similar to LTC, you can divide your KHash rate by the difficulty to get a reasonable estimate of the number of VTC you can mine in a day, so with 1800KHash/sec you would have mined around 850 VTC in a single day. Well, a day later VTC hit the next 2016 block milestone and difficulty jumped to 5.652 -- and not surprisingly, the trading price of VTC had increased as well.

In the meantime, DOGE has been going crazy, so I even switched some miners from Hashco.ws and Middlecoin over to straight DOGE mining, and it's been doing pretty well -- and so have the multi-coin pools, really. But then yesterday, I looked at VTC again and did some quick math. Even at 40% of the hash rate of mining scrypt coins (the adaptive N-Factor algorithm used in VTC makes mining more difficult), at the current exchange rates mining VTC might actually be more profitable than mining DOGE or any of the other scrypt alt-coins. Here's the math:
DOGE @ 4500 KHash/sec and a difficulty (right now) of 1264.47 will generate around 36000 DOGE per day. (Note: DOGE block reward is set to halve in the next few weeks.) At the current exchange rate (which has jumped of late), that works out to 0.08 BTC per day after trading.
VTC @ 1800 KHash/sec (40% of the regular scrypt hashing rate due to higher N-Factor) and the current difficulty of 7.953 (yes, difficulty just jumped by over 50% yesterday) will generate around 225 VTC per day, and at the current exchange rate (which is a bit volatile) that works out to 0.115 BTC per day.
Wow. DOGE is flying high right now, no doubt, and profits on Middlecoin are up thanks to this fact. However, at present VTC is outperforming DOGE by over 40%. And what about Litecoin, which has had a recent drop in difficulty from nearly 4000 to 3130, with the next difficulty projection being under 2600? Mining LTC directly at present with 8000 KHash would net you 0.065 BTC per day after trading, so VTC is almost twice as profitable as LTC right now. That means if you were to go out and buy a system with three R9 280X GPUs for around $2000, you could recover your initial investment in under two months.

If that's not enough to get you thinking VTC is taking off, consider a few other tidbits. First, the exchange rates on VTC have bumped from 0.00016 BTC per VTC four days ago to 3-4 times that much (currently 0.00051), and I don't expect them to fall back any time soon. The people mining VTC right now tend to be seasoned veterans, as it takes more work to get up and running compared to all the scypt-based coins -- more on that in a moment -- so they're not inclined to sell. I know I'm not selling my VTC for example, because when the exchange rate has more than tripled in just four days you hold and wait for things to level off. Second point: there's no multi-coin pool mining of VTC right now, since it uses it's own customized Proof of Work algorithm, which means you don't see big dumps of coins throughout the day from Middlecoin, Hashco.ws, etc. And last but not least, I'm writing about Vertcoin and there are at least a few hundred people reading this, which means more people mining VTC and holding, which means I expect a small bump just because of this post.

There are other things I could probably get into as well, but suffice it to say that right now, I think Vertcoin is about to take off -- or rather, it's already taking off, and my one big regret today is that I didn't shift my four main mining rigs over to VTC four days ago! Had I done so, I would currently be sitting on something like 2200 VTC after four or so days of mining, which would currently be worth over 1 BTC. Instead, I stayed with Middlecoin during that time and made a reasonable 0.25 BTC (give or take).

So you've read all of this and now you're wondering: how do I get up and running on mining Vertcoin? It's pretty similar to other coins, and Vertcoin.com has most of the needed information, but there are a couple of items of note. First, you need to download the custom version of CGminer, which has been tweaked to work with the scrypt adaptive-N-Factor algorithm. Second, I can pretty much guarantee that if you run the VTC cgminer with your current scrypt settings, one of several things will happen: either it won't work at all, your system will crash (or at least be unstable), you'll get lots of hardware errors and no accepted shares, or you'll actually successfully mine VTC but not at anything near the expected rate. Here's my input on what to do to get things to work, based on my experience with mining on HD 7950 and HD 6970 cards.

First, you need to lower your thread concurrency. I haven't found an "ideal" setting yet, but I can tell you that on my 7950 cards I dropped from 21584 to 14712, and that seems to work "okay" -- I'm getting roughly 250KHash per 7950. On my 6970 cards, I likewise dropped from TC of 8000 to 6000, and they're also getting around 250KHash -- so yeah, my old Cayman GPUs are doing a good job of keeping up with Tahiti! Not bad for a $350 investment last month off of Craigslist! :-) The second thing you'll probably need to do is to adjust your GPU and RAM clocks down a notch. If you were able to run at 1025/1575 on a 7950 with scrypt, you may find that decent stability with VTC only comes at 975/1500.

And what about R9 290/R9 290X? Well, I'm still trying to get those working well. Some are reporting rates of around 400KHash with 290X and 350KHash with 290, but as usual every system is different. Also, the cgminer BSOD on exit glitch is back with the customized VTC-cgminer, so that makes things a bit of a pain in the butt. I've been able to get all of my 7950 GPUs and 6970 GPUs running VTC without too much difficulty, but R9 290X isn't going as well. Hopefully I can fix that today, and if so I'll post back.

Something else to mention is that setting up failover pools with cgminer is a really good idea, especially since the VTC pools seem to be less stable than many of the scrypt pools I've used. I created accounts at four of the pools, but one of the pools (Kilovolt) doesn't appear to be accepting additional users right now, since they have over 33% of the current VTC hashing power -- which is very responsible of them. That leaves the other big pools as vertcoin.org, bitcrush.info, and vertco.in, or you could spread things out to some of the smaller pools. I actually started on pool.pm, but have since pushed them down my list of pools as their pool was unstable and the hashing rate dropped quite a bit, resulting in fewer found blocks and somewhat poor results. Anyway, I suspect we'll see many more VTC pools start coming online in the coming months.

Last but not least, you can still use the custom version of cgminer with utilities like CGWatcher. I've found cgminer-vertcoin takes a bit longer to start mining sometimes, but otherwise it works about the same as before. I did configure CGWatcher to reboot my computer(s) if any of the GPUs gets "SICK", which has been happening far more often than when I was mining scrypt coins -- in fact, I was at the point where my GPUs almost never got SICK, but now some of my rigs seem to get sick and reboot every hour or two! But even with the rebooting taking the mining rig offline for a minute or two, VTC is still resulting in better ROI than Middlecoin, so I'm sticking with it.

As a final comment, based on some discussions on the VTC thread, there's a question of the length of time between difficulty adjustments. This has killed (at least temporarily) a few coins, RonPaulCoin being a prime example. One of the reason other alt-coins are having huge problems with hashrate spikes is because of the multi-coin pools (e.g. Hashco.ws, Middlecoin, etc.) They'll hop on a profitable alt-coin for 10, 15, 60, whatever minutes and then move away when the difficulty vs. price is no longer favorable. RPC has a current network hash rate of 228MHash, so when Hashco.ws jumps on with 1GHash, it's a huge problem. (RPC has introduced a fix that will occur in the next day or two where the time between difficulty adjustments will be much lower.) To a lesser degree, this can also happen with individual users jumping on a profitable coin en masse until difficulty adjustment makes it unprofitable, leaving the coin in the hands of the few stalwarts to plug through the slow blocks left behind.

Anyway, right now there's no potential for multi-coin pools to mine VTC because you need to run a custom version of cgminer that targets the different PoW algorithm. Of course, if a bunch of copycat coins start using the same PoW algo (Scrypt-Adaptive-N-Factor or whatever we're calling it) or the necessary support gets rolled into a single cgminer executable, then VTC may have problems. Anyway, I certainly don't mind the idea of shorter rounds and/or faster confirmations. 2016 blocks between adjustments was a figure chosen because two weeks sounded like a good idea back in 2008 or whatever. Now, I'd agree that block adjustment times have no need of being measured in days let alone weeks. With 2.5 minute average block times, I wouldn't be opposed to VTC being modified to adjust difficulty every 24 or 48 blocks (around one or two hours).

Update: The VTC devs are running a couple polls regarding the N-Factor adjustment schedule and their implementation of Kimoto's Gravity Well. If you have strong feelings on either one, go vote. My personal take: implement KGW as soon as possible and be done with it! For N-Factor, any of the options are fine.

If you find all of this information useful, I'm always happy to accept donations. (If you want to donate something else, send me a message and I can list other coin addresses as well!) Thanks!

BTC: 1GGJUb1gFpydygpeKzd6oFoShLRUSyThV7
LTC: LfCLyykrNFftzpdWejR73hf478ZtBzQ9jE
VTC: VaYNYUUi3amUTKQAQSs9EM4xJyNRyqnoUG

Monday, January 20, 2014

Scrypt ASICs, Alternate Proof of Work Algorithms, etc.

I wanted to quickly touch on a couple of topics in the cryptocurrency world, and perhaps it's best to start with a short discussion of ASICs. Litecoin and the scrypt Proof of Work (PoW) algorithm were created in part as a way to avoid concentrating the hashing power and control of any cryptocurrency into the hands of a few (relatively speaking) people. When everyone was using CPUs to mine Bitcoins (SHA256 PoW), it was a "fair" game -- anyone with a PC could participate. Then BTC started to gain some fame back in late 2010/early 2011 and some clever programmers decided to try and use GPUs to run the SHA256 hashing algorithm, and they had some good success. Where a high-end CPU might get 15-20MHash/sec, a high-end GPU could run the calculations about 20X faster, and suddenly people were in a rush to buy GPUs so they could grab more of the Bitcoin pie.

Even GPUs are still less efficient than a processor designed specifically to run SHA256, however, and the inevitable next step was to work on FPGAs (Field Programmable Gate Arrays) and ASICs (Application Specific Integrated Circuit). FPGAs are basically a quick and dirty way to do a custom chip, with the caveat being that they'll never be as fast as a custom design -- they don't clock as high, because the gate arrays can't switch as fast. FPGAs could run about as fast as a high-end GPU back in 2011, but they cost almost twice as much -- and they used about 1/10 as much power. Custom ASICs on the other hand would take a lot more time to develop, and they would require a significant investment in terms of R&D, layout, fabrication, packaging, etc.

Eventually we started to see ASICs designed for SHA256 become widely available in early 2013, and the result has been an exponential increase in hashing power. Today, a good ASIC miner will perform around 1000GHash/sec and draw around 850W of power -- about 400X as efficient as trying to mine BTC with a GPU! The problem is that supply of ASICs hasn't kept up with demand, so there are relatively few companies/people with ASICs controlling the Bitcoin network. Worst-case, we could end up with one company controlling over 50% of the network, in which case they could basically steal BTC by forging transactions. I don't think we're likely to see that happen -- there's too much money invested into BTC at this point, and any company getting even 25% of the total hash rate will likely stop expanding so as not to spook other investors. But it still means that this "currency for the people" has ended up in the control of a relatively small number of hands, which is not what it was supposed to do.

So then we have scrypt, which is an alternate Proof of Work that can't be mined with ASICs designed for SHA256. With the success of Bitcoin and now Litecoin, however, there is plenty of interest in being the first company to deliver a scrypt ASIC. Probably the most well-known is Alpha Technologies, who are currently targeting a release date of mid-July for a 25MHash/sec scrypt ASIC that will draw less than 600W (and potentially less than 300W). To put that in perspective, it's the equivalent of 30 Radeon R9 290X GPUs but draws as much power as two such GPUs -- or roughly 15X as efficient as using a GPU. That's not quite as big of a gap as we're seeing with SHA256, since scrypt was intentionally designed to make the creation of ASICs more difficulty, but it's still a healthy advantage.

The big catch is the cost, of course. The Viper 25MHash miner has a price of £5450, or around $9000 USD. Even at the currently inflated prices on GPUs, $9000 could purchase around six complete mining rigs, each with three R9 280X GPUs, for a total hashing power of around 13MHash/sec. That's about half the performance, but you could begin hashing within a week compared to waiting six months, and six months is a very long time in the cryptocurrency world. I went in on half of a Viper with a friend, and we'll see if that works out, but I suspect it will be a while yet before that investment pays off. It will certainly be interesting to see what sort of ASIC arms race comes in the scrypt world, regardless, as Alpha Technologies is actually jumping straight to 28nm process technology whereas the SHA256 ASICs started at 110nm, so we may not actually see quite the explosion in hashing rate that Bitcoin saw.

So this brings us to the alternative Proof of Work algorithms. I really liked the idea of Quark, but it was basically insta-mined so that if you didn't hop on board in the first month or two, you were "too late" to really make a decent profit. This is why I started mining Frozen, but while I have mined a fairly sizable sum of FZ and have definitely come out with a decent profit, Frozen has many of the same issues as Quark. It wasn't insta-mined, but it will be mostly mined out in just six months, which is -- in my opinion -- stupid. The security of any cryptocurrency depends on enough people mining it to keep it from being taken over, so if everyone stops mining because there's no more coins being made after just six months, security drops to basically nothing.

At the same time, I also still like the ideal of PoW algorithms that are ASIC-resistant (I'm not sure anything can be "ASIC-proof"), so things like Primecoin are cool, but again the ROI for XPM is basically dead at this point. If scrypt is going to enter the realm of the ASIC-coins in six months, what's the Next Big Thing (tm)? Well, scrypt-jane is one possibility. It's essentially scrypt with a variable n-factor, which apparently makes it even more difficult to target with a custom ASIC. There are several alt-coins now using scrypt-jane, but the latest to catch my eye is Microcoin (MRC), which is using a "fair launch" approach.

The short summary is that MRC started with 10000 blocks that had a combined value of just 1 MRC; this was used to establish a baseline difficulty for the network. From there, the next 300,000 blocks will scale up in rewards from 10,000 MRC to 160,000 MRC and then back down to 10,000 MRC. That means the peak block reward will come in the next 15-45 days, so unfortunately while the launch is "fair", we're still going to mine most of the MRC in just four months. Gah! But I've pointed at least one GPU at MinersBest to see how things develop; MRC should also hit a new exchange (red flags much?) tomorrow, at which point we'll get some idea of the value of the coin. With a target of 100 billion total coins, I suspect a fair long-term valuation of MRC is going to be around 0.0000021 BTC per MRC, and short-term it will probably be less than half that amount.

Vertcoin (VTC) is another option, which also adjusts the n-Factor using an "adaptive n-Factor" approach that's different than scrypt-jane. Other than the change in PoW, it's the same reward setup as LTC, so 50 VTC block rewards every 2.5 minutes with 84 million total coins. It's a newer coin as well, having started just this past month, and it's already listed on CoinedUp. Being listed this early isn't always a good thing, but the valuation right now is 0.00016 BTC per VTC. Considering that in total there are 28800 VTC being mined daily, that means the trade value is 4.6 BTC available per day. The network hash rate is around 183MHash/sec, and GPUs are about half as fast with the new PoW as with standard scrypt, so that means 400KHash/sec from an R9 290 would be reasonable, or 333KHash/sec from R9 280X. If we take the latter, three R9 280X should produce ~1MHash, resulting in a reward of around 0.025 BTC per day. If you were to mine LTC instead of VTC, your current daily rewards with ~2MHash/sec would only be 0.0145 BTC, making VTC about 70% more profitable than LTC mining -- not bad! With 3x7950 however, I'm only getting about 40% better than LTC mining (hash rates of around 240KHash per GPU instead of 620KHash on scrypt), so I'm not quite able to match Middlecoin's current returns.

Anyway, what I'd really like to see is more alt-coins that forget about the fast-mining hype and crazy block rewards (or silly memes, i.e. DOGE) and instead go for a long-haul approach. Take the Quark PoW -- or scrypt-jane, or some other variant -- and use scaling similar to BTC/LTC so that in two years, people are still seeing 50 coin block rewards, and in ten years you could still get 12.5 coin block rewards and have a reason to continue mining. I think the fear is that slower mining makes your coin and/or PoW algorithm a bigger target for ASICs, but faster mining just means your coin will die in six months or however long it takes to empty the coffers. QRK is still kicking, though, even with a much lower block reward, so maybe there will be enough interest to keep more coins going. I'm not convinced, unfortunately, which means long-term the best bets are still BTC and LTC.

NVIDIA Scrypt GPU Mining Performance with CUDAminer

Everyone "knows" that AMD GPUs are best for mining the various cryptocurrencies, and the conventional wisdom is that NVIDIA GPUs aren't worth the cost or the trouble. While this may be true from a pure performance perspective, if you already own such a GPU, the December update to CUDAminer actually delivered a pretty substantial boost in performance. To be clear, we're still only talking about roughly half the performance of AMD's similarly priced hardware, but there are other reasons to go with NVIDIA GPUs -- gaming and general computational programming are both strong areas for NVIDIA.

And it's not just about games; if you're looking for a PC that can still be used for other non-GPU-intensive tasks while mining, CUDAminer tends to be far less taxing in my experience (similar to high-end AMD GPUs at intensity 13). Noise levels also tend to be much better (quieter), and stability is also good. So if you have an NVIDIA GPU, what settings should you use and what sort of performance can you expect as a result?

Let's start with the settings. I'm going to focus mostly on Kepler-based cards, but Fermi cards may also work reasonably well. The key flag to use in order to generally get optimal scrypt hashing performance is the -l flag (--launch-config), where you can specify the architecture to use for the GPU. CUDAminer will try to find the "best" solution on its own, but you can usually get better results and faster startup times by using -l. There are six options: L (Legacy), F (Fermi), K (Kepler), T (Titan Kepler), S (a variant of the Kepler core), and X (experimental Titan). I didn't even look into using L/F/S flags, as it's generally agreed now that the GPUs that require those configurations won't run all that well.

As for the remaining options, T/X require Compute 3.5 cards based on GK110, which means GeForce GTX 780/780 Ti or GeForce GTX Titan. We can again safely skip Titan -- performance is roughly between the 780 and the 780 Ti, but the cost is currently well over $1000 -- which leaves the $500 (give or take) GTX 780 and the $700 GTX 780 Ti. If you have a non-GK110 chip, you can still get reasonable performance as well, and since I have a GTX 770 I ran some tests on that as well. The basic rule is this: every SMX unit in Kepler (and Titan/GK110) has 192 cores, so take your CUDA cores and divide it by 192 to find out what your configuration should be. Here's what you can expect (without playing with overclocking):

GTX 770: ~330 KHash @ 200W (-l K8x32)
GTX 780: ~510 KHash @ 250W (-l T12x32)
GTX Titan: ~570 KHash @ 250W (-l T14x32)
GTX 780 Ti: ~580 KHash @ 260W (-l T15x32)
GT 750M: ~75 KHash @ 35W (-l K2x32) (Note: this is a notebook)
GTX 760M: ~110 KHash @ 45W (-l K4x32) (Note: this is a notebook)
GTX 780M: ~240 KHash @ 100W (-l K8x32) (Note: this is a notebook)

Again, there's obviously no reason right now to go out and buy a ton of NVIDIA GPUs to run CUDAminer, but if you already have those GPUs around -- or if you're more interested in gaming and you just want to run CUDAminer when the PC isn't otherwise being used -- the GTX 780 should still generate a return of roughly $90 per month (after power costs). The GTX 770 actually has some rebates going on right now that can bring the price down to just $320, so basically we're looking at half the performance of AMD's equivalently price GPUs. That may sound bad, but prior to the December update to CUDAminer, it was more like one fourth the performance.

Friday, January 17, 2014

GPU Mining State of the Union Address

We're coming up on two months of highly inflated AMD GPU prices, thanks to the explosion of Bitcoin/Litecoin/Cryptocurrency prices. With MSRPs of $299, $399, and $549 for the R9 280X, R9 290, and R9 290X, you could pay for the cost of the GPU(s) in about three months, give or take, at which point any future mining is pure profit (after paying the power bill of course). There are very few investments that can completely pay off in three months, and even with the prices spiking up by 30% we're still looking at four months to recover the initial investment.

But that was the state of affairs last month; has the supply/demand situation improved at all? I did a quick check of online pricing for the pertinent GPUs and came up with the following:

R9 280X at Amazon: $400-600. The XFX card is currently in stock at $400. This is probably the best bang-for-the-buck right now, as you can break 700KHash pretty easily in my experience, so you pay $0.57 per KHash.

R9 290 at Amazon: $470-$620. While the MSI 290 card doesn't show as being out of stock at $470, notice the "typically ships in 1-2 months" part -- no way! There are only four (currently) Sapphire cards left at $490, while the Gigabyte R9 290 is more widely available but at higher prices. At $490 and if you can get as high as 850KHash (though 750-850 is "normal"), the $0.58 per KHash is potentially just as good as the R9 280X. If you only end up at 750 KHash, however, that bumps you to $0.65 per KHash.

R9 290X at Amazon: $630-$790. Obviously, paying over $700 for one of these is simply crazy -- you're better off with either of the above GPUs. Even at $630, where the Sapphire R9 290X is reasonably available, you'd still be looking at 800-950 KHash, which means you're paying $0.66-$0.74 per KHash (and you're probably going to be closer to $0.74 in my experience, as most 290X cards can't seem to hit more than 850KHash).

That's Amazon, but what about other options? Availability appears better at Newegg.com, but pricing is similar: R9 280X starts at $400, R9 290 starts at $500, and R9 290X will set you back $600 or more. Searching Google didn't turn up any other significantly better deals, though I did find quite a few "too good to be true" retailers that way so I'd suggest sticking with places you know you can trust. I'm sure we'd all love to get R9 280X at $230, but right now that's just not happening so be warned.

With all the AMD discussion out of the way, there's an interesting side note to be made: NVIDIA GPUs can mine as well, just not as fast as their AMD counterparts. The older version of CUDAminer wasn't all that great, but an updated releases optimized the CUDA code in December and you can now get at least moderate hash rates. How moderate? Well, it depends on several factors, with memory bandwidth being critical, just as with AMD.

I've run CUDAminer on a few GPUs, and what I'm finding is that with Kepler GPUs and GDDR5, you can get somewhere around 20-40KHash per SMX, with the higher end of that range more for laptops with GDDR5 and only a few SMX units. GT 750M for instance, using K2x32, can give me 80KHash/sec with GDDR5; GT 750M with DDR3 on the other hand only gets about 30KHash/sec. Obviously the profitability will depend on how high you can get your hash rate versus the power draw, but here's the quick solution to getting decent hash rates with NVIDIA Kepler: use "-l K[SMX]x32". You can find the number of SMX units on Wikipedia, or if you know your CUDA core count, divide that by 192. I'll have to do some additional benchmarking, but as an example I can run the following for 220KHash on a GTX 770M notebook that draws 140W:

cudaminer.exe -a scrypt -i 0 -l K5x32 -o stratum+tcp://stratum01.hashco.ws:8888 -u trogdorjw73.tester -p tester

It's not a ton of hashing power to be sure, but it's still around $1 profit per day (after electricity costs), so that's not too bad. I'm going to have to do some additional testing on NVIDIA hardware for the higher end GPUs, but if you could hit 400KHash/sec on a GTX 770/780 ($2 per day profit), and if you already have such a GPU, there's no reason to not run it when you're not playing games. I personally still prefer NVIDIA GPUs for gaming, and $370 for a GTX 770 is a pretty good price. It will be interesting to see if NVIDIA ever tweaks their future architectures to be more hashing friendly -- I wouldn't be surprised if Maxwell did just that after the crazy prices on AMD GPUs right now!

Tuesday, January 14, 2014

Analysis of the Recent Performance of Hashco.ws (and Multi-Coin Pools in General)

Coin selection of late for most of the multi-coin pools seems a bit whacky. I don't know what the algorithm for Hashco.ws is, but I can look at Coinwarz and coinchoose and get a good idea of what sort of profitability each coin is supposed to have. I'm starting to wonder if Hashco.ws and others aren't being intentionally mislead by some external site on what to mine -- do they do their own internal calculations, or do they use externally available calculations? The reason this is important is because if it's not internal and correct, the results can be less than desirable. Let me give some examples from today's Hashco.ws statistics.

I just saw Mincoin showing a potential 600%+ profit relative to LTC on Coinwarz (around 10PM PST), which is pretty amazing. Not surprisingly, Hashcows was mining MNC at that time. But just a few minutes later, MNC was at 77% profits vs. LTC, so in the course of 10 minutes or less, MNC spiked to a huge value and then plummeted to a lousy value. The result of this is that Hashcows spent 10 minutes on MNC, mining 36 MNC that at current exchange rates are worth 0.02382912 BTC. If they were to mine at that rate 24/7, all 1700MHash of power at Hashcows would generate 3.43139328 BTC in a day, or around 0.002 BTC per MHash, which is obviously far less than what you would get from just mining LTC (currently around 0.007 BTC/MHash).

Now if this was the exception rather than the rule, that would be fine, but for the past few days that doesn't appear to be the case. Hashco.ws mined WDC for 126 minutes earlier today, generating 1283.0131392 WDC during that time. If we mined 24/7 on WDC, that would work out to 14663 WDC per day. At the current exchange rate (0.00043139) they could trade for at best 6.325 BTC. That means around 0.0037 BTC per MHash. But Coinwarz is showing 125% profitability vs. LTC right now. Maybe we just had an unlucky spell?

Let's try another.... Round 6565 at Hashco.ws was Ron Paul Coin (RPC), for 3 hours  55 minutes (3.917 hours), during which time the pool mined 59.0672 RPC. At the current exchange rate of 0.0191 BTC per RPC (and the best we've seen in the past 24 hours is only 0.02655 BTC per RPC), we're looking at 361.9437 RPC per day, which would be worth 6.91 BTC (or best-case 9.61 BTC), so again we're well below the 100% mark of LTC mining. Remember, LTC mining on its own with 1700MHash out to generate 436 LTC per day, which at 0.029 BTC each is 12.35 BTC per day.

But all of the alt-coins are going soft, right? Well, not quite....

What about DOGE? I know it was created as a joke coin, but I haven't seen a round of DOGE lately on Hashco.ws, which is odd. With 0.00000045 BTC per DOGE, based on the Coinwarz calculator Hashco.ws should be able to get around 18.171 BTC per day with 1700MHash, so there's at least one alt-coin that's beating the odds. Hell, even at the worst trade value of 0.00000025 BTC per DOGE (from Jan 8-9 time), we'd be looking at 10.095 BTC per day, which is still better than any of the other alt-coins I've run the calculations on above.

This is a long-winded way of saying something has perhaps gone fubar with the Hashco.ws (and Middlecoin and probably others as well) algorithm for selection of coins. Maybe it's that difficulty plummets, making the coin(s) look attractive, but by the time 1700MHash enters the picture the difficulty jumps back up and profitability drops back to nothing. Whatever is happening, all I can say is that right now profitability for mining via the multi-coin pools is not working out to what it should be. And what it should be is more profitable than mining LTC directly -- that's the whole point.

If you're still trying to mine at Hashco.ws or Middlecoin, I know personally the returns have been very poor for the past week -- like less than half of what you should get relative to mining LTC. Just going static on mining one of the more stable alt-coins like DOGE, WDC, LOT, EAC, etc. is supposed to be beating LTC by at least 20% over the past 14 days, and every time the multi-coin pools switch it seems to result in lower profits for miners. For now, I'm going to try manually mining one or two of the "best" alt-coins for a day and see what sort of returns I can get via Cryptsy's automatic trading. I'll report back and see how I do compared to Hashco.ws (where I've left ~1MHash of mining power).