Skip to content
This repository has been archived by the owner on Apr 19, 2022. It is now read-only.

Recover CpuMiner + update it to support ZCash mining #37

Open
svyatonik opened this issue Jan 15, 2019 · 3 comments
Open

Recover CpuMiner + update it to support ZCash mining #37

svyatonik opened this issue Jan 15, 2019 · 3 comments

Comments

@svyatonik
Copy link
Contributor

removed in #36

@wkarshat
Copy link

@svyatonik, I entirely disagree with the following statement from #36 about the Equihash solver built into the full Zcash node, and likely the community will support me in this: "Since this functionality was intended to be used for test chains only + has never been exposed."
CPU mining was there from the very start, of course, and we mined for many weeks after Zcash launched and before first GPU implementation came online and till GPUs took over all the 'hash'.
The functionality is still very much there, including two Equihash solvers - original and Tromp, as documented in zcash.conf:

# Enable attempt to mine zcash.
#gen=0
# Set the number of threads to be used for mining zcash (-1 = all cores).
#genproclimit=1
# Specify a different Equihash solver (e.g. "tromp") to try to mine zcash
#equihashsolver=default

We do need a reference Equihash implementation in Rust, in the codebase whose aim is to replicate present Zcash node functionality.
Without the built-in solver one cannot bootstrap a testnet consisting only of pzec nodes.
To me this looks like F5-task and P5-soon.

@svyatonik
Copy link
Contributor Author

Thanks for your interest in parity-zcash! :) I was talking about parity-zcash there, in #36 . And since parity-zcash shares most of functionality with parity-bitcoin, I'd insist that the CpuMiner was internal and has never been exposed in any way nor in parity-zcash, nor in parity-bitcoin.

Mind that you could use external miners both with parity-bitcoin and parity-zcash using --blocknotify cli option AND getblocktemplate RPC combination. That way you could make a testnet of pzec nodes.

For sure, we will try to restore CpuMiner eventually. At the same time, external contributions are always welcome!

@CryptoForge
Copy link

I'd also like to add to the best of my knowledge all of the GPU miners are setup to pool mine via a stratum connection, which has an issue encoding the block height on the first 16 blocks of a new chain. Without a built in solver there wouldn't be a way to launch a new chain without making changes to another codebase. Also it's my opinion that a blockchain should theoretically be self sufficient which would require a built in solver.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

3 participants