2个不稳定版本

使用旧的Rust 2015

0.5.2 2019年1月11日
0.4.2 2018年12月11日

#42 in #mining


用于 grin-miner

Apache-2.0

2MB
6K SLoC

CUDA 3K SLoC // 0.0% comments Rust 1K SLoC // 0.3% comments C++ 1K SLoC // 0.0% comments C 451 SLoC // 0.1% comments Java 298 SLoC // 0.0% comments Perl 130 SLoC // 0.0% comments

Build Status

Grin矿工

一个独立的挖掘实现,旨在挖掘Grin与运行的Grin节点。

支持的平台

目前,只有linux-x86_64和MacOS的挖掘插件。随着时间的推移,随着社区为不同平台创建更多求解器,这可能会发生变化。

需求

  • rust 1.30+ (使用 rustup- 即 curl https://sh.rustup.rs -sSf | sh; source $HOME/.cargo/env)
  • cmake 3.2+ (用于 Cuckoo挖掘插件)
  • ncurses和库(ncurses,ncursesw5)
  • zlib库(zlib1g-dev或zlib-devel)
  • linux-headers(据报道在Alpine Linux上需要)

以及一个 正在运行的Grin节点 用于挖掘!

构建步骤

git clone https://github.com/mimblewimble/grin-miner.git
cd grin-miner
git submodule update --init
cargo build

构建Cuckoo-Miner插件

Grin-miner自动构建x86_64 CPU插件。也提供了CUDA插件,但默认情况下未启用。要启用它们,请按如下方式修改 Cargo.toml

change:
cuckoo_miner = { path = "./cuckoo-miner" }
to:
cuckoo_miner = { path = "./cuckoo-miner", features = ["build-cuda-plugins"]}

您的系统上必须安装Cuda工具包9+(请使用nvcc --version进行验证)

构建OpenCL插件

OpenCL插件默认未启用。运行install_ocl_plugins.sh脚本以构建和安装它们。

./install_ocl_plugins.sh

在构建之前,您必须为您的操作系统安装OpenCL库。如果您只需要编译它们(用于开发或测试目的),请按以下方式构建grin-miner

cargo build --features opencl

构建错误

请参阅故障排除

构建了什么?

成功的构建会得到

  • target/debug/grin-miner - grin-miner的主要二进制文件
  • target/debug/plugins/* - 矿工插件

请确保您始终在包含grin-miner.toml配置文件的目录中运行grin-miner。

在测试时,将grin-miner二进制文件放置在您的路径如下所示

export PATH=/path/to/grin-miner/dir/target/debug:$PATH

然后您可以直接运行grin-miner

配置

可以通过grin-miner.toml文件进一步配置grin-miner。此文件包含有关所有配置选项的内置文档,并且应该是首要参考点。

您应始终确保此文件存在于运行grin-miner的目录中。

使用grin-miner

有关如何配置grin-miner和挖掘grin测试网的更多详细信息,请参阅Grin论坛帖子


lib.rs:

封装挖掘配置文件

依赖关系

~11–21MB
~293K SLoC