Speculative mining discussion

(post withdrawn by author, will be automatically deleted in 24 hours unless flagged)

Won't GPU's wind up having an edge on CPU (if you're serious about mining)? All things being equal - you can run 6 GPU's on one motherboard.

This is a really good question. I have also been trying to figure out a cost effective way to put together some computers to mine ZCash.

The server board approach seems like it may be efficient but pretty costly to set up initially due to the fact that server boards require special CPU's and registered RAM.

Please correct me if I'm wrong, but isn't there going to be a hard cap of RAM per CPU set in the algorithm? If so then having a ton of DIMM slots may not be any advantage if that number is set low (say 1GB). Plus the Equihash algo seems to purposely be set up so that you can't just keep adding more cores to speed up the process.

And I believe a low number like 1GB is very likely based on comments that Zooko has made about being optimized to able to mine on a Smartphone: "Further down the track, our goal is to have the Equihash solver optimised for running on smartphones. We hope that this will greatly aid the decentralization of mining — users could mine Zcash while their phones are plugged in and unused overnight!" https://z.cash/blog/why-equihash.html

So then what hardware would be the most cost efficient for mining? A bunch of PC's with CPUs and RAM matched to the low algorithm requirements (say cheap 1core CPU's with 1GB of RAM)? A rack of Raspberry Pi's running Linux networked together? A rack of smartphones? A tank with sharks with lasers on thier heads? (Jk on the last one)

This new Equihash algorithm changes everything and until @zooko and his team tell us where they are going to set the final parameters at, it's difficult to spec out hardware for it.

2 Likes

I believe this is the key that might prevent the big farms from having a large advantage right at the beginning. By design, they should not have that much of an advantage with their current hardware - ASICs for Bitcoin, GPUs for Ethereum, ??? for other coins. They have more funds to set up the hardware than the rest of us, but, if the announcement of the parameters are delayed until just before the genesis, they might not have the time set up thousands of rigs needed to overpower the "amateur" with a couple of PCs. Making a mistake in choosing the hardware could be very costly when talking about thousands of PCs

To be honest, we don't know the answer to this. Our goals are to make mining profitable for casual enthusiasts, using hardware that they already own, when it is idle (e.g. your smartphone while it is plugged in overnight). This would be a revival of the original Satoshi Nakamoto vision of a very decentralized network of miners.

However, our actual process isn't guaranteed to achieve that goal — it is just our current best attempt. Our process is:

  • to study Equihash and ask others to do so in order to minimize the chance of us later being surprised by how much of an advantage people can get from proprietary optimizations or custom-hardware-implementations,

  • implement an optimized implementation for 64-bit CPUs (https://github.com/zcash/zcash/issues/857)

  • choose final parameters (https://github.com/zcash/zcash/issues/856)

  • maybe we would consider tweaking the algorithm a little if it seems like there is a really valuable tweak to be made to give more advantages to laptops, tablets, and smartphones (in particular I'm thinking of Solar Designer's MAXFORM tweak for Argon2d, and also his suggestion to make memory reads come in 1 KiB spans in order to reduce TLB misses for CPUs). But we probably won't have time to mess with that before launch.

Now, what hardware setup will be most cost-efficient after we do the above, and whether the above will succeed in our goal of rewarding enthusiasts who don't put in a capital investment, your guess is as good as mine.

4 Likes

I found some input on bitcointalk - https://bitcointalk.org/index.php?topic=1438066.0;all & https://bitcointalk.org/index.php?topic=1465551.0.

I mentioned this before but I'm going to bring it up again. I would HIGHLY recommend putting a bounty up to one or two of the custom miner developers. There was a very similar PoW concept with Monero in the beginning. A custom miner + AWS captured 50% of the mining rewards early on.

I'm not so worried about it being "unfair" for people wanting to mine (when one miner is soaking up 50% of the network) but it does leave a kinda black mark on a coin that the PoW wasn't thoroughly fleshed out.

I imagine for a future commitment of a few thousand zcash tokens you could interest Wolf0, Claymore or Tromp into building a separate miner or at least doing some R&D on optimizations. (If you don't - they will be payed by private miners to build custom miners or create a closed source miner to capture revenue like they are with Eth). Not sure how big of a deal this is to you guys but it might be worth getting as close to right on your first time around.

One thing that might be worth your while is making sure you are ok with a hard fork and deciding in advance what parameters will make you decide to have a hard fork or change PoW parameters. In my opinion if bitcoin had done this to begin with it wouldn't be facing many of the problems it is today.

On the flip side of that - as soon as you release the coin technically it's out of your hands. So if miners exploit something you don't like there's no garuntee you'll be able to reverse it.

2 Likes

If you haven't seen this post, you might find it interesting - https://forum.zcashcommunity.com/t/an-alternative-to-asic-proof-mining-algorithms/493/2

1 Like

Yeah. The problem is the miners determine hardfork correct? That's the entire point of PoW security? If the majority of the hash isn't keen on changing to something that will deem them obsolete then how will it happen? And maybe more importantly - if there's a way for it to happen without the miners then are they really providing network security or just a facade of it?

The only change that could make a miner obsolete (that springs to mind) is one that moves away from a particular investment in dedicated hardware. Our use of Equihash (and our stated goals in general) should result in the majority of mining power being either CPU- or GPU-based, which are much easier to upgrade/migrate than hardware implementations.

2 Likes

The disconnect between your goals and your process has always been there, but the current state of affairs make it necessary to alter your process if you are to uphold your goals.

If not, you are valuing the process more.

1 Like