What is the reasoning behind using a GPU-limited PoW scheme (MTP, FiroPoW) versus a CPU-limited PoW scheme (RandomX or variants)? It seems like specialized mining hardware should always be avoided when possible. I think the CryptoNote developers make a few valid points here:
RandomX/design.md at master · tevador/RandomX · GitHub
- CPUs, being less specialized devices, are more prevalent and widely accessible. A CPU-bound algorithm is more egalitarian and allows more participants to join the network.
- A large common subset of native hardware instructions exists among different CPU architectures. The same cannot be said about GPUs. For example, there is no common integer multiplication instruction for NVIDIA and AMD GPUs .
- All major CPU instruction sets are well documented with multiple open source compilers available. In comparison, GPU instruction sets are usually proprietary and may require vendor specific closed-source drivers for maximum performance.
I suppose there are some economic advantages of specialized mining hardware, but I am not sure if those advantages really apply to GPU-bound hardware. For example, with a CPU-backed cryptocurrency, a large entity like the government could temporarily rent out hardware to do a 51% attack. Compare this to an ASIC-backed cryptocurrency, where the value of the ASIC would depreciate with the price of the cryptocurrency after a 51% attack, so “renting out” ASICs for an attack isn’t economically feasible because you would need to resell them afterwards to recoup your losses. However, it’s possible that the widespread commodification and use of GPU hardware for GPGPU tasks makes such a “rented 51% attack” still feasable, similar to a CPU-backed cryptocurrency in the way I’ve just described above.
The biggest divide I predict will be between GPU-owners and non-GPU-owners, especially with the supply shortage. When you have specialized hardware you can make returns, but CPU mining is generally unprofitable for everyone because the barrier to entry is so low. In BTC’s case the miners are a wierd special interest group that exert bureaucratic control over the network.
But I wonder what the firo community consensus is on this subject. Reading the discussions here, it seems that most users are surprisingly content with GPU mining.
Here’s a non-binding poll. What type of mining do you prefer? (You can vote multiple times)
- GPU (MTP, FiroPoW)
- CPU (RandomX)
- ASIC (BTC)
- Proof-of-Stake (Nano)
- “Useful” PoW mining (BOINC/Gridcoin?)
- Proof-of-Storage (Chia)
To be completely honest, if you read the original MTP paper, the performance of MTP was supposed to be roughly equivalent between CPU and GPU but this didn’t pan out due to several wrong assumptions made by the paper’s authors. Early miners did show some parity but as more optimizations came along, it was clear GPUs had a huge advantage over CPU. The authors simply did not have the hardware background to design the algorithm which also explains why Equihash (same authors) had similar flaws.
I’ve spoken to experts in the mining scene and also from our own experience (Zcoin started with a CPU friendly algorithm), CPU mining tends to be dominated by botnets. Those from the early days of Zcoin saw ourselves got raped by these botnets or rented cloud instances obtained using signup credits or illegitimately obtained credits (from stolen credit cards , etc). I know of this cause I spoke to many of these miners and the pools also monitored the IP addresses that were mining on them.
Botnets are more prevalent on CPUs especially when there are a lot of idle server farms etc while GPUs tend to be more on computers that are in active use and therefore less susceptible to botnet infection. The existence of botnets already creates an unfair playing field, it’s not cause of CPU prevalence, it’s because the botnet operator has an unfair advantage and not even paying for the hardware or the electricity which explains why CPU mining in general for most regular Joes is unprofitable.
Monero is an exception where a lot of these botnets are actually supporters of the project and are responsive to community calls to decentralize hash rate etc.
Yes, CPU mining has a lot of botnet problems. I suspect the larger issue with CPU mining isn’t the “legal” botnets (e.g. rented cloud servers) but rather cryptojacking botnets. RandomX has a few features that try to make cryptojacking difficult, but they still find a way.
What I hope is that we will see more powerful integrated GPUs on consumer-facing devices. That would solve a lot of problems.
I assume you’re referring to their recent MineXMR 51% fiasco? I suspect this is because the type of cyber-criminal that controls a botnet is the same type of cyber-criminal that accepts ransoms in monero. Hopefully they will have a similar attitude towards Firo.
Rented cloud servers are fine as they are paying for it. It’s those doing it with discounted credits or illegally obtained credits that are the problem since the cost of mining is vastly reduced when you can do this. This definitely happened btw and saw it first hand.
I think there are less services for renting cloud GPUs. Renting hashrate is also fine since again, it’s market forces that act.
I’m with you, brother. In addition to the points you made, I’d add that Firo being CPU-minable might encourage more people to actually do so, since if you’ve got a semi-decent computer you’ve got the capability to mine some coins, make some money, and help secure the network. That computer might not have a graphics card, though.
And were that to be the case (more miners), it would help with decentralization–though I’m not sure if the Firo network has any issues as XMR did recently. In my previous and first post on this forum, I stated that I’m still learning about Firo as I go along, and I’ve just delved into it recently.
FiroPow is not only a GPU-minable coin, but the algorithm pretty much ensures your home will be warm for the winter. It really is too bad it didn’t go the route of XMR, RTM, and some of those.