Let’s talk about ASIC mining

Its not a matter of opinion its a matter of FACT. The majority of the miners (who are also the majority of the coin holders) were promised asic resistance and want asic resistance.
If you don’t like this, then by all means, YOU go fork off of ZCash. The ones who want to change are the ones that need forking, not the other way around.

Do you have evidence to support this theory?
In no way or form is letting a coin be mined by specialised hardware that come from a single company with shady practices and with backdoors to the machines (machines that only last a couple of months in profitability btw), falls under the Chinese regime, is “good for attack resistance”.

Not even remotely true my friend, below is the proof. So please stop repeating that argument and try to listen to the people who are supporting the network as well as the other developers on your team.

  1. ASIC machines don’t mine just one coin. There is no such a thing and never will be created. That alone proves that X amount of rich people only buying ASICs to mine your coin, will stick to that coin if the profitability goes down (which has been clearly proved here and everywhere that it will much faster and worse than GPU mining).

  2. Investing X money into hardware is the same “incentive” regardless of what kind of hardware that is since majority of miners will mine to hold a coin they believe in. and as i mentioned in point #1, both kinds of machines can switch to a different coin in a second.

  3. The biggest “incentives” for miners to support a coin, is a strong development team that doesn’t back up on their words and would never dream of hurting the miners who support the network.

  4. More “incentives”? how about trying to bring technological advancements to the coin (Full Nodes, better support for mining programs, inclusion of mining programs into the node itself and thus even getting rid of the pools (which alone could moon the entire coin) , lower the 20% cut, better marketing, talking with more big and small exchanges and getting the coin listed, using that 20% cut to create relationships with businesses and get them to accept ZCash as a form of payments, etc etc.

5 Likes

I would be more than happy about that date.

Thank you for posting your full statement, and thank you for your time, I’m more than satisfied by your post.

3 Likes

@mario I want to re-iterate what @str4d wrote above, we have a code of conduct here. Please treat other people’s opinions with respect. Zooko wants you to debunk his opinion and offer counter-points and evidence. He has even admitted many of his points are there to elicit counter-arguments. Let’s keep the conversation constructive.

Miners are rewarded through inflation and fees in order to secure the network. If we want to do something those miners don’t like, we can do it by finding other miners that want the mining rewards and fees, or getting rid of miners entirely.

If we’re talking about decentralization of hardware, let’s also talk about pool centralization. Long before Equihash ASICs were conjectured, most of the hashrate was directed to a single mining pool. It seems the direction of ASIC resistance favors miners who are only ephemerally invested in our project, who casually bounce around between mining various coins, and who will choose mining pools that maximize their ROI.

I look at this and I start to see Zooko’s point. I think there are two sides to this, and I’m happy this thread is fleshing both of them out. :slight_smile:

7 Likes

I am a miner, I have been a mining Zcash since 2 months after Zcash’s release. If you bothered to click my name you would see the numerous postings helping the community, debates, sharing settings and what works and seems not to, and especially those coming here as first time miners having technical issues. This isn’t me bragging, this is telling someone who has been here a short amount of time information they apparently are not aware of.

No where have I attacked a single miner, made them an evil elitist and I have most certainly not backed bitmain.

I stated IMO ( in my opinion) because it is just that. The title here is let’s talk about ASIC, not attack people, make up things, or accuse people of things that are not true.

Someone asked who is Zooko - Zooko is the owner. He and he alone decides how this fork of Bitcoin will evolve. He Chooses, not the miners.
The miners If his choice isn’t what the majority wants The only choice the miners have is to fork (remember Zclassic did).

I personally would prefer Zcash remained ASIC resistant; after reading here, articles in other sites/forums and talking with other miners verbally AGAIN IMO it isn’t going to happen. You are correct though in one aspect, you are the majority so with that majority FORK and keep it ASIC resistant.

1 Like

I’m cool with that, Zooko.

Thanks for coming out to provide your support to maintain ASIC resistance; just as other developers in the forum have done. Other miners who navigate here will certainly appreciate your diligence to see ASIC resistance maintained.

Cheers,

PC

Attacking GPU mining for pool centralization is not very fair. There are reasons to choose one pool over another. Some pools have better features than others. Since Zcash doesn’t have P2P mining, miners must join pools or solo mine and most of us have too small of an operation to solo mine. But do you see the counter point to your argument about getting other miners or getting rid of them? Your argument is better for GPU miners since we do have more mining options. Let’s say Zcash becomes mostly ASIC mined. How easily will you be able to threaten them with getting rid of mining when they have even less options to go elsewhere? ZcashCo will have an even harder time doing that since all their mining equipment will become nearly worthless. They will be even less behaved than the members in this thread.

So see it is a 2 way street. Once each side starts to not trust each other they start hedging their bets. Will people invest in ASIC’s if they can’t trust what ZcashCo will do in the future? They may go PoS in a few months after they buy ASIC hardware. That is why I said earlier to build a positive community where miners WANT to mine Zcash. I keep mining Zcash even when whattomine shows others are a bit more profitable on some days. I have a longer bullish view on Zcash so I keep mining it. You need people to believe in your coin and your mission. Not just have them around because of economic blackmail.

4 Likes

And i agree with the code of conduct as well. I did exactly what you said, provided evidence and arguments that refutes this theory. Nothing disrespectful about that.

Do you have Data/proof to support this hypothesis? can you point me to that ASIC machine that only mines one coin? Can point me to that ASIC miner who mines a coin NOT to get a good break even point (not ROI btw)? Can you show me the statistics/data/studies you made about the intentons of the miners of ZCash that you claim to be only “ephemerally invested in our project”?
i am sure those rich Chinese ASIC manufacturers & miners are all about supporting the principles and not about the money at all.
As mentioned here before, this thread is about ASIC mining, not pools, there are other threads about pool centralisation that you can voice your concerns in.

lol, did you just threaten us miners using your position as a developer? wow, if this doesn’t scream decentralised community coin, I don’t know what else does…

  1. Just because its called a “reward” doesn’t make it a charity. Miners CREATE the coin, without them, you have no Coin currently unless you’re suggesting that you want to become Ripple. In that case, i encourage you to try that and lets see what happens :slight_smile:

  2. If thats the stance/attitude of the company, then they should have said it in the white paper and not promised miners ASIC-resistance to get them to support your coin and then change their minds when they got rich.
    But hey, if you want to threaten the miners that are what keeps your coin alive, then i can’t stop you. Don’t be surprised though when the news of this gets out and when company gets a class action law suit for contract breaching…

By all means, switch to ASIC tomorrow, i can’t wait for Bitmain to mine and hold 80% of your coin. I am sure it’s gonna be the best decentralised coin ever with a very trustworthy development team…

2 Likes

mario I agree with your last post 100%
I am on the way out!

1 Like

Do you have Data/proof to support this hypothesis?

No, I don’t have data to support this hypothesis.

lol, did you just threaten us miners using your position as a developer?

I’m a developer, but I don’t call the shots, and I’m not speaking for the company either. In fact, I’ve made it clear recently that I prefer for us to switch to more ASIC-resistant parameters, but I was playing devil’s advocate and exploring the other side of the argument.

We cannot “threaten” anyone just as much as miners cannot obligate us to do things for them. We’re going to do network upgrades and if some miners don’t like those upgrades and don’t want to follow along, that’s fine. The difficulty will adjust, and we’ll move on with our lives.

6 Likes

In that case, sorry if i misunderstood your comment as a threat.

We are all in support of network upgrades that will improve the coin. However, allowing ASICs to dominate the coin, drive all the GPU miners out of the game and destroying their investments a little bit different than some network upgrades.

Anyway, glad to read your comment on github stating continuous support of ASIC resistance as promised to keep this coin decentralised and used by any average person all over the world that wants to support ZCash because they believe in it.

3 Likes

I believe the developers are good people with great minds and can make sound decisions. I’m trusting them. Everyone else should too.

Let’s simply remain calm, patient and supportive of one another as we all play our role in bringing about a great coin for billions of people.

Cheers and happy developing/mining!

David

2 Likes

As I have stated, several times, I favor ASIC’s resistance for Zcash today. However, I more strongly favor a plan to integrate ASIC’s in the future, in a controlled manner, when they are no longer a threat.

Having said that,
Mario, you keep talking about proof and facts but you have yet provided any to support your opinion.

You have said this several times and I don’t understand the point you are trying to make. ASIC’s mine ONE algorithm, and ONE algorithm only. Yes, in many cases there may be more than one coin that use the EXACT same algorithm, but your options are going to be limited. This is understood by everyone here.

You have stated this as fact several times. Please provide some evidence to back up this claim. Mining is a business even on a small scale. Hobby miners with a few GPU’s may mine and hold as you say, but I know of no small to large scale miners who do that. They cant, they have expenses to pay. Even a hobby miner can double his electric bill with just a few rigs.

This sounds like you are arguing Zooko’s point for him, that is exactly what he is arguing for. He does not want the distraction of ASIC resistive forks so they can focus on improving Zcash.

Again, sounds like you are arguing Zooko’s point.

I get that there are some tempers flaring in this tread. However, I really have to take exception to this offensive remark.

If you spend any time in these forums you will find a rather large number of us mining with and supporting the 1080ti’s. The 1080ti is fairly crippled for anything other than Equihash. When I started buying them, I knew they would mainly restrict me to Zcash mining only. However, I still bought those rigs, based on the fact that I liked what I had heard from Zooko and the Zcash team.

Very unlike what I am hearing today.

2 Likes

What do you mean “in a controlled manner”??? What difference would it make if 1000 ASIC’s joined the network now V.S joining the network later? At the end of the day the same number of ASIC’s are on the network.

All of the people supporting Zcash right now are GPU miners and have supported the project and continue to support the project using their GPU’s. Bringing ASIC’s on the network simply cuts those people out who have invested allot of money, time and resources to do what they do. ASIC’s are not easy to buy for most people, but anyone can buy a GPU or likely already has one. This is important because everyone can be involved rather then large scale ASIC farm operators.

2 Likes

Guys…
What is the official slogan of zcash? Type zcash in google and check it out.

1 Like

I concur with most commenters on this thread in that ASIC mining hurts decentralisation. Unless, by some miracle, it happens that some place other than china is profitable for fabbing silicon it’s doubly dangerous because of how viciously the chinese government fights against decentralisation and open communication.

Several people mentioned Cuckoo Cycle, and I find it quite incredible how poorly informed most people are about it. Cuckoo Cycle was first devised TWO years ago. There is now Cuda and OpenCL implementations and it specifically is targeted towards rescuing the GPU mining community from ASICs. Though in my opinion his specific implementation leaves a lot to be desired in terms of flexibility for the network to non-hard-fork-adapt to new parameters that can make ASICs useless without obsoleting also much of the GPU deployed on the network.

Cuckoo Cycle’s 42 node cycle parameter is aimed at hitting a memory utilisation target of 4Gb of memory, which puts it on the margin where ASIC devices would have trouble competing with commodity hardware. In my opinion it should now be targeting 8Gb memory because in fact most mining hardware, anything bought in the last 12 months at least, is already at 8gb capacity and Equihash’s ~600Mb memory utilisation is a terrible waste of memory resources in light of this, and Cuckoo definitely appears to be targeted at the previous generation of video cards.

I may be looking too far into the future about this, but in my opinion, the only way to forever stop ASICs from creeping up on us is to lock the solver algorithm to CPU architecture, and this requires designing the algorithm to take advantage of what CPU has and not even GPU has. Two things:

Low cost, 16-64Gb memory, large 6Mb+ sized on-die caches. Admittedly an interesting and maybe ironic thing about this is that without doubt, AMD hardware has the total edge on this. Ryzen7 processors have 16Mb versus Intel 6-8Mb caches, AMD’s Hypertransport is 2-4x the speed of intel’s memory bus system.

But there can be even further scaling of capability with this. More and more systems now also have SSD devices on PCI-express buses that eclipse the performance of SDRAM circa 5 years ago. Mobile devices like smartphones and tablets now frequently sport a 4Mb CPU cache, at least 3Gb of memory and at least 16Gb of eMMC memory.

The ultimate solution for ASIC resistance is an algorithm design for the solver that leverages this large on-die cache, to minimise the amount of random access of memory in order to find solutions from the finite fields based on the randomly generated nonces.

I have been working on exactly a search and sort algorithm that I am calling BAST, an acronym for Bifurcation Array Search Tree.

This algorithm is, as far as I can tell from my research, the very first dense binary tree implementation. Let’s say we have a variant of Cuckoo cycle that works on a 128 bit hash, and instead of bit-fiddling non-8-divisible sized coordinates, we have adjacency lists, simply, we take our hash, cut it in two, and each represents the coordinate of the head and tail of a vector. For the theoretical total space requirement for an array consisting of 32 rows, we would with this consume 8Gb of memory for a theoretical filled 32bit indexed store, or 16Gb for the whole coordinate pairs together.

The big advantage of a dense storage representation is most visible for searches. Naturally a binary tree steps downwards and left/right, and always splits in two between the two halves. Each step down in a dense implementation of the store steps linearly through memory, with an approximate doubling of the distance traveled through the memory to perform the search.

The more complicated part, that I am working on, is how to minimise the both horizontal and vertical imbalance of the tree. It’s simpler than you might think, and most of the time also will do a lot of operations within a small section of memory.

Just to explain why this is important, conventional, sparse binary tree implementations will rapidly descend into random access hell. Not only that, each node would necessarily require at least 96 bits of extra data aside from the data contained in the node in order to reference it into the structure. In a search for a solution to a Cuckoo Cycle style loop, necessarily we have to have several bucket trees to work with. One for stuff that didn’t find its way into a candidate, one for stuff that has been rejected, and another, two part store with an unsorted, linked list of all the candidates that have been found, as well as a tree that lets us link candidate coordinates back to the cycles they form part of.

The memory overhead rapidly ascends to the point of ridiculous if you are going to use a binary search tree. For this reason, Cuckoo uses a bucket sort instead, but this introduces an issue that I think is very relevant to Proof of Work algorithms. If your process is spending an inordinate amount of time between searches, shuffling the nodes around, and then searching the nodes one-by-one, it should be obvious that we want to really have some of the advantages of a binary tree, in that we can skip, very rapidly, through parts of the list of elements, and quite probably, find the answer in less time, even considering the overhead of keeping balance during inserts and deletes.

Anyway, BAST is just the search and sort I am developing for my variant of Cuckoo Cycle that I am calling Hummingbird. It is intentionally aimed at CPU solvers but I think that it has relevance to any graph-theoretic Proof of Work algorithm anyway, and it will still have a performance and realtime edge over the ways that Tromp and his GPU solver wizards have come up with. I think that it may not be so onerous to deliver a potential means for GPU systems with multiple GPUs to participate, however, I do think that probably it would maybe restrict any real benefit in having the GPUs down to the bus width of connection, and thus 1 lane PCI-express would probably not be enough. By my calculations 4 lanes is the minimum to reach the speed of CPU/DDR4 memory performance, and it would also require the implementation of a memory access protocol to load data directly into the cpu cache accessed via PCI-express. I doubt that is complicated, however. Though at the same time I am dubious that it would be better than a Ryzen7 with 3200Mhz DDR4 memory.

The main points I have is that designers of PoW algorithms have not up to this point considered the possibility of scaling the resource requirements, cache sizes, bus speeds or memory capacities that continue to grow in commoditised general purpose computers. I think it would be good if at the same time somehow it was possible to allow previous gen and current gen and next gen video cards to be able to compete, but to somehow make sure that it’s a level playing field. I mean, most people mining right now are pretty much nearly at ROI on their gear, so it’s pretty distressing to hear that someone has found a way to stomp all over us and take our profits away.

That’s really what this is all about. We all invested early, and we are getting trashed by these johnny-come-latelies because of the lack of vision and imagination in PoW designers.

4 Likes

Thank you for your enlightment, deliteful.

You couldn’t have said it better :slight_smile:

Here is an interessting insight posted from zawy12 on github-> Plan how to change the proof-of-work #1211

If you change the POW every block to one of 16 options based on the last 4 bits of the previous block’s hash, I can write a difficulty algorithm to handle the different POWs. It would need to look back ~20xN blocks to determine the relative difficulty of each algorithm, then use an existing difficulty algorithm with an N window, adjusted by that relative factor. If you changed the POWs every 6 months, maybe GPU coders would not be able to keep up and CPU mining could be competitive.

2 Likes

I would think for short block times like 2.5 minutes and 1 minute you’d have to make it so it’s the previous block’s last 4 bits but this would for sure completely f*ck up ASICs, but bear in mind that an X11 miner already has the chips to do this, but being that it can only then use one at a time, it will still ensure most of that power is idle most of the time. But an issue that I would predict is that someone would write this into, like, 16 different coins, and then your X11 miner would be hooked up to 16 different pools and could keep everything ticking over.

It’s definitely an improvement but X11 silicon already exists, and I believe there is new projects going off on this same idiot tangent with more hash algorithms, completely ignoring the fact that maybe even a miner who has some X11 rigs, and some with various others, could have a miner controller that deploys a varied set of ASICs to cope with this strategy. It is just another ‘kick the can’ solution ultimately.

I am doubtful that ZcashCo is gonna deal with this issue with the kind of aplomb that Monero guys did. Zcash guys are focused on their 2 year old zkSnarks and have sat on their laurels regarding the centralisation problem from miners. The thing that will slow down the impact of ASICs for us is there is now at least 3 or 4 other coins using Equihash and now the worst of it is that it will probably force us to jump from coin to coin from time to time when a motherlode of new miners gets turned on the networks.

Loyalty to a coin is all very well, but what’s it worth to be not covering your electric bill by sticking with one.

Zcash has been pretty reliable for about 12 months now, for profit, but this is a crisis in the making that is gonna test the loyalty of a lot of people.

2 Likes

Actually, Cuckoo Cycle was first devised in late 2013, nearly 4.5 years ago.
I first publicly alluded to it on Dec 30, 2013 [2] and announced an initial, pre-publication, version of the whitepaper on Jan 8, 2014 [2].

It was formally presented at the Bitcoin workshop in January 2015 [3], making it the first instantly verifiable memory-hard PoW.

There is no OpenCL implementation yet, but photon is working on one [4]

Memory utilization is not determined by the cycle length but by the graph size.
The recommended size of 2^30 nodes requires 2.3 GB for CPU mining and 6 to 8 GB for the fastest known GPU miner (Equihash requires only 144 MB for CPU mining).

Cuckoo Cycle is very resistant to single chip ASICs but very friendly to hybrid ASICs that interface with DRAM. In terms of specification size, Cuckoo Cycle is in fact the simplest possible Proof-of-Work [5]

[1] memory-hard proof-of-work
[2] Cuckoo Cycle: a new memory-hard proof-of-work system
[3] BITCOIN'15 -- Schedule
[4] https://www.grin-forum.org/t/mozkomor-miner-feedback/325
[5] https://github.com/tromp/cuckoo\

8 Likes