DurianStallSingapore / ZILMiner

Mining software for Zilliqa
GNU General Public License v3.0
38 stars 21 forks source link
miner ubuntu windows zilliqa

ZILMiner

Zilliqa miner with OpenCL and CUDA support. It supports both Ubuntu and Windows OS.

ZILMiner is an Ethash GPU mining software that supports the Zilliqa Proof-of-Work process.

This project is a fork of ethminer. Please do see ethminer README for more details of the implementation.

Features

Install

Standalone executables for Linux, macOS and Windows are provided in the Releases section. Download an archive for your operating system and unpack the content to a place accessible from command line. After which, zilminer will be ready to go.

Usage

ZILMiner is a command line program. This means you will have to launch it either from a Windows command prompt or Linux Bash console. You can also create shortcuts to predefined commands using a Linux Bash script or Windows batch/cmd file. For the full list of available commands, please enter the following:

zilminer --help

Settings on Zilliqa Node Work in GetWork Server Mode

  1. Setup Zilliqa Node by following the Zilliqa Mining Guide

  2. Change the constants.xml for the following parameter:

    • Set GETWORK_SERVER_MINE to true
    • Set GETWORK_SERVER_PORT to the port you will be using to GetWork (default is 4202)
    • Set the other mining parameters to false:

      <CUDA_GPU_MINE>false</CUDA_GPU_MINE>
      <FULL_DATASET_MINE>false</FULL_DATASET_MINE>
      <OPENCL_GPU_MINE>false</OPENCL_GPU_MINE>
      <REMOTE_MINE>false</REMOTE_MINE>
  3. Launch your node and find out your IP address with the following command:

    curl https://ipinfo.io/ip
    ./launch_docker.sh

Settings on ZILMiner client

Key in the following command in your command prompt:

zilminer -P zil://wallet_address.worker_name@zil_node_ip:get_work_port

Please change the wallet_address, worker_name, zil_node_ip, and get_work_port accordingly.

Dual Mining

  1. Create 2 bat scripts yourself to start/stop other coin's miner

  2. Add arg --pow-start to stop the other miner before ZIL PoW process starts

  3. Add arg --pow-end to start the other miner after ZIL PoW process stops

    Example:

    zilminer --pow-start stopAE.bat --pow-end startAE.bat -P zil://wallet_address.worker_name@zil_node_ip:get_work_port
  4. (Optional) If your GPU's memory is insufficient, add the arg --clear-dag to clear Zilliqa's DAG after ZIL PoW has stopped.

Dual Mining Scripts

Zilminer + GMiner

Here is an example of how to create the 2 batch files necessary for dual mining BEAM and ZIL:

Then, run both bat scripts by following the example command below:

zilminer.exe --pow-start stop_beam.bat --pow-end start_beam.bat --pow-end-at-startup -P zil://wallet_address.worker_name@proxy.getzil.com:5000/api

If your GPU's memory is not sufficient for these 2 miners to run concurrently, add the arg --clear-dag to the command above.

Build

Building from source

See docs/BUILD.md for build/compilation details.