Tengo una red privada de Ethereum. Solo quiero hacer minería de CPU Ethash usando ethminer
. Sé que para tener una huella más pequeña se recomienda usar GPU u openCL, pero para redes privadas, solo tengo unos pocos nodos en la red y todos son nodos de CPU. Solo quiero que mi nodo de CPU pueda minar.
Con el modelo actual, si tenemos un Parity
nodo, no hay forma de que podamos minar usando un nodo de CPU. Y no estoy seguro de por qué Parity
obliga a los usuarios a minar solo con el nodo GPU. Como no tengo ninguna máquina GPU en mi pequeña red privada, no puedo usar Parity
el nodo para hacer minería, me obliga a cambiar al geth
nodo para hacer minería.
He seguido https://github.com/ethereum/cpp-ethereum .
Instalar:
git clone --recursive https://github.com/ethereum/cpp-ethereum.git
cd cpp-ethereum
Construir:
cmake -H. -Bbuild
cmake --build build
Después de la construcción; ethminer
solía existir en build
la carpeta en versiones anteriores git-tag:( untagged-1d50efdb2f43825a1810
).
Después de compilar, ethminer
no existe en build
. Así que no pude encontrar el ethminer
binario.
[$]~/cpp-ethereum/build$ ls
_3rdParty deps libdevcore libethereum libwhisper
CMakeCache.txt eth libdevcrypto libevm Makefile
CMakeFiles ethkey libethash libp2p rlp
cmake_install.cmake ethvm libethashseal libweb3jsonrpc test
CTestTestfile.cmake include libethcore libwebthree utils
Así que seguí https://github.com/ethereum-mining/ethminer para instalar ethminer
.
Esta línea para trabajar para la minería de CPU:./ethminer -F http://localhost:8545
El error al que me enfrento con el actual/más reciente ethminer
:
./ethminer
✘ 11:20:06|ethminer No OpenCL platforms found
[P] ¿Hay alguna forma de evitar este error y forzar ethminer
la extracción en la plataforma de la CPU? Supongo que hemos encontrado un cliente antiguo de ethminer que acepta -C/CPU
flag.
También he probado: Genoil/cpp-ethereum
y dice.
./ethminer
CPU mining is no longer supported in this miner. Use -G (opencl) or -U (cuda) flag to select GPU platform.
Gracias por su valioso tiempo y ayuda.
Nota: dos recompensas no arrojaron ninguna respuesta. Abrí un problema en ethereum-mining/ethminer de github con la esperanza de que llegue a alguien. Puede seguir desde https://github.com/ethereum-mining/ethminer/issues/382 .
Tenga en cuenta que el código de github que estoy compartiendo está bifurcado de https://github.com/ethereum/cpp-ethereum y la versión 1.3.0 de etherminer que en realidad puede hacer minería de CPU, que se implementó hace aproximadamente 1 año. Hice algunos pequeños cambios para construir el proyecto, consulte https://github.com/avatar-lavventura/ethminer .
Primero, ya que creará un nuevo DAG do en el directorio de inicio:rm -rf ~/.ethash
Dependencias:
Basado en Linux:
sudo apt-get install libleveldb-dev libcurl4-openssl-dev libmicrohttpd-dev libudev-dev cmake
Mac OS:
brew install leveldb libmicrohttpd
Instalar:
git clone --depth=1 https://github.com/avatar-lavventura/ethminer.git
cd ethminer
./scripts/install_deps.sh
Construir:
cmake -H. -Bbuild
cd build/ethminer
make -j $(nproc)
$ pwd # binary of etherminer is located under ~/ethminer/build/ethminer
~/ethminer/build/ethminer
$ ./ethminer --version
ethminer version 1.3.0 | Build: ETH_BUILD_PLATFORM/ETH_BUILD_TYPE
Para minar con su cadena privada de Ethereum:
Tenga en cuenta que geth
o Parity
debería funcionar en segundo plano conectado a su red ethereum privada.
Esta línea utilizará toda la potencia de los caballos:
./ethminer -F http://localhost:8545
-t, --mining-threads Limitar el número de mineros de CPU/GPU a n (predeterminado: usar todo lo disponible en la plataforma seleccionada)
[~/ethminer]$ cd build/ethminer
[~/ethminer/build/ethminer]$ ./ethminer -F http://localhost:8545 --mining-threads 2
Comentarios útiles:
cmake -DTESTS=OFF
Seguí el proceso de compilación de @alper aquí, pero con GCC 9.3.0 necesitaba insertar los parches de código como se indica aquí en github: https://github.com/ethereum/aleth/issues/5637
configuré concmake -DTESTS=OFF
q9f
alper
q9f
alper